4.6 Блочные и символьные устройства MTD |
Предыдущая Содержание Следующая |
Как упоминалось ранее, MTD устройства экспортируются в пользовательское пространство двумя способами: как символьное и как блочное устройство. Символьные устройства представлены с использованием следующих имён устройств:
/dev/mtd0 /dev/mtdr0 /dev/mtd1 /dev/mtdr1 ... /dev/mtd15 /dev/mtdr15
Все символьные устройства имеют старший номер 90. Символьные устройства экспортируются как или символьные устройства для чтения и записи, или же как символьные устройства только для чтения. Это достигается с помощью младших номеров. Все MTD устройства, имеющие нечётные младшие номера (1, 3, 5, ...), экспортируются как устройства только для чтения. Таким образом, и /dev/mtd1, и /dev/mtdr1 указывают на одно и то же устройство (устройство, содержащееся во втором слоте в mtd_table[]); первое может быть открыто в режиме чтения-записи, в то время как второе может быть открыто только в режиме чтения. Ниже приводится список команд ввода/вывода (ioctl), которые поддерживаются символьными устройствами MTD.
▪MEMGETREGIONCOUNT: команда для передачи пользователю числа регионов стирания ▪MEMGETREGIONINFO: команда для получения информации о регионе стирания ▪MEMERASE: команда стереть заданный сектор флеш-памяти ▪MEMWRITEOOB/MEMREADOOB: команды, используемые для доступа к дополнительным данным ▪MEMLOCK/MEMUNLOCK: команда, используемые для блокировки указанных секторов при условии наличия аппаратной поддержки
Блочные устройства имеют старший номер 31. Поддерживаются до 16-ти младших устройств. Блочные устройства используются для монтирования файловых систем поверх устройств флеш-памяти (смотрите Рисунок 4.7).
Рисунок 4.7 MTD устройство, экспортируемое как символьное и блочное устройство.
|
Предыдущая Содержание Следующая |