Было много вопросов о RAM-дисках, и мне известны ramfs и tmpfs, которые позволяют использовать ram в качестве блочного устройства. Однако меня интересует использование фиксированного диапазона адресов памяти в качестве блочного устройства.
Это связано с необходимостью использования энергонезависимой оперативной памяти, доступной в моей системе. У меня есть 6 ГБ оперативной памяти и 8 ГБ энергонезависимой памяти. Вывод / proc / iomem дает мне следующее
100000000-17fffffff: ОЗУ системы
180000000-37fffffff: зарезервировано
Здесь область от 6 до 14 ГБ соответствует области энергонезависимой памяти, которая помечена картой памяти E820 BIOS как зарезервированная. Мое главное намерение - использовать этот NVRAM в качестве блочного устройства в Linux. Это полезно для тестирования систем NVRAM. Существует ли какая-либо команда linux, которая позволила бы мне использовать этот регион в качестве блочного устройства, или мне нужно написать собственный драйвер устройства ядра, чтобы облегчить то же самое?