Logical block addressing

sistema di accesso ai dati usato nei dischi fissi

Il Logical block addressing è un sistema di accesso ai dati usato nei dischi fissi EIDE, introdotto per superare il limite dei 528 megabyte del precedente sistema CHS.

Brevemente, un disco rigido è costituito da piatti paralleli scritti su ambedue le superfici: ad ogni superficie corrisponde una testina. Ogni piatto è inoltre suddiviso in tracce concentriche, raggruppate per distanza dall'asse in cilindri, e divise in settori circolari. E' chiaro quindi che per identificare un settore, l'unità fisica di memorizzazione sul disco, sono necessarie le tre coordinate cilindor, testina e settore.

Il metodo LBA introdotto con la tecnologia EIDE esegue la numerazione dei settori partendo da 0 fino ad un massimo di , assegnando il valore 0 al primo settore della prima traccia del primo cilindro, procedendo poi lungo tutti i settori della stessa traccia, poi lungo tutte le tracce dello stesso cilindro per poi spostarsi al cilindro adiacente, continuando così fino all'ultimo settore dell'ultima traccia dell'ultimo cilindro. La conversione da indirizzo logico a indirizzo fisco, ovvero quello definito dalle tre coordinate, viene eseguita dal controllore.

Storia

Il primo PC XT IBM montava un disco Seagate da 10 MB con un controllore Xebec (inizialmente i controllori erano installati su una scheda a parte). Il disco aveva 4 testine, 360 cilindri e 17 settori per traccia. Per scrivere e leggere sul disco il sistema operativo chiamava il BIOS, il quale si occupava a sua volta di scrivere sui registri del controllore per avviare i trasferimenti.

Col tempo la tecnologia è migliorata, passando alle unità IDE, ma le procedure di chiamate al BIOS non vennero modificate per mantenere una compatibilità con i dispositivi precedenti (questa è una scelta molto frequente nell'informatica, si pensi alla compatibilità dei processori Intel con tutti i modelli della famiglia 80x86).