devb-ram

Драйвер интерфейса псевдодиска (QNX Neutrino)

Примечание. Для запуска этого драйвера необходимо войти в систему с учетной записью root.

Синтаксис:

      devb-ram [cam опция[,опция]...]

[disk опция[,опция]...]

[ram опция[,опция]...]

[blk опция[,опция]...] &

Поддерживаемые платформы:

Neutrino


Опции:

Примечание. Для разделения опций используется запятая (,). Группы опций cam, disk, ram и blk могут располагаться в любом порядке.

Опции группы cam

quiet

Вывести краткую информацию; не отображать информацию при запуске.

verbose


Вывести расширенную информацию.

Опции группы disk

Опции группы disk обеспечивают управление интерфейсом драйвера к cam-disk.so. Указываемые опции должны следовать за ключевым словом disk. Для получения дополнительной информации см. cam-disk.so.

Опции группы ram

Опции группы ram обеспечивают управление интерфейсом драйвера к оперативной памяти:

address=адрес

Физический адрес для наложения. По умолчанию наложение не используется.

blksize=размер

Установить размер сектора. Значение по умолчанию – 512 байт.

capacity=число_блоков

Указать емкость псевдодиска в блоках; размер блока определяется опцией blksize. Значение по умолчанию – 4096 блоков (2 Мб).

nodinit


Не разбивать псевдодиск на разделы и не форматировать его в файловую систему QNX 4.

Опции группы blk

Опции группы blk передаются модулю io-blk.so. Эти опции должны следовать за ключевым словом blk и указываться после всех общих опций или опций группы disk. Для получения дополнительной информации см. io-blk.so.

Описание:

Драйвер devb-ram создает интерфейс псевдодиска. Если не указана опция capacity, драйвер devb-ram создает псевдодиск емкостью 2 Мб.

По умолчанию драйвер devb-ram выполняет разбиение псевдодиска: один блок выделяется для таблицы разделов, а остальная часть псевдодиска (емкость диска минус 1) отводится для раздела t77. Затем этот раздел инициализируется (собственными средствами, без вызова утилиты dinit) для создания на нем пустой файловой системы fs-qnx4.so. Если указана опция nodinit, то в дальнейшем можно форматировать диск вручную, выполнить его разбиение на разделы с помощью утилиты fdisk (либо отвести все пространство под одну файловую систему) и смонтировать диск.

Примечание. По умолчанию io-blk.so выделяет 15% системной оперативной памяти для кэш- памяти. Для io-blk.so система devb-ram представляет собой дисковое устройство, поэтому отсутствие необходимости кэш-памяти не определяется. Уменьшить размер кэш-памяти можно с помощью blk cache=....

Поскольку devb-ram действует как блочное устройство, выполняющее чтение из оперативной памяти и запись в оперативную память, его операции проходят множество уровней, прежде чем будут фактически выполнены в оперативной памяти. Для повышения производительности псевдодиска используется опция blk ramdisk=... в io-blk.so. Для получения дополнительной информации см. подраздел "RAM disks" ("Псевдодиски") в разделе "Connecting Hardware" ("Подключение оборудования") «Руководства системного программиста (администратора)» КПДА.10964-01 32.

Примеры:

Создание псевдодиска емкостью 4 Мб:

devb-ram ram capacity=8192 &


Файлы:

Драйвер devb-ram обеспечивает взаимодействие io-blk.so с различными блок-ориентированными специальными устройствами, присутствующими в каталоге /dev. Эти устройства обычно имеют имена hdn, где n – номер физического устройства.

Для работы этого драйвера могут потребоваться следующие разделяемые объекты:

Двоичный файл

Обязательно

cam-disk.so

Для доступа к псевдодиску.

libcam.so

Всегда


Статус завершения:

Драйвер devb-ram завершает работу лишь при возникновении ошибки во время начального запуска или в случае, если во время начального запуска драйвер не был запущен в фоновом режиме и, следовательно, была успешно запущена копия процесса.

0

Драйвер devb-ram не был запущен в фоновом режиме, поэтому была запущена копия процесса. Исходный процесс завершился с нулевым статусом, выполняется копия процесса.

> 0


При начальном запуске возникла ошибка.

Предупреждения:

Ограничения размера диска или раздела отсутствуют; тем не менее, объем ввода/вывода (например, для функций lseek(), read() и write()) в настоящее время ограничен размером в 2 Гб на раздел (или диск). Это ограничение по вводу/выводу не относится к размеру раздела монтируемых файловых систем.

Поддерживаются следующие известные функции:

chmod(), chown(), close(), closedir(), creat(), devctl(), dup(), dup2(), fcntl(), fpathconf(), fstat(), lseek(), mkdir(), mkfifo(), mknod(), open(), opendir(), pathconf(), read(), readdir(), readlink(), rewinddir(), rmdir(), stat(), symlink(), unlink() (не поддерживается для каталогов), utime(), write()

Следует отметить, что для определенных вызовов (таких как pipe(), а также read() и write() для FIFO) может требоваться наличие менеджера pipe.