PALcode
{{Short description|Type of machine code}}
PALcode (Privileged Architecture Library code){{cite book
|title=Alpha Architecture Reference Manual |date=2014
|publisher=Digital Press
|url=https://books.google.com/books?id=aYioBQAAQBAJ&q=very+flexible |isbn=978-1483294339
|quote=PALcode—Alpha's Very Flexible Privileged Software Library A Privileged Architecture Library (PALcode) is a set of subroutines that ...}}{{cite web
|title=PALcode for Alpha Microprocessors System Design Guide
|url=https://download.majix.org/dec/palcode_dsgn_gde.pdf
|date=May 2, 1996
|quote=PALcode for Alpha Microprocessors. System Design Guide. May 1996. This guide explains how to use the Privileged Architecture Library code.}} is the name used by DEC in the Alpha instruction set architecture (ISA) for a set of functions in the System Reference Manual (SRM) or AlphaBIOS firmware, providing a hardware abstraction layer for system software, covering features such as cache management, translation lookaside buffer (TLB) miss handling, interrupt handling, and exception handling. It evolved from a feature of the DEC PRISM architecture named Epicode.{{cite web|url=http://neilrieck.net/docs/dave_cutler-prism-mica-emerald-etc.html|website=neilrieck.net|author=Neil Rieck|title=Dave Cutler, PRISM, Mica, Emerald, etc.|access-date=2020-12-21}}
PALcode is Alpha machine code, running in a special mode{{cite web |title=PALcode - ES40 Emulator
|url=http://www.es40.org/PALcode
|quote=PALcode is Alpha machine code, running in a special mode that allows access to internal registers specific to the particular Alpha processor}} that also allows access to internal registers specific to the particular Alpha processor implementation. Thus, it is somewhere between the role of microcode and of a hardware emulator. PALcode is operating system-specific,{{cite web |title=The Alpha AXP Processor
|url=http://www.science.unitn.it/~fiorella/guidelinux/tlk/node140.html
|quote=The Alpha AXP architecture uses a set of subroutines, call privileged architecture library code (PALcode). PALcode is specific to the operating system, the CPU ...}} so different versions of PALcode are required by OpenVMS, Tru64 UNIX, and Windows NT. Tru64 UNIX PALcode is also used by NetBSD, FreeBSD, OpenBSD and Linux.
References
{{reflist}}
External links
- [https://web.archive.org/web/20110511060309/http://h71000.www7.hp.com/faq/vmsfaq_021.html Hewlett Packard OpenVMS FAQ] (archived on May 11, 2011)
- {{cite web|url=http://download.majix.org/dec/palcode_dsgn_gde.pdf|title=PALcode for Alpha Microprocessors System Design Guide|publisher=Digital Equipment Corporation|date=May 1996|accessdate=November 7, 2013}}
- {{cite web|url=http://www.docstoc.com/docs/103863445/PAL|title=Some simple PAL code|author1=Bruce Hutton|archive-url=https://web.archive.org/web/20150713222142/http://www.docstoc.com/docs/103863445/PAL|archive-date=July 13, 2015}}
{{Digital Equipment Corporation}}
{{compu-lang-stub}}