Logical block addressing

from Wikipedia, the free encyclopedia

The term logical block addressing (LBA) or English Logical Block Addressing refers to a method of addressing at ATA - hard drives .

Basics

In contrast to three-dimensional cylinder-head-sector addressing ( Cylinder-Head-Sector, or CHS for short ), the blocks of the hard disk are addressed completely independently of the hard disk geometry. In the LBA method, the blocks are simply counted, starting with zero. Each LBA block corresponds to a single sector of the CHS addressing.

ATA / ATAPI / ACS: LBA differentiates between addresses with 28 and 48 bits . A 28-bit LBA address enables the addressing of 268,435,456 blocks. With the usual block and sector size of 512 bytes, this corresponds to 128 GiB . As an extension, ATA -6 introduces 48-bit addressing (48-bit LBA or Big-LBA), with which 281,474,976,710,656 blocks (i.e. 128 PiB ) can be addressed.

48-bit LBA is used on hard drives with capacities of more than 128 GiB, provided the BIOS also supports 48-bit LBA.

SCSI: In connection with the size of the CDB (Command Descriptor Block), 32-bit LBA and 64-bit LBA (long LBA) are also used. This is due to the fact that only 4 bytes (32 bits ) are provided for the LBA address in the 10- byte CDB . This means that a maximum of 2 32 = 4,294,967,296 blocks and with a block / sector size of 512 bytes a maximum of 2 TiB can be addressed. Another restriction with regard to 32-bit LBA addresses and the resulting 2-TiB limit is due to the structure of the partition table of the MBR .

With the extension of the CDB length to 16 or 32 bytes, 8 bytes (64 bits) are provided for the LBA address.

Support in operating systems

Current operating systems (e.g. Microsoft Windows 7 , Linux , BSD ) do not require any additional adjustments to enable 48-bit LBA.

Situation with older operating systems

Problems can arise when using older Windows versions , as 48-bit LBA is not used by default up to version Windows XP (Service Pack 1) before . In the original version of Windows XP (without Service Pack) it must be activated manually. The same applies to Windows 2000: In addition to manual activation, at least Service Pack 3 is required here.

Microsoft does not provide 48-bit LBA support for Windows 98 and Windows Me , but various free or fee-based solutions have been developed by private individuals or companies (e.g. Intel Hard Disk Accelerator for mainboards with Intel chipset).

When using hard disks with more than 128 GiB on systems without 48-bit LBA support, there is a risk that a break will occur at the beginning of the disk and the master boot record and the first partition will be overwritten there, resulting in data loss Has.

With Windows 2000, as with the original version of Windows XP (without Service Pack), the key (of the type , to be found under ) must be activated in the Windows registry - either manually entered and set to 1, or by running a tool like that makes this entry. Windows versions from XP with Service Pack 1 ignore this key and always activate the support. EnableBigLbaREG_DWORDHKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Atapi\Parameters\EnableBigLba.exe

When installing Windows XP , the error message “Error loading operating system” may appear after the installation routine has copied the installation to the hard disk and before it restarts the computer before the actual installation process. This can occur when the BIOS has problems with 48-bit LBA.

Since Windows Server 2003 Service Pack 1 and Windows XP 64-Bit Edition , Microsoft also supports Long-LBA.

Web links

swell

  1. Enabling 48-bit LBA support for ATAPI drives in Windows XP , Microsoft Knowledge Base Entry KB303013.
  2. Error message "Error loading operating system" when restarting the computer during setup , Microsoft Knowledge Base entry KB326676.