| |
|
|
|
| |
|
| Partition |
|
A partition (a logical division) is a discrete portion of a hard disk drive of contiguous sectors that functions as if it were a separate hard disk drive. However, before the partition can be useful a volume must be created; this is done by formatting the partition using a filesystem such as FAT or NTFS, and has a drive letter assigned to it. On basic disks, partitions are known as basic volumes, which include primary partitions (legacy)-style partition table entry type 42h or 0x42) and logical dos drives within an extended partition (legacy)-style partition table entry type (descriptor) 05 or 0x05 and 0F hex). A single hard disk drive can have multiple partitions/volumes or partitions/volumes that span across multiple hard disk drives. The equivalent of a primary partition in an extended partition is called the logical dos drive. By using extended partitions, the Windows operating system overcomes the apparent limit of four partitions per disk. The recursion that extended partitions permit can continue indefinitely, which means that no upper limit exists to the number of possible partitions on a hard disk drive. For example, in My Computer and Windows Explorer, volumes appear as local disks.
Partitions make it easier to organise information. Each partition can be formatted for a different filesystem. A partition must be completely contained on a hard disk drive. The partition table in the Master Boot Record (MBR) for a hard disk drive can contain up to four primary partitions. On dynamic disks, partitions are known as dynamic volumes, which include simple, stripped, mirrored, spanned and RAID-5 volumes (a multi-hard disk drive storage subsystem for data replication). The Partition Manager (Partmgr.sys, located in \System3\Dribvers\) is responsible for notifying the Plug and Play (PnP) Manager of the existence of partitions so that Volume Manager drivers (used to organise, group, and manage storage devices can retrieve notification of the creation and deletion of partitions. To become aware of partitions, the Partition Manager acts as the function driver for disk device objects created by disk class drivers. When the system boots, it reads the partition tables of attached hard disk drives and reports their existence to the PnP Manager. Volume Manager device drivers receive the notification of partitions for disks that they manage and define volume objects when they account for all the partitions that make up the volumes.
Because of Partition Manager’s device driver object’s filter disk device objects, Partition Manager monitors I/O request packets (IRPs) related to partition table modification and can therefore update its internal partition map and notify the PnP Manager of partition creations and deletions. The MBR-style, GUID (Globally Unique Identifier) Partition Table (GPT), and Logical Disk Manager (LDM) have all revolutionised partitioning by overcoming DOS limitations.
With respect to MBR-style partitioning the standard BIOS implementation that x86 computer hardware uses dictates one requirement of the partitioning format in Windows – that is, the first sector of the primary disk must contain the MBR.
See: Basic Input/Output system (BIOS), Basic Disk, Basic Volume, Dynamic Volume, Extended Partition, FAT (12-, 16-, and 32-bit), Master Boot Record (MBR), NTFS (New Technology Filesystem), Primary Partition, Partition Table, and System Partition. |
|
| |
|
| Partition Table |
|
The partition table (at absolute sector 0 or CHS: 0, 0, 1), disk management database, occupies 12.5 percent (64 of the 512 bytes) of the Master Boot Record (MBR) sector located two bytes from the end of the MBR known as the signature word or signature byte. The partition table is a 64-byte data structure with each 16-byte entry containing six important pieces of information: to identify the type (the descriptor), specifying which filesystem the partition includes, location of partitions on the hard disk drive, while conforming to a standard layout independent of the operating system within the MBR (the first useable sector). Each partition table entry is 16-bytes long, with a maximum of four entries each with a Boot Indicator byte: these bytes are at offset 446 (partition table entry #1 (0x1BE or 1BEh)), at offset 462 (partition table entry #2 (0x1CE or 1CEh)), at offset 478 (partition table entry #3 (0x1DE or 1DEh)), and finally at offset 494 (partition table entry #4 (0x1EE or 1EEh)). In addition, each entry starts at a predetermined offset from the beginning of the sector (a 4-bytes starting sector number). A partition table entry will contain the start in LBA (Logical Block Addressing) format, end location in CHS (Cylinder, Head, Sector) format, the start size in sectors, the partition type and the active flag (type/descriptor – 1 byte). Only the CHS fields of the partition table entries are used (another reason why LBA does not solve the “The 528MB or 504MiB Barrier” or “The 1024 Cylinder Barrier”). The CHS fields in the partition table are in L-CHS format. Note: The partition table describes the location of partitions in 1-dimension (LBA) and 3-dimensions (CHS) form.
For Windows NT family operating systems only basic disks make use of the partition table. Dynamic disks use the LDM database, located at the end of the disk, for disk configuration information; the partition table is not updated when volumes are deleted or extended after a dynamic disk upgrade, or when new dynamic volumes are created. On a dynamic disk only the first entry of the “legacy” partition table is used: it describes a type 42 (0x42 or 42h) partition occupying the entire disk (the entire disk minus one cylinder to be precise).
Partition tables form a 'chain', whether they are in the MBR or EPBR. If the chain is broken at some point, all logical partitions defined later in the chain past the 'breakpoint' cannot be accessed. A Partition Table Sector that points to the next Partition Table Sector should always point forward.
Master Partition Table Entry #1
|
Offset |
Length |
Description |
1BEh 446 |
1 byte |
Boot indicator byte (80h (0x80)) = active, else 00h = non-active) - 1st byte in the Partition entry. Typically, the indicator byte for Master Partition Table entry #1 will be 80h. The remainder will be 00h. |
1BFh 447 |
1 byte |
Starting head (or side) of partition |
1C0h 448 |
16 bits |
Starting cylinder (10 bits) and sector (6 bits) |
1C2h 450 |
1 byte |
System indicator byte (see “Standard System Indicator Byte Values” table) |
1C3h 451 |
1 byte |
Ending head (or side) of partition |
1C4h 452 |
16 bits |
Ending cylinder (10 bits) and sector (6 bits) |
1C6h 454
1CAh 458 |
1 dword |
Relative sector offset of partition |
| |
1 dword |
Total number of sectors in partition |
|
1CEh 462 |
1 byte |
Boot indicator byte (80h (0x80)) = active, else 00h) |
1CFh 463 |
1 byte |
Starting head (or side) of partition |
1D0h 464 |
16 bits |
Starting cylinder (10 bits) and sector (6 bits) |
1D2h 466 |
1 byte |
System indicator byte (see “Standard System Indicator Byte Values” table) |
1D3h 467 |
1 byte |
Ending head (or side) of partition |
1D4h 468 |
16 bits |
Ending cylinder (10 bits) and sector (6 bits) |
1D6h 470 |
1 dword |
Relative sector offset of partition |
1DAh 474 |
1 dword |
Total number of sectors in partition |
|
1DEh 478 |
1 byte |
Boot indicator byte (80h (0x80)) = active, else 00h) |
1DFh 479 |
1 byte |
Starting head (or side) of partition |
1E0h 480 |
16 bits |
Starting cylinder (10 bits) and sector (6 bits) |
1E2h 482 |
1 byte |
System indicator byte (see “Standard System Indicator Byte Values” table) |
1E3h 483 |
1 byte |
Ending head (or side) of partition |
1E4h 484 |
16 bits |
Ending cylinder (10 bits) and sector (6 bits) |
1E6h 486 |
1 dword |
Relative sector offset of partition |
1EAh 490 |
1 dword |
Total number of sectors in partition |
|
1EEh 494 |
1 byte |
Boot indicator byte (80h (0x80)) = active, else 00h) |
1EFh 495 |
1 byte |
Staring head (or side) of partition |
1F0h 496 |
16 bits |
Staring cylinder (10 bits) and sector (6 bits) |
1F2h 498 |
1 byte |
System indicator byte (see “Standard System Indicator Byte Values” table) |
1F3h 499 |
1 byte |
Ending head (or side) of partition |
1F4h 500 |
1 dword |
Relative sector offset of partition |
1FAh 506 |
1 dword |
Total number of sectors in partition |
Signature Bytes |
1FEh 510 |
2 bytes |
Boot sector signature (55AAh) – indicates valid MBR sector and is at offset 01FE |
Note: A byte is 8 bits, a word equals 2 bytes (or 16 bits) read in reverse order; a dword equals two words read in reverse order.
The data in the partition table entries informs the system where each partition starts and ends on the hard disk drive, how big it is, whether it is bootable, and which type of filesystem is contained in the partition. Each entry in the master partition table contains a System Indicator byte that identifies the filesystem type used in the partition referenced by that entry.
The following table shows the standard values and meanings of the system indicator bytes.
Standard System Indicator Byte Values (System ID) |
Values |
Partition Type |
Translation Mode |
Partition Size |
00h 0x01 |
None |
-- |
-- |
01h ‘’ |
Primary FAT12 |
CHS (cylinder head sector) |
0-15MB |
04h 0x04 |
Primary FAT16 |
CHS |
16MB-32MB |
05h ‘’ |
Extended |
CHS |
16MB-32MB |
06h ‘’ |
Primary FAT16 (also called BigDOS) |
CHS |
32MB-2GB |
07h 0x07 |
NTFS/HPFS/QNX (also advanced Unix) |
All |
All |
0Ah ‘’ |
OS/2 Boot Manager |
All |
All |
0Bh 0x0B |
Primary FAT32 |
LBA (Logical block address) |
512MB-2TB |
0Ch ‘’ |
Primary FAT32 |
LBA |
512MB-2TB |
0Eh ‘’ |
Primary FAT16 |
LBA |
32MB-2GB |
0Fh ‘’ |
Extended |
LBA |
32MB-2GB |
The essence of all these messages is that none of the bootable devices in the bootable sequence were found to contain signature bytes indicating a valid MBR in their first physical sector.
- "NO ROM BASIC - SYSTEM HALTED" or "No boot device available, strike F1 to retry, F2 for setup utility" or "No boot sector on fixed disk, strike F1 to retry boot, F2 for setup utility" or "Non-System disk or disk error, replace and strike any key when ready" or "DISK BOOT FAILURE, INSERT SYSTEM DISK AND PRESS ENTER". (Solution: set a primary partition to "active", partition the hard disk drive and the set the primary partition to "active". Each partition table entry is 16-bytes long, with a maximum of four entries, each with a Boot Indicator byte: these bytes are at offset 446 (partition table entry #1 (0x1BE or 1BEh)), at offset 462 (partition table entry #2 (0x1CE or 1CEh)), at offset 478 (partition table entry #3 (0x1DE or 1DEh)), and finally at offset 494 (partition table entry #4 (0x1EE or 1EEh)). These Boot Indicators are used to determine if the partition is active (bootable) by checking for the value 0x80 or 80h. The remaining Boot Indicators will have a value of 0x00 or 00h. Consequently, if all four table entries have 00h then the MBR returns control to the motherboard ROM).
- "Invalid partition table". The source of the error message is the MBR. There is more than one Boot Indicator byte with a value of 0x80 or 80h - more than one partition marked "active." (Solution: deactivate the non-booting partitions. However, a thorough investigation of the partition table may be necessary, since the actual problem may be more complex). .
- "Error Loading Operating system". The source of the error message is the MBR. An error was returned from the BIOS when the boot loader attempted to read the active partition's boot sector into memory. (Solution: In many cases this will be due to a "soft" ECC error and can be repaired by rewriting the boot sector.)
- "Missing operating system” or “Operating system not found". The source of the error is BIOS related. The MBR is corrupted due to any of the reasons mentioned above. However, it is primarily related to small capacity hard disk drives where the translation settings are changed from LBA to CHS. The bootstrap loader in the BIOS translates drive sector locations differently and possibly incorrectly. For this reason the valid MBR's location and in turn the Volume Boot Record (VBR), also known as the volume boot sector or partition boot sector, will not be where they are expected to be; they are lost. (Solution: firstly, for hard disk drives of 528MB (504MiB) through to 8.4GB (7.9GiB) reverse the translation mode. Alternatively, rebuild the MBR and partition table using Recovery console command "fixmbr". Any boot problems can be corrected using "fixboot").
See: CHS (Cylinder, Head, Sector), Extended Partition Boot Record, dynamic Volume, Extended Partition, LBA (Logical Block Addressing), Logical Disk Manager (LDM) Database, Master Boot Record (MBR), MBR Disk, and Partition.
|
|
| |
|
| Path |
|
| A path is a sequence of directory or folder names that specifies the location of a directory, a file, or folder within the Windows directory tree. Each directory name and file name within the path must be preceded by a backslash (\). For example:
C:\Documents and Settings\<Username>\Desktop\My Computer\Word\readme.doc.
See: Directory, Filename, File Reference, File Record, and Universal Naming Convention (UNC). |
|
| |
|
| Petabyte (symbol PB) |
|
| A measure of disk capacity equalling 1,000,000,000,000,000 bytes, 1,000TB (or 1.0*10^15 bytes). |
|
| |
|
| Physical Drive |
|
A single hard disk drive. A single hard disk drive can be divided into multiple logical drives (DOS defines logical drives, which are given a specifier (enumerated), such as C: or D:). Dynamic volumes permit spanning of a single volume across multiple hard disk drives.
See: Disc & Disk, and Fixed Disk (or Hard Disk Drive). |
|
| |
|
| POST (Power-On Self Test) |
|
When a computer is powered on to operate, each power supply unit (PSU) completes internal checks and tests before allowing the system to start. If the tests are completed successfully without incident, the PSU sends a special signal to the motherboard called the Power_Good (or Power_OK or POK) +V5 signal: with variations between +3.0V and +6.0V). It takes a few moments to generate reliable power (between 0.1 to 0.5 seconds) for the rest of the computer. If the POWER_GOOD signal is not continuously present, the computer will not run. In short, the PSU actually prevents the computer from starting up or operating until all the correct power levels are present.
There was a time when the System BIOS (that all motherboards have); rudimentary yet very important software that boots the system initially, contained all the device drivers such as, keyboard, video adapters, serial and parallel ports, floppy controller, hard disk drive controller for the entire system, Power-On Self Test (POST) routine and bootstrap loader all burned into one or more non-volatile motherboard (True or Mask) ROM (Read-Only Memory) chips of finite capacity - anything up to six single ROM chips. However, the old styled motherboard ROM chip is no longer used as more advanced non-volatile memory chips are used, e.g., PROM (Programmable ROM), EPROM (Erasable PROM: pronounced "E"-PROM) and EEPROM (Electrically EPROM; also called "flash ROM"). In essence, the device drivers were once self-contained, preloaded into memory and accessible anytime the PC was powered on.
On a modern (x86) computer the operating system and disk format independent Plug and Play (PnP) System BIOS is stored on an EEPROM memory chip sitting on a Firmware Hub (FWH interface) or Serial Peripheral Interface Bus (SPI interface), so that it can, when the computer is powered on, begin its complex and convoluted POST sequence of duties when the CPU is reset, i.e., powered on, cold or warm boot. To ascertain a warm boot or a cold boot the ROM BIOS - (as the BIOS is stored in the main portion of the ROM, it is often called the ROM BIOS) - starts up routines to check the value of two bytes located at memory location 0000:0472. Any value other than 1234h or 0x1234 (indicating a warm boot) indicates that it is a cold boot, or the absence of the PSU's POWER_GOOD signal instigating a power reset.
One of the responsibilities of the System BIOS and the first set of instructions once the computer is powered is POST. One of the main duties of POST, carried out by the BIOS, is to isolate and initialise all PnP cards and assign them a valid Card Select Number (CSN) - PnP devices have a 3-character vendor specific device ID stored in the hardware so that the operating system can recognise it. After a CSN has been assigned, some of the duties of POST are actually performed by other programs designed to initialise very specific peripheral devices, notably, for video, SCSI (pronounced scuzzy) and ATA/IDE host initialisation. These other duty-specific programs are generally known collectively as option ROMs or individually as the video BIOS, SCSI BIOS, Network Interface Card BIOS and RAID BIOS and so forth. The first to be summation checked and released is the video BIOS; each following thereafter. Option ROMs, stored on EEPROM chips also, contain auxiliary BIOS routines and drivers needed by the particular adapter card; complementing or superseding the System's BIOS code for the given component. An add-in adapter usually requires an option ROM if it is necessary for it to be used prior to the time that the operating system loads or are complex enough not be handled by the main BIOS directly, e.g., video and SCSI adapters. Thereafter, the System BIOS can designate resources to the cards such as I/O ports, IRQs, DMA channels, and memory locations for these various other tested components, e.g., RAM (Random Access Memory; also known as physical memory), discover, initialise, and catalogue all system buses and devices, hard disk drives and optical disc drives, keyboard and mouse and so forth. Add-on cards/adapters carry out their own BIOS/firmware internal diagnostic tests. The BIOS must carry out an inventory of the hardware installed; then communicates or interrogates the hardware to ensure that it is functioning correctly. The BIOS Setup configuration information is stored on a motherboard chip called the RTC/NVRAM digital clock chip (Real-Time Clock/Non-Volatile RAM) or confusingly CMOS RAM chip (Complementary Metal Oxide Semiconductor RAM), where CMOS configuration information is stored and POST can refer to the hardware setup information.
Modern BIOSes have the additional functionality to automatically collect settings: memory timings (based on the memory type found), dynamically set a hard disk drive's parameters and access modes, display an onscreen message for each device detected and configured in this way. The BIOS must integrate the plethora of competing, evolving, and even mutually exclusive standards and initiatives for the matrix of hardware and operating systems the general-purpose computer (PC) is expected to support. To the end user, all that will be evident as POST and BIOS activity is the simple visible memory test and setup text in the form of detected hard disk drives, optical drives and adapter cards, where applicable. This is the final stage of the BIOS POST routine. The BIOS is only responsible for the configuration of boot devices. The motherboard ROM exits only to initialise the system startup, to initialise specific hardware, to offer security in a way of a power-on-pass-word, and to perform some basic install configuration and to get the system functional long enough to get the initial operating system loaded.
Once all tests have been completed a beep sound comes from the internal speaker if this initial test indicates devices are properly connected, and operating for proper system performance. If problems are found, these routines alert the user with a series of beeps or a message, often accompanied by a diagnostic numeric value. If POST is successful, it passes control to the bootstrap loader. Note: During POST, one of the primary duties of the BIOS is to determine the reason it is executing. For example, for a cold boot, it may need to execute all of its functionality. On the other hand, systems supporting power savings or quick boot methods, the BIOS may be able to circumvent (by-pass) the standard POST device discovery, and simply program the devices from a pre-loaded system device table.
The BIOS, once contained entirely in a single location within the motherboard ROM chip, is now constructed of programs located in three different physical locations in the system; yet it functions as a single entity because all the programs are linked together via the BIOS subroutine calling system-of-software interrupts. The combination of the motherboard BIOS, option ROMs and device drivers loaded from disk contribute to the BIOS as a whole. The portion of the BIOS contained within the motherboard ROM and option ROM chips are often referred to as firmware.
At the completion of the system's POST, assuming there are no fatal problems, INT 19 is called.
On modern machines, generally, the bootstrap loader, a program also referred to as interrupt 19 (INT 19) runs automatically when a computer is turned on. As mentioned, the first set of startup instructions is the POST. Generally, INT 19 is a routine that tries to read the first physical sector from the first floppy diskette drive. If a boot sector, in this case the boot record is found on the floppy diskette, the boot sector is read/loaded into memory at location/address 0000:7C00 - INT 19 jumps, initiated by a jump instruction. However, if no boot sector is found on the first floppy diskette, INT 19 tries to read the first physical sector of various hard disk drives searching for a valid Master Boot Record (MBR) from the first hard disk drive's absolute sector zero in CHS mode and zero in LBA mode. If, during this INT 19 process, any other essential boot devices BIOSes are found, they are executed, i.e., SCSI ROM that potentially has a hard disk drive with a valid MBR. If no valid MBR is found, the ROM puts into effect interrupt 18 (or INT18) displaying a message and the boot process will stop.
The essence of all these messages is that none of the bootable devices in the bootable sequence were found to contain signature bytes indicating a valid MBR in their first physical sector.
- "NO ROM BASIC - SYSTEM HALTED" or "No boot device available, strike F1 to retry, F2 for setup utility" or "No boot sector on fixed disk, strike F1 to retry boot, F2 for setup utility" or "Non-System disk or disk error, replace and strike any key when ready" or "DISK BOOT FAILURE, INSERT SYSTEM DISK AND PRESS ENTER". (Solution: set a primary partition to "active", partition the hard disk drive and the set the primary partition to "active". Each partition table entry is 16-bytes long, with a maximum of four entries, each with a Boot Indicator byte: these bytes are at offset 446 (partition table entry #1 (0x1BE or 1BEh)), at offset 462 (partition table entry #2 (0x1CE or 1CEh)), at offset 478 (partition table entry #3 (0x1DE or 1DEh)), and finally at offset 494 (partition table entry #4 (0x1EE or 1EEh)). These Boot Indicators are used to determine if the partition is active (bootable) by checking for the value 0x80 or 80h. The remaining Boot Indicators will have a value of 0x00 or 00h. Consequently, if all four table entries have 00h then the MBR returns control to the motherboard ROM). .
- "Invalid partition table". The source of the error message is the MBR. There is more than one Boot Indicator byte with a value of 0x80 or 80h - more than one partition marked "active." (Solution: deactivate the non-booting partitions. However, a thorough investigation of the partition table may be necessary, since the actual problem may be more complex). .
- "Error Loading Operating system". The source of the error message is the MBR. An error was returned from the BIOS when the boot loader attempted to read the active partition's boot sector into memory. (Solution: In many cases this will be due to a "soft" ECC error and can be repaired by rewriting the boot sector.)
- "Missing operating system” or “Operating system not found". The source of the error is BIOS related. The MBR is corrupted due to any of the reasons mentioned above. However, it is primarily related to small capacity hard disk drives where the translation settings are changed from LBA to CHS. The bootstrap loader in the BIOS translates drive sector locations differently and possibly incorrectly. For this reason the valid MBR's location and in turn the VBR will not be where they are expected to be; they are lost. (Solution: firstly, for hard disk drives of 528MB (504MiB) through to 8.4GB (7.9GiB) reverse the translation mode. Alternatively, rebuild the MBR and partition table using Recovery console command "fixmbr". Any boot problems can be corrected using "fixboot").
Note: The term Power-On Self Test (POST) also applies to the pre-boot sequence of a router or printer for example.
See: BIOS Parameter Block (BPB), Boot Record, Boot Sector, Boot Sector Virus, Bootstrap, Bootstrap Loader, Master Boot Record (MBR), System Volume, Volume Boot Records (VBR), Windows NT-Based Startup Phases. |
|
| |
|
| Primary Partition |
|
An ordinary, single-volume bootable partition - (legacy)-style partition table entry type 42 or 0x42).
A partition (a logical division) is a portion of a hard disk drive that functions as if it were a physically separate hard disk drive. However, before the partition can be useful a volume must be created; this is done by formatting the partition using a filesystem such as FAT or NTFS, and has a drive letter assigned to it. On basic disks, partitions are known as basic volumes, which include primary partitions and logical dos drives. Specifically a primary partition (or basic volume) must be created in order for Windows to start. The primary partition can be the boot or system partition or both depending on how and where Windows is installed (known as the systemroot). As many as four primary partitions can be created on a basic disk, or three primary partitions and on extended partition ((legacy)-style partition table entry type (descriptor) 05 and 0F hex). Primary partitions can be created only on basic disks. A partition must be completely contained on a hard disk drive, and the partition table in the Master Boot Record (MBR) for a hard disk drive can contain up to four primary partitions. The recursion that extended partitions permit can continue indefinitely, which means that no upper limit exists to the number of possible partitions on a hard disk drive.
See: Active Partition, Basic Disk, Basic Volume, Boot Partition, Dynamic Volume, Extended Partition, Master Boot Record (MBR), Primary, Partition Table, System Partition, and Systemroot. |
|
| |
|
| Program |
|
| A static set/sequence of instructions or steps telling the computer how to handle a problem or task. |
|
| |
|
| Protected Mode |
|
In addition to real mode 80286 and x86-compatibale computers support 16-, and 32-bit protected mode (also referred to as Protected Virtual Address Mode), abbreviated p-mode, (an operational mode (or processor mode or privileged levels) of central processor units (CPUs) placing restrictions on its operation). Under 32-bit protection mode there are enhances in multitasking and system stability, such as memory protection, a paging system, and hardware support for virtual memory are supported. All x86 CPUs start in real mode at power-on and then into protected mode.
See: Real Mode. |
|
| |
|
| |
|
| |
|
| |
|
|