What is Power on Self Test (POST)? How Does It Work

Your computer needs to perform multiple functions before it loads up the Operating system. One such function is the Power on Self Test (POST) which tests the components attached to the computer and ensures that they are ready to be used by the system. 

Although POST is a common process on many digital electronic devices, it is most often linked with computers. This test is crucial to detect the issues with the components and convey them to the users with error messages. 

We will discuss this topic more, giving you a general idea of how POST works on your computer, why is it important, and how to solve the error detected during the POST. 

What is Power on Self Test (POST)?

Power on self-test (POST) is a system diagnostic process that is carried out by the BIOS right after you power on the computer. The main function of this test is to see if the components connected to your computer are functioning well. 

POST checks the hardware components installed on your computers such as the RAM, hard drive, processor, and others, and ensures these are functioning as intended. After the test is completed or if there are some issues detected, the system notifies the user with an error code using beep sounds, LED light flashes, or a hexadecimal POST code.  

Once the POST is completed by the BIOS, it passes control to the bootstrap loader function on the system BIOS. Bootstrapping provides a set of instructions for the system to load the Operating system by checking the hard drives and other bootable devices. 

image
Boot Sequence

How Does POST Work?

The POST process starts immediately after you turn on the computer by pressing the power button. When the Power button of the computer is pressed the electric current flows all the way through the circuits to different components including the ROM BIOS. 

Note: This test starts only if the computer is cold-booted i.e if the computer is powered on after a shutdown. The system will skip the POST if the computer is restarted or warm-booted.

The CPU seeks the first phase of instructions that are required for the startup from the BIOS Chip. BIOS stores a set of guidelines on specific memory addresses to run the Power on Self Test. POST usually follows this sequence while conducting the tests. 

CPU: On the first step of the POST sequence, the control lines and registers of the CPU are diagnosed.  

ROM BIOS:  POST then performs a checksum on the ROM BIOS. If the calculated value of the checksum does not match the pre-set value, an error will be generated.  

CMOS RAM: Next the POST tests the CMOS Integrated circuit. Usually, if the fault is detected here, it is primarily due to the failure of the CMOS/RTC integrated circuit. 

Direct Memory Access (DMA) Controller: Direct Memory Access is checked after the CMOS RAM. If POST detects any fault at this stage, it can be due to the address line problem or faulty DMA IC. 

Keyboard Controller: Now the Keyboard controller and buffer are checked. 

Base 64 K System RAM: BIOS then checks the base 64K of the system RAM by writing data to each location of the memory module installed in the computer and then reading it. However, modern motherboards are programmed to skip memory tests as the standard memory check would take a long time.
If the fault is seen at this point, it can be due to failure of the memory, address line problem, or if the memory module isn’t seated properly in their slots.

Programmable Interrupt Controller(PIT): In the next stage BIOS checks the PIT to ensure that all interrupt requests are handled correctly. 

Cache Controller: Finally, the cache controller is tested by the BIOS. If POST detects any problem at this point, the issue can be caused by a faulty controller or cache memory.

POST-ON-AMI-motherboards
POST on AMI BIOS

Once these hardware components are checked and initialized, the POST heads toward the test of Nonsystem Hardware components. It initializes the configuration and nonsystem board components in this sequence: 

CMOS RAM Configuration Data: BIOS starts by checking the data inside the CMOS for validity. If it cannot assure validity, it means that the CMOS data is not set up correctly. 

Video Controllers: After the CMOS RAM, BIOS tests the Video RAM and initializes the video controllers. 

RAM Memory above 64k: All remaining system RAM is tested in 64K blocks.

Keyboard and MouseThe keyboard buffer and controller are tested and BIOS initializes the mouse through the keyboard controller.

Serial Interface Circuitry: The system checks the presence of serial and parallel port hardware, and I/O data areas are assigned for any devices found. 

Diskette Controller and Fixed Disk Controller are then checked by the standard BIOS interrupt calls. 

Finally, it checks the other hardware components such as the IDE removable media.

After the POST is complete, the start-up program is ordered to find the Master Boot Record (MBR). This is located in the first sector of your computer’s Hard drive (C drive for instance). The MBR then reads the boot-strap which locates the startup file of the Operating system. The control of the system is then handed over to Windows, Linux, or any other operating system you are using.

image-1
Computer Booting Sequence and POST

Signs that PC has Failed POST

