Firmware, BIOS, UEFI & POST

As you may have guessed from the title, there's a fair amount of shortened abbreviations in this post while we look into some of the operations that take place while the computer boots up.  Much of the information needed to carry out these tasks is held within a ROM chip, which I looked at in my previous post.  

Firmware is software, normally stored on a memory chip, that stores information relating to a computers Operating System (OS).  This information usually takes the form of specialised software that can be updated with a special program to repair any issues later identified in the Firmware or to support any hardware components that require an update.

Electronic updating of firmware is known as 'Flashing' and is normally done via an Internet connection.  My Sony Playstation 4, for example, often requires flashing as games become more and more technical.  A good example of this is the recent trend towards games with a VR (virtual reality) capability.

The System BIOS (Basic Input/Output System) is a simple set of programming instructions, ordinarily stored in ROM, that are used to start the basic services of a computer system. These sets of instructions work to set the computer's environment and update it's configuration every time that the machine is turned on.  The ROM chip that houses the BIOS is located on the computer's system board (motherboard).  Some computers may have devices that also include their own BIOS that operate independently from the system BIOS and control only the individual devices functions.  It's important to note that every computer, including smartphones and handheld gaming devices, has a System BIOS.

The Unified Extensible Firmware Interface (UEFI) is a standard interface, used in personal computers, that's designed to combat the limitations of the System BIOS.  The System BIOS itself, whilst vital to initiating a computer system, provided little to no ability for user configuration and/or repair in the event of an issue developing.  

UEFI supports remote configuration and repair of computers, even without an OS being installed, and provides  legacy support for BIOS services.  In the computers virtual boot up structure, the UEFI effectively acts as a very well connected agent between the computers firmware and it's Operating System.

UEFI provides several technical advantages over traditional BIOS systems:


  • The ability to boot from large disks (Over 2 Terrabytes (TB)) with a GUID partition table.
  • CPU independent architecture and drivers
  • A flexible pre-OS environment with inclusive networking capabilities
  • A modular design
These technical advantages mean that, even in a system with large amounts of storage space where it's OS has encountered a fatal error, the UEFI is still able to start the system sufficiently in order to find and resolve any problems.  With a traditional BIOS systems, todays larger storage machines would be unrecoverable should the above have occurred.

The Power-On Self Test (POST) is a diagnostic program, built into the firmware, that runs before the system BIOS even starts to begin the OS booting process.  The POST checks fundamental hardware and ensure that everything is operating correctly before the system is allowed to continue booting up.  In the event that the POST identifies an error, an audible beep alerts the user to the error.

Although the POST process can vary significantly from manufacturer to manufacturer the below are a series of common steps found in the vast majority:

  1. Power Supply - Must be turned on and be providing a good, stable signal.
  2. CPU - Must have exit the Reset status mode and be able to execute instructions
  3. System Firmware (and associated memory) - Must be readable
  4. Memory -  Must be able to be read by the CPU and the first 64Kb of memory must be able to hold the POST code.
  5. I/O bus or controller - Must be accesible and must be able to communicate with the video subsystem.
If the above checks (and others as programmed by the manufacturer) complete successfully, then the system will continue to follow it's BIOS and OS boot process without incident.


Study Reference Disclaimer. 

Comments