LBA lub adresowania bloków logicznych ( „zajęcie przez blok logiczny” w języku angielskim), jest historycznie sposób, aby rozwiązać te sektory o twardym . Ta metoda adresowania została następnie uogólniona na dużą liczbę nośników danych .
To adresowanie umożliwia wyznaczenie w unikalny sposób sektora dysku (najmniejszej możliwej do przesłania jednostki danych, w odczycie lub na piśmie, przez ten ostatni). Rozmiar sektora to najczęściej 512 bajtów , ale niektóre nośniki (w szczególności dyski optyczne lub optomagnetyczne w emulacji dysku twardego) używają innych wartości, takich jak 1024 bajtów lub 2048 bajtów.
BIOS starych komputerów osobistych pozwalają jedynie adres do CHS z dysków twardych . Do połowy 1994 roku największe sprzedane dyski twarde IDE miały pojemność ponad 2 GiB (chociaż Windows 95 obsługiwał tylko partycje FAT16 o wielkości 2 GiB lub mniej), podczas gdy większe dyski twarde SCSI oferowały pojemność rzędu 9 GiB . Adresowanie przez CHS stawało się zbyt restrykcyjne i musiało zostać zastąpione.
W tym czasie stosowano dwa fortele, aby umożliwić dostęp do maksymalnej pojemności dysków. Pierwszy z nich nosił nazwę ECHS (ang. Enhanced CHS w języku angielskim lub „Cylindre / Tête / Secteur better” w języku francuskim). Drugą sztuczką było całkowite ukrycie geometrii dysku przed programami, które go używają.
Adres CHS - chociaż ma fizyczną rzeczywistość dla dysku twardego - w rzeczywistości prawie nigdy nie jest użyteczny dla BIOS-u, systemu operacyjnego , ani nawet dla programów, które on uruchamia. Ponadto model adresu CHS jest odpowiedni tylko dla dysków twardych i dyskietek (nie dotyczy na przykład taśm magnetycznych lub kluczy USB ).
Standard SCSI jako pierwszy wprowadził użycie adresów LBA.
Adres LBA sektora danych to po prostu niepowtarzalna liczba pochodząca z zakresu [ 0 ... N [, gdzie N jest całkowitą liczbą sektorów na nośniku]. Ponieważ 0 to numer pierwszego sektora danych, to N - 1 jest numerem ostatniego (a nie N ).
Adres ten był jedyny dostępny w urządzeniach SCSI ( dyski twarde , urządzenia, taśmy magnetyczne , napęd CD-ROM , itp .). W ten sposób zamaskowana jest fizyczna geometria (liczba płyt, liczba cylindrów itp. ). BIOS zintegrowany z kontrolerów SCSI zatem obejmować algorytm konwersji pomiędzy adresami CHS stosowanych MS-DOS i Windows, płyt adresy i LBA (patrz konwersji LBA / CHS ).
Dwie wersje LBA istniały na dysku twardym IDE , pierwsza wersja wykorzystująca 28 bitów do kodowania adresu i zarządzania dyskami o pojemności 128 Gio to 137.438 953 GB, a druga później (w 2002 w standardzie ATA / ATAPI-6 ) wykorzystujący 48 bitów i pozwalający na zarządzanie dyskami o maksymalnej pojemności 128 Pio .
Istniało również kilka wersji adresu LBA dla SCSI, pierwsza (dostępna od momentu powstania SASI (in) w 1979 r. ) Wykorzystuje 21 bitów, druga (dostępna od 1987 r., Ale znormalizowana z SCSI -2 w 1994 r.) Wykorzystuje 32 bity, ostatnia (około 2000 ) używa 64 bitów i może zarządzać dyskami o pojemności do 8 388 608 Pio .
W przypadku dysku z głowicami NT na cylinder i sektorami NS na ścieżkę (patrz Cylinder / głowica / sektor w celu uzyskania dokładnej definicji tych wielkości) konwersja adresu LBA A na CHS jest uzyskiwana w następujący sposób (w tych wzorach symbol % reprezentuje operację modulo i ÷ dzielenie bez miejsc po przecinku lub reszty):
S = ( A % NS ) + 1 H = ( A - S + 1 ) / NS % NT C = ( A - S + 1 ) / NS ÷ NTlub stosując tylko dzielenia bez miejsc po przecinku:
C = A ÷ NT ÷ NS H = ( A - ( C × NT × NS ) ) ÷ NS S = 1 + A - ( C × NT × NS ) - H × NSostatnia linia logicznie odpowiada odwrotnej konwersji adresu C / H / S na LBA:
A = ( C × NT × NS ) + ( H × NS ) + S - 1