Logical block addressing: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Xqbot (discussione | contributi)
m r2.5.2) (Bot: Aggiungo: pt:Endereçamento de bloco lógico
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti.
 
(21 versioni intermedie di 18 utenti non mostrate)
Riga 1:
{{F|sistemi operativi|febbraio 2013}}
Il '''Logical block addressing''', abbreviato '''LBA''', è un sistema di accesso ai dati usato nei dischi fissi, introdotto per superare il limite dei {{tutto attaccato|504 [[Mebibyte|MiB]]}} (528 [[Megabyte|MB]]) del precedente sistema CHS (''[[cilindro-testatestina-settore|cylinder-head-sector]]'').
 
Brevemente, unUn [[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. È chiaro quindi che per identificare un settore, l'unità fisica di memorizzazione sul disco, sono necessarie le tre coordinate cilindro, testina e settore.
 
Il metodo LBA, introdotto con lo standard [[Advanced Technology Attachment|ATA-2]], esegue la numerazione dei settori partendo da 0 fino ad un massimo di <math>2^{28} - 1</math>, 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 (corrispondenti a tutte le superfici) 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 fisico, ovvero quello definito dalle tre coordinate, viene eseguita dal [[controller (informatica)|controllorecontroller]].
 
== Storia ==
Il primo [[IBM Personal Computer XT|PC XT IBM]] montava un disco [[Seagate Technology|Seagate]] da {{tutto attaccato|10 MiB}} con un controllorecontroller Xebec (inizialmente i controlloricontroller erano installati su una scheda a parte). Il disco aveva {{tutto attaccato|4 testine}}, {{tutto attaccato|360 cilindri}} e {{tutto attaccato|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.<ref> Architettura dei calcolatori: Un approccio strutturato - 4ª Edizione - A. Tanenbaum - Pearson Education [http://hpe.pearsoned.it/site/show.php?curr_sec=catalogo&sub_sec=cat_sk_libro&ISBN=8871922719] {{Webarchive|url=https://web.archive.org/web/20070415030603/http://hpe.pearsoned.it/site/show.php?curr_sec=catalogo&sub_sec=cat_sk_libro&ISBN=8871922719|data=15 aprile 2007}}</ref>
 
Il primo [[IBM Personal Computer XT|PC XT IBM]] montava un disco [[Seagate Technology|Seagate]] da {{tutto attaccato|10 MiB}} con un controllore Xebec (inizialmente i controllori erano installati su una scheda a parte). Il disco aveva {{tutto attaccato|4 testine}}, {{tutto attaccato|360 cilindri}} e {{tutto attaccato|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.<ref> Architettura dei calcolatori: Un approccio strutturato - 4ª Edizione - A. Tanenbaum - Pearson Education [http://hpe.pearsoned.it/site/show.php?curr_sec=catalogo&sub_sec=cat_sk_libro&ISBN=8871922719]</ref>
 
Col tempo la tecnologia è migliorata, passando alle unità [[Advanced Technology Attachment|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 [[retrocompatibilità]] dei processori [[Intel]] con tutti i modelli della famiglia [[Architettura x86|80x86]]).
Tale metodo però era intrinsecamente limitato dato che prevedeva l'uso di {{tutto attaccato|4 bit}} per specificare la testina, 6 per il settore e 10 per il cilindro. Con queste specifiche si potevano indirizzare massimo {{tutto attaccato|16 testine}}, {{tutto attaccato|63 settori}} e {{tutto attaccato|1024 cilindri}}: da notare che i settori non erano <math>2^6 = 64</math> perché, probabilmente per un errore del programmatore, mentre la numerazione delle testine e dei cilindri cominciava da 0, quella dei settori partiva da 1, riducendone di fatto la rappresentazione di un'unità.
 
Con tale specifica, mantenuta fino allo standard [[Advanced Technology Attachment|ATA]], si potevano indicizzare massimo {{tutto attaccato|1.032.192 settori}} che, per una dimensione tipica di {{tutto attaccato|512 byte}} ciascuno, portavano a massimo {{tutto attaccato|504 Mib}}. In seguito furono introdotte realizzazioni più avanzate di BIOS (note a volte come ''Enhanced BIOS'') che virtualizzavano la mappatura CHS, spesso generando più testine "virtuali" di quante ne possedesse realmente il disco, e che espandevano questo limite a {{tutto attaccato|255 testine}}. Questo significava che un volume [[MS-DOS]] poteva arrivare a {{tutto attaccato|7,897 [[Gibibyte|GiB]]}}.
 
Con l'introduzione del secondo standard ATA fu introdotto, tra le altre innovazioni, lo schema LBA che di fatto a ha aumentato di gran lunga la capacità di indirizzamento dei settori sui dischi rigidi a {{tutto attaccato|128 GiB}}, poi salito a {{tutto attaccato|128 [[Pebibit|Pib]]}} con l'aumento a {{tutto attaccato|48 bit}} per gli indirizzi nella standard ATA-6.
 
Lo schema LBA è utilizzato anche dall'interfaccia [[Serial ATA]], infatti nella documentazione o nelle caratteristiche tecniche di molti adattatori SATA su interfaccia [[Peripheral Component Interconnect|PCI]] si fa riferimento alla compatibilità del controller con i dischi di capacità superiore a 137 [[gigabyte]] (equivalenti a 128 GiB), grazie ad un LBA a 48 bit anziché a 24. Invece, alcuni dei primi adattatori SATA avevano un LBA a 24 bit, quindi non accettavano hard disk di capacità maggiore di 137 gigabyte.
 
Lo schema LBA a 48 bit pur essendo standard da molti sistemi a [[32 bit]] (come ad esempio [[Windows XP]]) non veniva utilizzato ma veniva usato uno schema ridotto a 32 bit dando problemi a dischi superiori a 2,2 terabyte (equivalenti a 2 TiB).
 
== Note ==
Riga 21 ⟶ 25:
 
== Voci correlate ==
 
* [[Disco rigido]]
 
{{Portale|Informaticainformatica}}
== Altri progetti ==
{{Portale|Informatica}}
 
[[Categoria:Teorie dell'informatica]]
 
[[ca:Logical Block Addressing]]
[[cs:Logical Block Addressing]]
[[de:Logical Block Addressing]]
[[en:Logical block addressing]]
[[es:Logical block addressing]]
[[fr:Logical block addressing]]
[[gl:LBA]]
[[he:Logical block addressing]]
[[ja:Logical Block Addressing]]
[[nl:Logical block addressing]]
[[pl:LBA (informatyka)]]
[[pt:Endereçamento de bloco lógico]]
[[ru:LBA]]
[[sv:Logical Block Addressing]]
[[zh:邏輯區塊位址]]