Cerco (in qualche modo) migliori spiegazioni sul supporto di dischi rigidi> 2 TB


9

Oggi, mentre cercavo su Google, mi sono imbattuto in post che sostenevano che Seagate avrebbe pianificato di spedire un disco da 3 TB qualche volta più tardi nel 2010. Sfortunatamente, le cose che ho guardato sembravano contenere un po 'di informazioni che non pensavo fossero adatte. (Vorrei collegarmi ad alcuni esempi, ma al momento sono autorizzato solo 1 link per post).

Ora non ho davvero "bisogno" di capire meglio i noiosi dettagli sottostanti di questo. Sono solo curioso. E confuso.

Quindi ... alcune domande spero che qualcuno sia meglio informato di quanto potrei rispondere.

  1. Il discorso su un potenziale problema di indirizzamento sia nell'hardware che nel software mi ha confuso. L'affermazione è che qualcosa chiamato "qualcosa chiamato" Long LBA addressing (LLBA)è necessario Command Descriptor Blockcome modo per aggirare i limiti attuali per accedere a un disco rigido più grande di 2 TB (1 TB = 2⁴⁰ B).

    Ok bene. Ma ho pensato che l'ultima volta che questo problema è stato risolto estendendo la lunghezza del campo LBA da 28 a 48 bit. (Ricorda questo sito Web? Www.48bitlba.com ) Un LBA a 6 byte è chiaramente abbastanza grande, quindi cosa succede con questo discorso LLBA. Pensavo che tutto fosse risolto da Win XP SP2, se non prima? E certamente tutto l'hardware dovrebbe essere all'altezza del compito, non è vero?

  2. Il vero problema, come ho capito, con unità molto più grandi di 2 TB sono i campi LBA a 4 byte nel Master Boot Record (MBR) usato per partizionare quasi tutti i dischi rigidi al momento. La soluzione più probabile è migrare alla GUID Partition Table (GPT) di Intel. Un GPT utilizza campi a 8 byte per l'LBA.

    Quello che non capisco in questo contesto è qual è il problema con l'avvio dire Windows da un'unità da 3 TB che utilizza un GPT. Certo, l'attuale BIOS del PC non saprebbe riconoscere o lavorare con un GPT. Ma ogni GPT viene fornito con un cosiddetto MBR "Sicurezza" o "Protezione" nel settore 0.

    Apple utilizza già una versione ibrida dell'MBR per consentire l'avvio di Windows sui propri Mac Intel (aka Boot Camp). Non si potrebbe fare qualcosa di simile per consentire al BIOS del PC di riconoscere e avviare da una partizione all'interno, per esempio, dei primi 2 TB di un'unità da 3 TB o più grande?

Ho più domande come dove si inseriscono i settori 4K in tutto questo. Ma probabilmente è ora che taci e lo abbia pubblicato. ;-)

-irrazionale john

Risposte:


6

Le dichiarazioni su "Long LBA" sembrano provenire da quell'unico product manager Seagate. Ciò che probabilmente intendeva dire è che anche se LBA a 48 bit è lo standard sull'hardware, i sistemi operativi e i driver a 32 bit potrebbero non supportare tutti i 48 bit, poiché (a) sono a 32 bit e questo è più fastidioso, e (b) MBR supporta comunque solo 32 bit per le partizioni, quindi perché preoccuparsi.

Quando la barriera da 128 GB è stata rotta adottando l'LBA a 48 bit, quello era entrambi dal lato hardware, nella specifica ATA, passando da 28 bit; e anche dal lato OS / driver, per assicurarsi che non codificassero quel vecchio limite a 28 bit. Probabilmente puoi dire che gli attuali driver ben scritti sono effettivamente conformi al limite effettivo di 48 bit, ma è facile vedere come da qualche parte lungo la catena, qualcuno ha preso la via d'uscita semplice e supporta solo 32 bit nei suoi driver a 32 bit. Dato che i sistemi operativi a 32 bit sono in uscita comunque, potrebbe non valere la pena provare a assicurarsi che tutto funzioni.

Come hai detto, il vero problema (almeno per Windows) è l'avvio di un disco GPT da un computer basato su BIOS (non EFI). Il MBR protettivo è progettato per far sembrare l'intero disco come una singola partizione sconosciuta, in modo che un computer sensibile al BIOS / MBR non lo tocchi nemmeno. È possibile creare un disco ibrido, in modo che l'MBR contenga anche altre voci, per le partizioni al di sotto della barriera da 2 TB. Ma tali dischi ibridi sono fragili (facili da bloccare con strumenti di partizione MBR o GPT) e non sono più ufficialmente dischi GPT. Inoltre non stai avviando alcuna partizione GPT, stai avviando partizioni MBR. Potrebbe essere OK se si desidera utilizzare solo la partizione GPT come unità dati.

E perché BIOS non può avviare GPT? La risposta breve è che non hanno, e per aggiungere quella funzionalità, avresti bisogno di un BIOS più intelligente. Ed è a questo che serve EFI.

I settori 4KB ti darebbero dischi da 16 TB con LBA a 32 bit. (E un numero minore di settori più grandi significa potenzialmente un minore sovraccarico di I / O.) Ma tutti i sistemi operativi, i driver e persino alcune app dovrebbero essere scritti per supportare settori di dimensioni variabili. Tutto ciò di cui hai bisogno è un posto in cui la dimensione del settore è hard-codificata a 512 per infrangere. Quindi anche i settori 4KB non sono una soluzione "facile" perché richiederebbero molto lavoro da molte parti. Ma se hai intenzione di scrivere software futuro per supportare GPT (che è agnostico di dimensioni settoriali) e settori di dimensioni variabili, potrebbe essere adottato come pratica comune ad un certo punto.


3

È certamente possibile eseguire l' avvio da un disco GPT su una macchina BIOS. Solo che Windows afferma di non poterlo fare.

Anche questo non è proprio vero; puoi avviare Windows da un computer BIOS su un disco GPT: hai solo bisogno di un minuscolo disco MBR aggiuntivo per contenere i file di avvio. Un disco rigido utilizzato per altri sistemi operativi con una partizione (piccola) di riserva, floppy, unità USB (presupposto) ...

Avviare nel disco di installazione / riparazione di Windows. Crea l'unità di sistema sullo stick e usa bcdbootper mettere i tuoi file di avvio sullo stick. Aggiungi uno stivale con bootsect. Cambia {bootmgr} devicein boot. Avvio da stick.

I passaggi sono dettagliati qui .


0

Quello che non capisco in questo contesto è qual è il problema con l'avvio dire Windows da un'unità da 3 TB che utilizza un GPT.

Su un sistema BIOS tradizionale, il BIOS carica il settore di avvio dal disco e lo esegue in modalità reale a 16 bit. Il codice caricato dal settore di avvio deve quindi trovare e caricare il sistema operativo corretto.

MS non ha mai implementato il supporto GPT nel proprio caricatore in modalità reale. Quindi non può leggere la tabella delle partizioni GPT e avviare il resto del sistema operativo. Quindi per avviare Windows da un disco GPT devi usare uEFI invece del BIOS tradizionale (il che va bene se la tua scheda madre lo supporta e la tua versione di Windows è abbastanza nuova) o usare una qualche soluzione alternativa come un caricatore di terze parti, un tipo di partizione ibrida o un disco separato per l'avvio.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.