Микропрограмма SRM
Микропрограмма SRM или SRM-консоль (англ. SRM firmware, SRM console) — микропрограмма, записанная в системное ЭСППЗУ, для загрузки компьютерных систем на основе микропроцессоров DEC Alpha AXP. Акроним SRM происходит от названия документа Alpha System Reference Manual, подробно описывающего архитектуру Alpha AXP и определяющего разнообразные возможности микропрограммы SRM.
SRM-консоль изначально предназначалась для загрузки операционных систем компании DEC OSF/1 AXP и OpenVMS, хотя при её помощи могут загружаться и другие операционные системы (например, Linux, NetBSD, OpenBSD и FreeBSD). Третьей проприетарной операционной системой, выпущенной для архитектуры Alpha, стала Microsoft Windows NT, но она загружалась не через SRM. Вместо неё Windows загружалась при помощи микропрограммы ARC (AlphaBIOS).
На многих Alpha-системах, например, Digital Personal Workstation, в ЭСППЗУ, которое содержит загрузочную микропрограмму, могли быть записаны как SRM, так и ARC. Однако, на некоторых системах начального уровня, а также на больших системах, на которых никогда не возникнет необходимости в загрузке Windows, в ЭСППЗУ содержится только одна из этих микропрограмм. Например, флеш-ЭСППЗУ в DEC Multia, которая является маленькой персональной рабочей станцией на базе Alpha AXP, предназначенная для работы с Windows NT, была объема достаточного для хранения только одной из микропрограмм.
SRM-консоль может выводить информацию как на графический адаптер (PCI VGA карты), так и, если не обнаружены графическая консоль и/или клавиатура, на последовательное соединение с VT100-совместимым терминалом. В этом случае SRM-консоль похожа на Open Firmware, используемую на компьютерах SPARC и Apple PowerMac.
Во время инициализации системы, компьютер Alpha AXP настроенный на загрузку SRM-консоли показывает краткий отчёт о версии микропрограммы записанной в ЭСППЗУ и выводит приглашение командной строки, состоящее из последовательности угловых скобок:
Digital Personal WorkStation 433u Console V7.2-1 Mar 6 2000 14:47:02 >>>
Для ввода доступно небольшое количество команд, список которых можно посмотреть, введя команды help
или man
. Многие команды похожи на команды командной строки Unix-подобных систем. Через строку ввода SRM могут быть заданы разнообразные системные переменные для настройки автоматической загрузки, строковые параметры для передачи их операционной системе и прочие настройки. Микропрограмма SRM содержит драйверы для загрузки с загрузочных носителей, включая жёсткие диски со SCSI-интерфейсом, приводы CD-ROM, подключенные к поддерживаемым SCSI-адаптерам, разнообразные IDE/ATA- и ATAPI-устройства, а также может загружаться по сети через протоколы BOOTP или DHCP с поддерживаемых сетевых карт.
Когда доступен подходящий загрузочный диск, SRM-консоль определяет и загружает образ основной загрузочной записи, используя информацию, записанную в блоке начальной загрузки целевого диска; в нулевой логический блок. Блок начальной загрузки содержит местоположение диска, с которого будет производиться загрузка, и размер блока образа основной загрузочной записи диска, и SRM загрузит его в память и затем передаст управление ему.