磁盘地址标识扇区,而分区表将形成的地址 space into regions. Filesystems occupy some of those regions but belong to a separate format layer. Keeping the layers distinct explains why obsolete geometry fields can coexist with modern logical addressing.
物理与转换后的 CHS 几何 #
Cylinder-head-sector (CHS) addressing models a rotating disk through three coordinates:
- Cylinder selects the same radial track position across the platter surfaces.
- Head selects a recording surface.
- Sector selects a numbered record within that track.
The BIOS INT 13h interface and the original IBM PC partition table encoded CHS,
but their fields did not scale together. A legacy MBR entry allocates 10 bits to the
cylinder, 8 bits to the head, and 6 bits to a one-based sector number. The maximum
encoded geometry is therefore 1024 cylinders, 256 heads, and 63 sectors per track.
With 512-byte sectors, those fields describe at most about 8.4 GB.
Real drives also began using zone bit recording, spare-sector remapping, and embedded controllers, so one fixed sectors-per-track value no longer represented the medium. BIOS and drive firmware responded with translated or synthetic geometries. A CHS tuple in an old partition entry can consequently be compatibility metadata rather than the location of a physical track.
逻辑块寻址与容量 #
Logical block addressing (LBA) numbers addressable sectors from zero. The host asks for LBA 0, LBA 1, and so forth; the device maps each number to its internal medium. Capacity follows directly from the number and size of logical blocks:
capacity in bytes = logical-block count × logical-block sizeAn MBR partition entry stores a 32-bit starting LBA and a 32-bit sector count. At 512 bytes per sector, the count field limits one partition to just under 2 TiB. Drives exposing 4096-byte logical blocks move that arithmetic limit, but legacy firmware and software compatibility may impose other constraints. LBA removes CHS translation; it does not make every field that stores an LBA arbitrarily wide.
MBR 引导与分区项 #
The master boot record occupies the first 512-byte logical sector in the traditional layout. Its conventional structure is:
| Offset | Size | Purpose |
|---|---|---|
| 0 | 446 bytes | Bootstrap code and implementation-specific data |
| 446 | 64 bytes | Four 16-byte partition entries |
| 510 | 2 bytes | 0x55AA signature |
Each entry contains a boot indicator, partition-type byte, starting and ending CHS fields, starting LBA, and sector count. A BIOS bootstrap can inspect the active entry and load code from the selected partition. The table itself neither defines the filesystem nor guarantees that a partition contains boot code.
扩展分区 #
Four entries proved restrictive, so MBR systems reserve partition-type values for an extended partition. The extended region contains a linked sequence of extended boot records (EBRs):
- The first EBR entry describes one logical partition relative to that EBR.
- The second entry, when present, points to the next EBR relative to the base of the containing extended partition.
- Following the links enumerates the logical partitions.
An extended partition is therefore a container for metadata and logical partitions, not one additional filesystem volume. Broken offsets or loops in the EBR chain can hide later partitions even when their filesystem data remains present.
卷引导记录 #
A partition used for BIOS boot often begins with a volume boot record (VBR). For FAT, the VBR combines initial machine code with a BIOS Parameter Block describing the volume. NTFS and other bootable filesystems define their own first-sector formats. The MBR locates a partition, while the VBR and filesystem metadata interpret its contents; neither structure can substitute for the other.
GUID 分区表 #
The GUID Partition Table (GPT), standardized as part of UEFI, replaces the four-entry array and 32-bit MBR LBAs with a self-describing layout. A common disk has:
- a protective MBR at LBA 0;
- a primary GPT header at LBA 1;
- a primary partition-entry array;
- usable LBAs for partitions;
- a backup partition-entry array near the end of the disk;
- a backup GPT header in the final logical block.
The header records its own LBA, the alternate header’s LBA, usable-LBA bounds, the disk GUID, the entry-array location and shape, and CRC32 checksums for both header and entry array. The backup stores enough metadata to recover when one copy is damaged, although repair software must decide which valid copy reflects the intended layout.
Each partition entry carries a partition-type GUID, a unique partition GUID, first and last 64-bit LBAs, attributes, and a UTF-16LE name. Type GUIDs state a partition’s intended role; unique GUIDs distinguish individual partitions. Neither GUID proves which filesystem is present.
The protective MBR normally has a 0xEE entry covering the GPT disk as far as the
32-bit MBR size permits. Its purpose is defensive: an MBR-only program should see
the disk as occupied rather than offering to repartition it. Hybrid MBRs duplicate
selected GPT partitions in legacy entries, but the two tables can diverge and are
not the standard protective layout.
区分寻址、分区与文件系统 #
Storage tools operate at different layers:
- A device reports logical blocks and their size.
- MBR or GPT metadata assigns ranges of those blocks to partitions.
- A filesystem interprets blocks within one assigned range as boot records, allocation structures, directories, and file data.
Changing a partition boundary does not resize the enclosed filesystem. Formatting a partition does not recreate its GPT entry. Likewise, a filesystem signature found at an offset can survive after its partition entry is deleted. Safe recovery and migration tools must validate all three layers rather than infer one from another.
评论
在 GitHub 上阅读或评论(发表评论需要登录)