If POST identifies some problem with the hardware components of your computer and fails the test, the system will not boot into the Operating System.  It will then notify about the issues in the computer through beep sounds, text messages on the screen, LED light codes, or POST codes. If POST cannot display the error message using the Text codes on the screen, it will use the beep sound or the LED flashes. 

Some system boards also give the error message only using a light code or a beep sound. These error codes are useful to diagnose the problem on your computer and fix them accordingly. 

Beep Codes

On early computers, if POST detected any malfunctions with the components you would hear a series of beeping sounds. These are known as the beep codes. The computer basically communicates with the user with these beep codes before or during the video controller test. This is when the video is not available and text errors cannot be displayed on the screen.  

Here is a list of beep codes with their meanings, that you may hear on computers with AMI BIOS.

beep-codes

These beep codes along with their indications can differ from the motherboards. If you are experiencing such error codes, it is recommended that you consult your computer’s user manual to get to the specifics of the issue. 

Text Errors 

After the video test has succeeded and the display runs normally, the POST errors could be displayed as text on your display. These text errors give a direct report about the issue without using numeric codes or beeping sounds. For instance, if POST detects an issue with the keyboard, it will show a message like “Keyboard Failure” on the screen after the completion of the test. 

Hex POST Errors 

Sometimes, the text errors, Light codes, or beep codes can be misleading as well. These error notifications will not be generated if the POST process is interrupted and your computer goes on a boot loop. For a computer rendered dead, Hex codes provide a good reading of the existing issue. 

Hex-POST-cards
Hex POST Card

However, to get the Hex POST codes, you need an interface card known as the POST card. Such POST cards fit into your computer’s expansion slot. When the BIOS carries out the POST, this card displays two characters of Hexadecimal code that indicate the bad hardware component. 

The Hex diagnostic codes and their meaning can differ from the cards you use. However, here are some of the common hex codes along with what they usually indicate.

hex-codes

Light Codes

On Laptops when the POST fails, the users can get notified by light flashes on the power button or front battery LEDs. These are known as light codes and they generally flash with some specific color combinations.

For instance, On dell laptops, the Failed post is indicated by a pattern of amber/orange followed by white flashes. Each of these patterns conveys different issues pertaining to the RAM, CPU, BIOS, and others.  

IMG_5117
LED Light Flashes on a Laptop

The light codes on the laptops could vary with the manufacturers and even models. To know the exact light codes for your laptop along with their implications, you must refer to your device’s user manual.

How to Resolve Errors Detected on POST?

Here’s a general way of resolving the POST error messages.

Different ROM manufacturers set different POST alert codes. The details of such error codes and what they convey are explained in the service manual of the motherboard. Therefore, the first step is to look at the error codes and identify the hardware problems associated with such codes from the manual. 

If the computer appears dead, with no beeping sound or any other form of error code, you can place a POST card in the computer’s expansion slot to diagnose the issue. After you know what component is causing the problem, check its connections. There are cases where you have to replace those troublesome components as well.

Verify if all the components or peripherals attached to the computer are compatible with the system. If the problem has started after installing a new hardware component, disconnect it and check if this makes the computer functional.

If the error codes suggest an issue with RAM, try reseating the modules or swapping their slots. You can also try booting your computer with only one RAM module installed.


inserting-RAM-slots-alternatively

Make sure that the fans on the computer are working well. Overheating causes computer components to not function properly and result in POST failures. The POST tests also might not detect the Fans and halt the booting process.

If you are receiving error codes suggesting CPU failures, try reseating the CPU (if possible) into its socket. You can even change the thermal paste in the process. 


CPU

If the BIOS settings have been configured incorrectly or there seems to be some problem with the BIOS, this may trigger the error codes. Resetting the BIOS to its factory default can give you resolve in this case. 

If you are one of those getting the beep codes and wondering how you can resolve them, here’s an in-depth article on Beep codes on ASUS Motherboard that could help you. 

Mohamed SAKHRI
Mohamed SAKHRI

I'm the creator and editor-in-chief of Tech To Geek. Through this little blog, I share with you my passion for technology. I specialize in various operating systems such as Windows, Linux, macOS, and Android, focusing on providing practical and valuable guides.

Articles: 1751

Newsletter Updates

Enter your email address below and subscribe to our newsletter

Leave a Reply

Your email address will not be published. Required fields are marked *