Hardware Reference
In-Depth Information
continues the boot process by reading the first physical sector of the bootable volume, which is
the start of the volume boot record (VBR). The VBR then loads the first OS startup file, which
is usually ntldr (Windows XP/2000/NT) or bootmgr (Windows 8/7/Vista). The OS is then in
control and continues the boot process.
BIOS —The code that acts as a basic interface between the OS and your hardware when the
system is booted and running.
ROM Hardware
Read-only memory (ROM) is a type of memory that can permanently or semi-permanently hold data.
It is called read-only because it is either impossible or difficult to write to. ROM is also often called
nonvolatile memory because any data stored in ROM remains even if the power is turned off. As
such, ROM is an ideal place to put the PC's startup instructions—that is, the software that boots the
system (the BIOS).
Note that ROM and RAM are not opposites, as some people seem to believe. In fact, ROM is
technically a subset of the system's RAM. In other words, a portion of the system's random access
memory address space is mapped into one or more ROM chips. This is necessary to contain the
software that enables the PC to boot up; otherwise, the processor would have no program in memory
to execute when it is powered on.
For example, when a PC is turned on, the processor automatically jumps to address FFFF0h,
expecting to find instructions to tell the processor what to do. This location is exactly 16 bytes from
the end of the first megabyte of RAM space, as well as the end of the ROM. If this location were
mapped into regular RAM chips, any data stored there would have disappeared when the power was
previously turned off, and the processor would subsequently find no instructions to run the next time
the power was turned on. By placing a ROM chip at this address, a system startup program can be
permanently loaded into the ROM and will be available every time the system is turned on.
For more information about dynamic RAM, see Chapter 6 ' s section, “ DRAM , p. 327 .
Normally, the system ROM starts at address E0000h or F0000h, which is 128KB or 64KB prior to
the end of the first megabyte. Because the ROM chip usually is up to 128KB in size, the ROM
programs are allowed to occupy the entire last 128KB of the first megabyte, including the critical
FFFF0h startup instruction address, which is located 16 bytes from the end of the BIOS space. Some
motherboard ROM chips are larger, up to 256KB or 512KB in size. The additional code in these is
configured to act as a video card ROM (addresses C0000h-C7FFFh) on motherboards with built-in
video and might even contain additional ROM drivers configured anywhere from C8000h to DFFFFh
to support additional onboard devices, such as RAID or network adapters.
Figure 5.2 shows a map of the first megabyte of memory in a PC; notice the upper memory areas
reserved for adapter card and motherboard ROM BIOS at the end of the first megabyte.
 
 
Search WWH ::




Custom Search