A power-on self-test (POST) is a process performed by
firmware
In computing
Computing is any goal-oriented activity requiring, benefiting from, or creating computer, computing machinery. It includes the study and experimentation of algorithmic processes, and the development of both computer hardware, h ...
or
software
Software consists of computer programs that instruct the Execution (computing), execution of a computer. Software also includes design documents and specifications.
The history of software is closely tied to the development of digital comput ...
routines immediately after a computer or other digital electronic device is powered on.
POST processes may set the initial state of the device from firmware and detect if any hardware components are non-functional. The results of the POST may be displayed on a panel that is part of the device, output to an external device, or stored for future retrieval by a diagnostic tool. In some computers, an indicator lamp or a
speaker may be provided to show error codes as a sequence of flashes or
beeps in the event that a computer display malfunctions.
POST routines are part of a computer's pre-boot sequence. If they complete successfully, the
bootstrap loader code is invoked to load an
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
.
In
IBM PC compatible
An IBM PC compatible is any personal computer that is hardware- and software-compatible with the IBM Personal Computer (IBM PC) and its subsequent models. Like the original IBM PC, an IBM PC–compatible computer uses an x86-based central p ...
computers, the main duties of POST are handled by the
BIOS
In computing, BIOS (, ; Basic Input/Output System, also known as the System BIOS, ROM BIOS, BIOS ROM or PC BIOS) is a type of firmware used to provide runtime services for operating systems and programs and to perform hardware initialization d ...
or
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
.
IBM-compatible PC POST
In
IBM PC compatible
An IBM PC compatible is any personal computer that is hardware- and software-compatible with the IBM Personal Computer (IBM PC) and its subsequent models. Like the original IBM PC, an IBM PC–compatible computer uses an x86-based central p ...
computers, the main duties of POST are handled by the BIOS or UEFI, which may hand some of these duties to other programs designed to initialize very specific
peripheral device
A peripheral device, or simply peripheral, is an auxiliary hardware device that a computer uses to transfer information externally. A peripheral is a hardware component that is accessible to and controlled by a computer but is not a core compo ...
s, notably for video and
SCSI
Small Computer System Interface (SCSI, ) is a set of standards for physically connecting and transferring data between computers and peripheral devices, best known for its use with storage devices such as hard disk drives. SCSI was introduced ...
initialization. These other duty-specific programs are generally known collectively as
option ROMs or individually as the
video BIOS, SCSI BIOS, etc.
History
In earlier BIOSes, up to around the turn of the millennium, the POST would perform a thorough test of all devices, including a complete memory test. This design by IBM was modeled after their larger mainframe systems, which would perform a complete hardware test as part of their cold-start process. As the PC platform evolved into more of a commodity consumer device, the mainframe and minicomputer-inspired high-reliability features such as parity memory and the thorough memory test in every POST were dropped from most models. The exponential growth of PC memory sizes, driven by the equally exponential drop in memory prices, was also a factor in this, as the duration of a memory test using a given CPU is directly proportional to the memory size.
The original IBM PC could be equipped with as little as 16 KB of RAM and typically had between 64 and 640 KB; depending on the amount of equipped memory, the computer's 4.77 MHz 8088 required between 5 seconds and 1.5 minutes to complete the POST and there was no way to skip it. Beginning with the
IBM XT, a memory count was displayed during POST instead of a blank screen.
A modern PC with a bus rate of around 1 GHz and a 32-bit bus might be 2000x or even 5000x faster, but might have many more gigabytes of memory. With boot times more of a concern now than in the 1980s, the 30- to 60-second memory test adds undesirable delay for a benefit of confidence that is not perceived to be worth that cost by most users. Most clone PC BIOSes allowed the user to skip the POST RAM check by pressing a key, and more modern machines (2000s and later) often performed no RAM test at all unless it was enabled via the BIOS setup. In addition, modern DRAM is significantly more reliable than DRAM was in the 1980s.
Purposes
During the POST, the BIOS must integrate multiple competing, changing, and even mutually exclusive standards and initiatives for the matrix of hardware and operating systems the PC is expected to support, although at most only simple memory tests and the setup screen are displayed. The principal duties of the main BIOS during POST include:
* verify CPU registers
* verify the integrity of the BIOS code itself
* verify some basic components like DMA, timer, interrupt controller
* initialize, size, and verify system
main memory
Computer data storage or digital data storage is a technology consisting of computer components and recording media that are used to retain digital data. It is a core function and fundamental component of computers.
The central processin ...
* initialize BIOS
* pass control to other specialized extension BIOSes (if installed)
* identify, organize, and select which devices are available for booting
The functions above are served by the POST in all BIOS versions back to the very first. In later BIOS versions, POST will also:
* initialize
chipset
In a computer system, a chipset is a set of electronic components on one or more integrated circuits that manages the data flow between the processor, memory and peripherals. The chipset is usually found on the motherboard of computers. Chips ...
* discover, initialize, and catalog all
system bus
A system bus is a single computer bus that connects the major components of a computer system,
combining the functions of a data bus to carry information, an address bus to determine where it should be sent or read from, and a control bus to det ...
es and devices
* provide a
user interface
In the industrial design field of human–computer interaction, a user interface (UI) is the space where interactions between humans and machines occur. The goal of this interaction is to allow effective operation and control of the machine fro ...
for system's configuration
* construct whatever system environment is required by the target
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
In early BIOSes, POST did not organize or select boot devices, it simply identified floppy or hard disks, which the system would always try to boot in that order.
Process
The BIOS begins its POST when the
CPU is reset. The first memory location the CPU tries to execute is known as the
reset vector. In the case of a
hard reboot, the
northbridge will direct a code fetch request to the BIOS located on the system
flash memory
Flash memory is an Integrated circuit, electronic Non-volatile memory, non-volatile computer memory storage medium that can be electrically erased and reprogrammed. The two main types of flash memory, NOR flash and NAND flash, are named for t ...
. For a
warm boot
In computing, rebooting is the process by which a running computer system is restarted, either intentionally or unintentionally. Reboots can be either a cold reboot (alternatively known as a hard reboot) in which the power to the system is physi ...
, the BIOS will be located in the proper place in
RAM
Ram, ram, or RAM most commonly refers to:
* A male sheep
* Random-access memory, computer memory
* Ram Trucks, US, since 2009
** List of vehicles named Dodge Ram, trucks and vans
** Ram Pickup, produced by Ram Trucks
Ram, ram, or RAM may also ref ...
and the northbridge will direct the reset vector call to the RAM. In earlier PC systems, before chipsets were standard, the BIOS ROM would be located at an address range that included the reset vector, and BIOS ran directly out of ROM. This is why the
motherboard
A motherboard, also called a mainboard, a system board, a logic board, and informally a mobo (see #Nomenclature, "Nomenclature" section), is the main printed circuit board (PCB) in general-purpose computers and other expandable systems. It ho ...
BIOS ROM is in segment F000 in the
conventional memory
In DOS memory management, conventional memory, also called base memory, is the first 640 kilobytes of the memory on IBM PC or compatible systems. It is the read-write memory directly addressable by the processor for use by the operating system ...
map.
During the POST flow of a contemporary BIOS, one of the first things a BIOS should do is determine the reason it is executing. For a cold boot, for example, it may need to execute all of its functionality. If, however, the system supports power saving or quick boot methods, the BIOS may be able to circumvent the standard POST device discovery, and simply program the devices from a preloaded system device table.
As part of the starting sequence the POST routines may display a prompt to the user for a key press to access built-in setup functions of the BIOS. This allows the user to set various options particular to the motherboard before the operating system is loaded. If no key is pressed, the POST will proceed on to the boot sequence required to load the installed operating system.
Many modern BIOS and
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
implementations show a manufacturers logo during POST and hide the classic text screens unless an error occurs. The text screen can often be enabled in the BIOS settings by disabling the "Quiet Boot" option.
Progress and error reporting

The original IBM BIOS made POST diagnostic information available by outputting a number to
I/O port 0x80 (a screen display was not possible with some failure modes). Both progress indication and error codes were generated; in the case of a failure which did not generate a code, the code of the last successful operation was available to aid in diagnosing the problem. Using a
logic analyzer or a dedicated
POST card
In computing, a POST card is a plug-in diagnostic Expansion card, interface card that displays progress and error codes generated during power-on self-test (POST) of a computer. It is used to troubleshoot computers that do not Booting, start ...
an interface card that shows port 0x80 output on a small displaya technician could determine the origin of the problem. Once an operating system is running on the computer the code displayed by such a board may become meaningless, since some OSes, e.g.
Linux
Linux ( ) is a family of open source Unix-like operating systems based on the Linux kernel, an kernel (operating system), operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically package manager, pac ...
, use port 0x80 for I/O timing operations. The actual numeric codes for the possible stages and error conditions differ from one BIOS supplier to another. Codes for different BIOS versions from a single supplier may also vary, although many codes remain unchanged in different versions.
Later BIOSes used a sequence of beeps from the motherboard-attached
PC speaker (if present and working) to signal error codes. Some vendors developed proprietary variants or enhancements, such as MSI's
D-Bracket. POST beep codes vary from manufacturer to manufacturer.
Information on numeric and beep codes is available from manufacturers of BIOSes and motherboards. There are websites which collect codes for many BIOSes.
Original IBM POST beep codes
POST AMI BIOS beep codes
POST beep codes on CompTIA A+ certification exam
These POST beep codes are covered specifically on the
CompTIA A+ Exam:
IBM POST diagnostic code descriptions
Macintosh POST
Apple
An apple is a round, edible fruit produced by an apple tree (''Malus'' spp.). Fruit trees of the orchard or domestic apple (''Malus domestica''), the most widely grown in the genus, are agriculture, cultivated worldwide. The tree originated ...
's
Macintosh
Mac is a brand of personal computers designed and marketed by Apple Inc., Apple since 1984. The name is short for Macintosh (its official name until 1999), a reference to the McIntosh (apple), McIntosh apple. The current product lineup inclu ...
computers also perform a POST after a
cold boot. In the event of a fatal error, the Mac will not make its
startup chime.
Old World Macs (until 1998)
Macs made prior to 1987, upon failing the POST, crashed silently without playing any sound and freeze, with a single hexadecimal string and a
Sad Mac icon on the screen, if working. Macs made after 1987 but prior to 1998, upon failing the POST, will immediately halt with a "
death chime", which is a sound that varies by model; it can be a simple beep, a car crash sound, the sound of shattering glass, a short musical tone, or more. On the screen, if working, will be the Sad Mac icon, along with two hexadecimal strings, which can be used to identify the problem. Some Macs made during that same time period do not use a death chime like Macs made prior to 1987, but retained the same format as those that used the death chimes, such as the presence of the Sad Mac icon and two hexadecimal strings on screen.
Old World Macs based on
PCI architecture prior to 1998 don’t display a Sad Mac icon nor the hexadecimal strings on screen and only plays the death chime.
New World Macs (1998–1999)
When Apple introduced the
iMac
The iMac is a series of all-in-one computers from Apple Inc., sold as part of the company's Mac (computer), Mac family of computers. First introduced in 1998, it has remained a primary part of Apple's consumer desktop offerings since and evol ...
in 1998, it was a radical departure from other Macs of the time. The iMac began the production of
New World Macs, as they are called; New World Macs, such as the
iMac G3
The iMac G3, originally released as the iMac, is a series of Macintosh personal computers that Apple Computer sold from 1998 to 2003. The iMac was Apple's first major product release under CEO Steve Jobs following his return to the financiall ...
,
Power Macintosh G3 (Blue & White),
Power Mac G4 (PCI Graphics),
PowerBook G3 (bronze keyboard), and
PowerBook G3 (FireWire), load the Mac OS ROM from the hard drive. In the event of an error that is not a fatal hardware error, they display the same screen as seen when holding at startup but with the error message instead of the "0 >" prompt. In the event of a fatal hardware error, they give these beeps:
New World Macs (1999 onward)
The beep codes were revised in October 1999. In addition, on some models, the power LED will flash in cadence.
Intel-based Macs
With
the introduction of Intel-based Macs using
UEFI
Unified Extensible Firmware Interface (UEFI, as an acronym) is a Specification (technical standard), specification for the firmware Software architecture, architecture of a computing platform. When a computer booting, is powered on, the UEFI ...
, the startup tones were changed again.
These tones are not present in Intel-based Macs equipped with a
T2 security chip,
[ as they handle the POST process in a different way from those without a T2 security chip.
]
Apple silicon-based Macs
The Mac transition to Apple silicon
The Mac transition to Apple silicon was the process of switching the central processing units (CPUs) of Apple's line of Mac computers from Intel's x86-64 processors to Apple-designed Apple silicon ARM64 systems-on-a-chip.
Apple CEO Tim Coo ...
marked a radical change in the POST process in Macs. Unlike most Intel-based Macs with UEFI, Apple silicon
Apple silicon is a series of system on a chip (SoC) and system in a package (SiP) processors designed by Apple Inc., mainly using the ARM architecture family, ARM architecture. They are used in nearly all of the company's devices including Mac ...
-based Macs use a boot ROM
Boot ROM is a piece of read-only memory (ROM) that is used for booting a computer system. It contains instructions that are run after the CPU is reset to the reset vector, and it typically loads a bootloader. There are two types of boot ROM: ...
that loads the Low-Level Bootloader (LLB), similar to that of the firmware for the iPhone
The iPhone is a line of smartphones developed and marketed by Apple that run iOS, the company's own mobile operating system. The first-generation iPhone was announced by then–Apple CEO and co-founder Steve Jobs on January 9, 2007, at ...
and iPad
The iPad is a brand of tablet computers developed and marketed by Apple Inc., Apple that run the company's mobile operating systems iOS and later iPadOS. The IPad (1st generation), first-generation iPad was introduced on January 27, 2010. ...
. No audible beep codes or tones are used to indicate hardware failures, similar to Intel-based Macs equipped with a T2 security chip. In the event of an error that is not a fatal hardware error, an exclamation mark will be displayed on the screen or the device will go into Device Firmware Update (DFU) mode. In the event of a fatal hardware error, no audio or visual feedback is provided. In addition, on some models, the power LED will flash in cadence.
Amiga POST
Amiga
Amiga is a family of personal computers produced by Commodore International, Commodore from 1985 until the company's bankruptcy in 1994, with production by others afterward. The original model is one of a number of mid-1980s computers with 16-b ...
historical line of computers, from A1000 to 4000 present an interesting POST sequence that prompts the user with a sequence of flashing screens of different colors (rather than audible beeps as in other systems) to show if various hardware POST tests were correct or else if they failed:
POST sequence of Amiga
The Amiga system performs the following steps at boot:
# Delays beginning the tests a fraction of a second to allow the hardware to stabilize.
# Jumps to ROM code in diagnostic card (if found)
# Disables and clears all DMA and interrupts.
# Turns on the screen.
# Checks the general hardware configuration. If the screen remains a light gray color and the tests continue, the hardware is OK. If an error occurs, the system halts.
# Performs checksum test on ROMs.
If the system fails the ROM test, the screen display turns red and the system halts.
Sequence for all main Amiga models
Almost all Amiga models present the same color sequence when turned on: black screen, dark gray, light gray color screens filling all monitor screen in a rapid sequence (Amigas usually take between 2 and 3 seconds to turn on and boot).
Color screens scheme
Sequence for A4000
Correct tests color sequence scheme
A4000 presents just a light gray screen during its boot time (it just occurs in 2 or max 3 seconds)
* Light Gray
* = Initial hardware configuration tests passed
* = Initial system software tests passed
* = Final initialization test passed
Failed tests color scheme
Amiga keyboard LED error signals
The keyboards of historical Amiga models are not proprietary as it happened in early computer ages, but more pragmatically it was based on international standard ANSI
The American National Standards Institute (ANSI ) is a private nonprofit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organiz ...
/ISO 8859-1
ISO/IEC 8859-1:1998, ''Information technology— 8-bit single-byte coded graphic character sets—Part 1: Latin alphabet No. 1'', is part of the ISO/IEC 8859 series of ASCII-based standard character encodings, first edition published in 19 ...
. The keyboard itself was an intelligent device and had its own processor and 4 kilobytes of RAM for keeping a buffer of the sequence of keys that were being pressed, thus can communicate with the user if a fault is found by flashing its main LED
A light-emitting diode (LED) is a semiconductor device that emits light when current flows through it. Electrons in the semiconductor recombine with electron holes, releasing energy in the form of photons. The color of the light (corresp ...
in sequence:
Embedded systems
Many embedded systems
An embedded system is a specialized computer system—a combination of a computer processor, computer memory, and input/output peripheral devices—that has a dedicated function within a larger mechanical or electronic system. It is em ...
such as those in major appliances, avionics
Avionics (a portmanteau of ''aviation'' and ''electronics'') are the Electronics, electronic systems used on aircraft. Avionic systems include communications, Air navigation, navigation, the display and management of multiple systems, and the ...
, communications, or medical equipment have built-in self-test
A built-in self-test (BIST) or built-in test (BIT) is a mechanism that permits a machine to test itself. Engineers design BISTs to meet requirements such as:
*high reliability
*lower repair cycle times
or constraints such as:
*limited techn ...
routines that are automatically invoked at power-on.
See also
* POST card
In computing, a POST card is a plug-in diagnostic Expansion card, interface card that displays progress and error codes generated during power-on self-test (POST) of a computer. It is used to troubleshoot computers that do not Booting, start ...
* Serial presence detect
In computing, serial presence detect (SPD) is a standardized way to automatically access information about a memory module. Earlier 72-pin SIMMs included five pins that provided five bits of ''parallel presence detect'' (PPD) data, but the 168- ...
References
External links
POST as part of the BIOS
- by www.basicinputoutputsystem.com (wayback machine)
AMIBIOS8 Check Point and Beep Code List, Version 1.71
AwardBios Version 4.51PG - POST Codes and Error Messages (wayback machine)
Power poweronselftest.com
- from www.poweronselftest.com
a
Wayback Machine
(originally o
NewTek Inc.
site)
article a
Power On Self Test Beep Codes for AMI and Phoenix BIOS
- from PC Hell.
- from Computer Hope.
{{DEFAULTSORT:Power-On Self-Test
BIOS
Unified Extensible Firmware Interface
Booting