UMBC | CMSC 313 -- POST | Previous | Next |
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Not original material!!!
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
THE POST TEST
Each time the computer boots up the computer must past the POST. The following is the procedure of the POST:
1. The first step of POST is the testing of the Power Supply to ensure that it is turned on and that it releases its reset signal.
2. CPU must exit the reset status mode and thereafter be able to execute instructions.
3. BIOS must be have readable.
4. BIOS checksum must be valid, meaning that it must be readable.
5. CMOS be accessible for reading.
6. CMOS checksum must be valid, meaning that it must be readable.
7. CPU must be able to read all forms of memory such as the memory controller, memory bus, and memory module.
8. The first 64KB of memory must be operational and have the capability to be read and written to and from, and capable of
containing the POST code.
9. I/O bus / controller must be accessible.
10. I/O bus must be able to write / read from the video subsystem and be able to read all video RAM..
If the computer does not pass any of the above tests your computer will receive an irregular POST. An irregular POST is a beep code which is different from the standard which can be either no beeps at all or a combination of different beeps indicating what is causing the computer not to past the POST.
==================================================
System Configuration Summary
Just before the BIOS begins booting the operating system from disk, it will display an ASCII-graphics box on the screen containing summary information about your system's configuration. What is in this box depends on your BIOS and system, of course, but typically you will find the following:
* Processor (CPU) Type: This is usually the general family of processor, like "Pentium" or "Pentium Pro" etc. Newer BIOSes
will recognize the Intel-compatibles directly; older ones may display "Pentium" when the chip really isn't one. You may
see this displayed as "Pentium-S" on a system with Award BIOS; this just means that the processor incorporates SMM,
enhanced power management features that were introduced in the 486SL and incorporated into almost all current processor.
* Coprocessor: This used to be used to indicate if the machine had a separate coprocessor or floating point unit (FPU) in it.
Modern processors have this built-in so this will almost always say "Installed" or "Integrated".
* Clock Speed: The speed of the processor in MHz. Some BIOSes put the speed of the processor together with the processor
type display (the first line).
* Floppy Drive A: The size and capacity of the first detected floppy disk, A:
* Floppy Drive B: The size and capacity of the second detected floppy disk, B:
* IDE/ATA Drives: Most BIOSes will show an entry for each of the four devices on an IDE system: the primary slave and
master, and the secondary slave and master. Older machines only support two IDE drives and will often just call these
"Drive C" and "Drive D", which is misleading (since each drive can actually contain more than one drive letter). For
each drive installed in the system, the screen will show its size and what sort of modes it is using for access
(PIO modes, whether or not it is using LBA, etc.). Some BIOSes will also display the drive's manufacturer. Most
modern BIOSes will also detect and show IDE (ATAPI) CD-ROMs.
* Base Memory Size: This will (almost?) always be 640K. This is also called conventional memory.
* Extended Memory Size: How much extended memory your system has. If you add this to the base memory you will usually
find that 128K, 256K or 384K of memory is "missing" from the number that it should be (see the "powers of 2" table for
usual byte totals for 16MB, 32MB etc.) The BIOS usually will not report the upper memory area that is reserved for the
BIOS ROM and other hardware adapters.
* Cache Size: The amount of cache memory in the system.
* Memory Type and Configuration: Most newer systems will display how many banks of memory have been found, and what
memory technology is in use; for example, you may see "EDO DRAM at Bank 1" or "FP: 0" (FPM DRAM) or something similar.
* Display Type: This will normally say "VGA/EGA". It doesn't really tell you anything at all about the video adapter
since this describes generically every video adapter produced for the last ten or so years (why do they even bother?)
* Serial Port(s): The I/O port addresses of your serial or COM ports. Normally there are two, with addresses 3F8h and 2F8h,
but there can be three or four as well.
* Parallel Port(s): The I/O port addresses of your parallel or LPT ports. Normally there is one, with the address 378h,
but you may see 278h or 3BCh here.
* Plug and Play Devices: Some BIOSes will report the descriptions of any Plug and Play expansion cards they identify
during the boot process.
bootPOST-c
==================================================
BIOS Updates and The Flash BIOS
As you can see by looking at the rest of the information on the BIOS, it is a very important program indeed. Its quality and modernness determine the features and capabilities of your machine to a large degree. The most famous example of this is support for IDE/ATA hard disks over 504 MB; the only change necessary to support these larger drives in most cases is a BIOS capable of doing the geometry translation. There are other examples as well; many motherboard manufacturers are able to expand the capabilities of their boards, or fix problems with them, by making changes to the BIOS and either giving free downloads or selling upgrades, just as software application houses like Microsoft, Lotus, etc. do.
The BIOS program in your PC is programmed into a read-only memory (ROM). ROMs are, of course, not rewriteable the way RAM is; that is why they are called "read-only". This presents a problem when you want to update your BIOS. In "the old days" when you wanted to update your BIOS, the manufacturer sent you a new BIOS chip; you opened the box, pulled out the old chip, and put the new one in. Needless to say, this is a pain. Fortunately, technology came to the rescue through the invention of the flash BIOS. Some machines still require the physical upgrade but by using the flash BIOS, most newer machines can upgrade using special software without having to open the case at all.
Machines with flash BIOS capability use a special type of BIOS ROM called an EEPROM; this stands for "Electrically Erasable Programmable Read-Only Memory". As you can probably tell by the name, this is a ROM that can be erased and re-written using a special program. This procedure is called flashing the BIOS and a BIOS that can do this is called a flash BIOS. The advantages of this capability are obvious; no need to open the case to pull the chip, and much lower cost.
Many motherboards have a special "safety feature" to prevent accidental (or malicious) changes to the flash BIOS--a jumper that must be changed before performing a flash BIOS upgrade. While this is a security feature, it also obviates one of the great advantages of the flash BIOS, namely not having to open the case! Your motherboard manual will tell you whether you have a jumper or not. With the increasing commonality of viruses that can change flash BIOS code, this may soon be a feature on every motherboard.
There is one big disadvantage to using the flash process to upgrade your BIOS. While the BIOS is actually being flashed, it is in a very vulnerable state. If you are really unlucky and something very bad happens in the middle of the upgrade (for example, a power outage), it is possible to end up with a corrupted BIOS chip. You can also end up with a corrupted system if you boot the wrong flash BIOS image into the chip--motherboard manufacturers usually use an unintelligent, universal flash program that will happily program the entirely wrong BIOS image into your system if you tell it to! Fortunately, some manufacturers are now making these programs smarter. For example, Award's flash program checks the name of the image file against the model of motherboard and will complain if there is a mismatch. (Good idea, guys!)
If your system becomes corrupted to the point where it will not boot, you are in a catch-22. Your BIOS is corrupted, so you can't boot the PC, and since you can't boot the PC there's no conventional way to re-flash the BIOS. See this section in the troubleshooter for ideas on recovering from this problem.
Fortunately, BIOS chip corruption is quite rare; the BIOS is a small program and flashing it usually takes only a few seconds. Still, it's not something to try in the middle of a thunderstorm, and I try to use a UPS when doing this type of work, if possible. And be sure you are using the right BIOS image.
==================================================
The Boot Block
The preceding section discusses updating the program code in the system BIOS by flashing it (replacing it under software control). If the flash procedure is done improperly, the BIOS code can become corrupted, which will cause the system to go into an unbootable state. Many newer systems come with a feature where a 4 KB "boot block" program is included as part of the BIOS. This is a tiny piece of code whose job it is to recover from a situation where the BIOS code is incorrect or corrupted.
If your motherboard supports this feature, when the PC tries to boot and finds the BIOS code corrupted, the boot block will try to recover the BIOS code, usually by reading it from a specially-prepared floppy disk. You may have to change a jumper on the motherboard to enable this capability, and you may need to make use of a "plain vanilla" ISA video card. The boot block will load the BIOS code and then when you next reboot, the regular BIOS code should be in place and the problem resolved.
You will need to follow the special recovery procedure outlined by your motherboard manufacturer if you want to take advantage of this feature.
=====================Booting=============================
==================================================
==================================================