SRM Firmware: The Boot Architecture of DEC Alpha Systems

SRM Firmware: The Boot Architecture of DEC Alpha Systems

In the realm of high-performance computing, the DEC Alpha microprocessor stood as a powerhouse of its era. To bridge the gap between hardware power-on and the execution of an operating system, Digital Equipment Corporation (DEC) developed a specialized boot firmware known as the SRM console. Named after the (Alpha) System Reference Manual—the definitive publication on the Alpha AXP architecture—SRM served as the critical interface for system initialization and OS loading.

Key Facts

  • Developer: Digital Equipment Corporation (DEC).
  • Purpose: Boot firmware for computer systems based on the DEC Alpha microprocessor.
  • Primary OS Support: Designed for OSF/1 AXP (later Tru64 UNIX) and OpenVMS.
  • Alternative Firmware: ARC (Advanced RISC Computing), also known as AlphaBIOS, was used primarily for Windows NT.
  • Interface: Accessible via graphical adapters (PCI VGA) or VT100-compatible serial terminals.

The Role of SRM in the Alpha Ecosystem

The SRM console was engineered to provide a robust environment for booting professional-grade operating systems. While it was the native choice for DEC's own OSF/1 AXP (which evolved into Digital UNIX and eventually Tru64 UNIX) and OpenVMS, its flexibility allowed other developers to adapt their systems. Consequently, open-source operating systems including Linux, NetBSD, OpenBSD, and FreeBSD were written to boot using the SRM console.

Contrastingly, Microsoft Windows NT did not utilize SRM. Instead, it relied on the ARC (Advanced RISC Computing) boot firmware, often referred to as AlphaBIOS. This created a divide in how Alpha systems were configured depending on the intended software environment.

A screenshot of SRM loading aboot (a Linux bootloader)
A screenshot of SRM loading aboot (a Linux bootloader)

Firmware Coexistence and Limitations

The ability to run either SRM or ARC depended largely on the hardware's EEPROM (Electrically Erasable Programmable Read-Only Memory) capacity. High-end machines, such as the Digital Personal Workstation, featured enough EEPROM space to house both SRM and ARC simultaneously. However, smaller systems—such as certain DEC Multia models designed specifically for Windows NT—had limited flash EEPROM, meaning only one firmware variant could be installed at a time.

Technical Operation and User Interface

SRM is designed to be versatile in its output. If a graphical adapter like a PCI VGA card and a local keyboard are present, the console displays there. In the absence of these, it defaults to a serial connection compatible with VT100 terminals, a design philosophy similar to the Open Firmware found in Apple PowerMac and SPARC systems.

When an Alpha AXP system initializes via SRM, it displays the firmware software version and presents the three chevron prompt (>>>). From this prompt, administrators can execute various commands, access help via the help or man commands, and configure system variables to define automatic boot settings or pass parameter strings to the operating system.

Booting Process and Media Support

The SRM firmware includes a variety of drivers to support different boot media, ensuring the system can find its operating system across various hardware configurations:

  • SCSI: Support for hard disks and CD-ROM drives via supported SCSI adapters.
  • IDE: Support for ATA and ATAPI devices.
  • Network: Ability to boot via BOOTP or DHCP using supported network adapters.

The actual loading process begins when SRM identifies a valid boot device. It looks at logical block zero (the boot block) of the target disk. This block contains the specific disk location and block size of the primary bootstrap image. SRM loads this image into memory and transfers system control to it, effectively handing off the process to the operating system.

Comparison of Alpha Boot Firmwares

Comparison between SRM and ARC Firmware
Feature SRM Console ARC (AlphaBIOS)
Primary OS Tru64 UNIX, OpenVMS, Linux, BSD Microsoft Windows NT
Naming Origin System Reference Manual Advanced RISC Computing
Interface Three chevron prompt (>>>) Proprietary ARC interface
Hardware Standard Alpha AXP systems Windows-targeted Alpha systems

Frequently Asked Questions

What does SRM stand for in the context of DEC Alpha?

SRM stands for System Reference Manual, which was the official publication detailing the Alpha AXP architecture and the specifications for the firmware.

Can an Alpha system boot both SRM and ARC?

Yes, on systems with sufficient EEPROM capacity, such as the Digital Personal Workstation, both can be loaded. On smaller systems like some DEC Multia models, only one can fit at a time.

How does the SRM console locate the operating system?

SRM examines logical block zero (the boot block) of the boot device to find the location and size of the primary bootstrap image, which it then loads into memory.

What is the "three chevron prompt"?

The three chevron prompt consists of three greater-than signs (>>>) and is the command-line interface presented by the SRM console upon system initialization.

Which operating systems are compatible with SRM?

SRM is compatible with OSF/1 AXP (Tru64 UNIX), OpenVMS, Linux, NetBSD, OpenBSD, and FreeBSD.