Jump to content

PALcode

From Alfawiki
PALcode
Company typeFirmware component
IndustryComputer hardware / Software
ProductsHardware abstraction layer routines for Alpha ISA

PALcode (short for Privileged Architecture Library code) comprises a collection of routines within the Alpha instruction set architecture (ISA) firmware, including environments like the System Reference Manual (SRM) and AlphaBIOS. It functions as a hardware abstraction layer enabling system software to interact with hardware features. Key responsibilities of PALcode include managing cache operations, handling translation lookaside buffer (TLB) misses, and processing interrupts and exceptions. Its origins trace back to the Epicode component found in the DEC PRISM architecture.

Operating as Alpha machine code in a privileged mode, PALcode gains access to processor-specific internal registers unique to each Alpha CPU design. Situated between microcode and hardware emulator, it is customized according to the target operating system, necessitating distinct versions for systems such as OpenVMS, Tru64 UNIX, and Windows NT. Additionally, the PALcode version developed for Tru64 UNIX extends support to other platforms including NetBSD, FreeBSD, OpenBSD, and Linux.