Полные имена устройств в PROM

Встроенное программное обеспечение OpenBoot работает непосредственно с аппаратными устройствами системы. Каждое устройство имеет уникальное имя, представляющее как тип этого устройства, так и расположение устройства в структуре системной адресации, которая называется деревом устройств. Встроенное программное обеспечение формирует дерево всех устройств на основе информации, собранной POST. Дерево устройств загружается в память и используется ядром операционной системы в процессе загрузки для идентификации всех сконфигурированных устройств. В приведенном примере демонстрируется маршрут как полное имя устройства для системы с архитектурой SBus, такой как SPARCstation20:

/sbus@If,0/esp@0, 40000/sd@ 3,0:a А в этом примере демонстрируется полное имя маршрута некоторого устройства для системы с шиной PCI, такой как Ultra5: /pci@If,0/pci@1,l/ide@3/disk В следующем примере демонстрируется дисковое устройство системы Ultra с шиной PCI-SCSI:

/pci@If,O/pciSl/isptwo@ 4/sd@3,0

Маршрут как полное имя некоторого устройства представляет собой последовательность имен узлов, разделенную символами косой черты (/). Корнем этого дерева является узел машины, который не именуется в явном виде, однако обозначается ведущим символом косой черты. Имя маршрута каждого устройства имеет следующую форму:

driver-name@unit-address:device-arguments

Параметры имени маршрута устройства, Параметр, Описание

driver-name Пригодная для чтения человеком символьная строка, содержащая от 1 до 31 символов, в число которых входят буквы, цифры и следующие знаки препинания:,._ + -

test net test scsi

Execute test for all devices with selftest method Show ticks of real-time clock Monitor network broadcast packets

Monitor broadcast packets on all net interfaces Show attached SCSI devices

Show attached SCSI devices for all host adapters

Различаются символы верхнего и нижнего регистров. В некоторых случаях имя устройства включает наименования его изготовителя и модели, разделенные запятой. Обычно в качестве наименования изготовителя используются публикуемые символы акционерной компании, набранные прописными буквами (например, SUNW.hmeO). Для встроенных устройств наименование изготовителя обычно опускается (например, sbus или pci).

Перед параметром адреса должен быть записан символ @; он служит в качестве разделителя между именем драйвера (driver-name) и адресом устройства (unit-address).

unit-address Некоторая текстовая строка, представляющая физический адрес дан

ного устройства в адресном пространстве его родительского узла. Точ-ное значение конкретного адреса зависит от шины, к которой подсоединено устройство. В приведенном ниже примере:

/sbusSIf/O/espS 0,40000/sd@3,0:а выражение 1f,0 представляет адрес на главной системной шине, поскольку в рассматриваемом примере устройство SBus подключено непосредственно к главной системной шине.

Выражение 0,40000 представляет собой номер разъема на шине SBus. В рассматриваемом примере устройство подключено к разъему 0 шины SBus со смещением 40000.

Выражение 3,0 представляет SCSI-интерфейс и номер логического устройства. В рассматриваемом примере дисковое устройство подключено к шине SCSI как адресат 3, логическое устройство 0.

device-arguments Текстовая строка, формат которой зависит от конкретного устройства.

Этот параметр может использоваться для передачи дополнительной информации программному обеспечению устройства. В приведенном ниже примере

/sbus@If,O/scsiв 2,1/sdS3,0:а

аргументом дискового устройства является "а". Программное обеспе-чение драйвера этого устройства интерпретирует его аргумент как раз-дел диска, поэтому рассматриваемый маршрут устройства ссылается на дисковый раздел "а".

Команда show-devs среды OpenBoot используется для получения информации об устройствах и для отображения имен маршрутов устройств на экране. Эта команда отображает все устройства, известные системе и находящиеся непосредственно ниже данного устройства в иерархии устройств. Команда show-devs без параметров используется для отображения полного дерева устройств. Синтаксис этой команды выглядит следующим образом:

show-devs [device-path]

В качестве примера может служить следующая командная строка:

ok show-devs

В ответ система выводит следующую информацию:

/Т1,TMS39OZ5O0f,f8fffffс /eccmemctl3f,0 /virtual-memory®0,0 /memory!? 0,0 /obi о

/iommuSf,eOOOOOOO

/openprom

/aliases

/options

/packages

/obio/power@ 0, аОЮОО

/obio/auxio@0,800000

/obio/SUNW,fdtwo@0,700000

/obio/interruptU 0,400000

/obio/counter@0,300000

/obio/eeprom@ 0,200000

/obio/zs(? 0,0

/obio/zs@0,100000

/iommu@f,eO000000/sbus@?,eOOO1000

/iommu@f,e0000000/sbus@f,e0001000/cgsix@2,0

/iommu@ f,e0000000/sbus@f,e0001000/SUNW,DBRIe@ f,8010000

/iommu0f,eOOOOOOO/sbus0f,eOOOlOOO/SUNW,bpp@f,4800000

/iommugf,eOOOO000/sbus@f,eOOO1000/ledma@ f,400010

/iommu0f,eOOOOOOO/sbus0f,eOOOlOOO/espdma0f,400000

/iommuUf,eOOOOOOO/sbus0f,eOOOlOOO/SUNW,DBRIe0f,8010000/mmcodec

/iommu0f,eOOOOOOO/sbus0f,eOOOlOOO/ledma0f,4OOO1O/Ie0f,c00000

/iommugf,eOOOOOOO/sbus0f,e0001000/espdma@f,400000/esp@f,800000

/iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/st

/iommu0f,e0000000/sbus@f,eOOOlOOO/espdma0f,400000/esp@f,800000/sd

/packages/obp-tftp

/packages/deblocker

/packages/disk-label

Команды для просмотра дерева устройств

Описание

Отображает имена и свойства текущего узла.

Выбирает заданный узел устройства, делая его текущим.

Выполняет поиск узла с заданным именем в поддереве ниже текущего узла и выбирает первый найденный.

Выбирает родительский узел текущего узла.

Выбирает корневой узел машины.

Покидает дерево устройств.

Выбирает заданный узел устройства, работает аналогично команде dev.

Отображает имена дочерних узлов текущего узла.

Отображает имя маршрута устройства текущего узла.

Декомпилирует заданное слово (устанавливает устройство по указан-ному имени).

Отображает все устройства, известные системе и находящиеся непосредственно ниже данного устройства в иерархии устройств. Команда show-devs без параметров используется для отображения полного дерева устройств.

Команда properties dev device-path dev node-name

dev..

dev/

device-end

'device-path" find-device

Is

pwd

see wordname

show-devs [device-path]

words

'device-path" select-dev

Отображает наименования методов текущего узла. Выбирает заданное устройство и делает его активным узлом.


Ведете ли вы блог?

Да
Нет
Планирую


Результаты опроса

Новостной блок