http://support.microsoft.com/kb/257405/ruPS
Ramdisk — это образец для демонстрации драйвера виртуального устройства Windows(r) 2000. Этот драйвер создает виртуальный диск указанного размера. Такой диск можно использовать, как и любой другой, но после завершения работы компьютера его содержимое будет потеряно. (Как правило, диспетчер кэш-памяти Windows(r) 2000 намного лучше справляется с задачей оптимизации использования памяти, чем Ramdisk).
Содержащиеся в этой статье указания по сборке драйвера и его установке относятся только к Windows(r) 2000.
Примечание Представленный в статье драйвер является примером минимального драйвера. Ни драйвер, ни примеры программ не должны использоваться в производственной среде. Скорее, они предназначены для использования в образовательных целях и в качестве базовой структуры драйвера.
amdisk.c Файл исходного кода образца драйвера Ramdisk
Pnp.c Файл исходного кода для обработки пакетов запроса ввода-вывода Plug and Play
Ramdisk.h Файл заголовка, который содержит структуры Ramdisk
Debug.h Файл заголовка, который содержит определение отладочной печати
Sources Базовый файл для сборки образца кода
Makefile Стандартный для Windows 2000 сборочный файл проекта
Ramdisk.inf Установочный файл для установки драйвера
Ramdisk.htm Файл с образцом ознакомительной документации для примера
Ramdisk.sys Файл драйвера Windows 2000 (бесплатная сборка)
BreakOnEntry REG_DWORD 0
Логическое значение, указывающее на то, была ли создана точка прерывания в процессе выполнения DriverEntry. Не влияет на бесплатную версию драйвера.
DebugLevel REG_DWORD 0
Служит для определения типа выводимых отладочных сообщений. Установка высоких значений приводит к появлению более подробных сообщений. Может принимать значения от 0 до 3. Не влияет на бесплатную версию драйвера.
DebugComp REG_DWORD 0xFFFFFFFF
Служит для указания компонентов, в которых распечатываются отладочные сообщения. Каждый бит соответствует одному компоненту. Список компонентов находится в файле Debug.h. Не влияет на бесплатную версию драйвера.
DiskSize REG_DWORD 0x100000 (1,048,576 1Mb)
Служит для указания размера виртуального диска в байтах.
DriveLetter REG_SZ Z:
Соответствует принятой по умолчанию букве, которая присваивается виртуальному диску.
RootDirEntries REG_DWORD 512
Количество записей в корневом каталоге.
SectorsPerCluster REG_DWORD 2
Размер минимального распределяемого блока.
Обновление для Windows XP:
Установка образца драйвера виртуального диска на систему, где все диски отформатированы под файловую систему NTFS, может привести к потере работоспособности системы. Для решения этой проблемы необходимо внести следующие изменения.
При вызове функции IoCreateDevice (функция RamdiskAddDevice в файле pnp.c) необходимо изменить тип устройства с FILE_DEVICE_VIRTUAL_DISK на FILE_DEVICE_DISК и перекомпилировать драйвер. Перезагрузите систему после установки драйвера, чтобы иметь доступ к виртуальному диску через проводник Windows.
Последнее изменение :: 25 октября 2006 г. - Редакция: 5.0