da andy » dom gen 22, 2012 7:55 pm
Ti posto una risposta ricevuta oggi: per me è arabo ma forse a qualcuno potrebbe servire.
"Non vorrei dire una eresia, prendi questa risposta con molta calma. Nell'MBR a cui fa riferimento ci sono 64B che descrive la MBT di tutte le partizioni primarie e logiche (quindi dimensioni e posizioni fisiche, o CHS e flag avviabile). La tabella delle partizioni estese si trova invece "all'inizio" (primo settore) delle partizioni logiche, nell'EBR. Nell'EBR si specifica anche quante di quelle partizioni logiche fanno parte della estesa,, mediante un sistema di puntatori a partizioni logiche successive (in pratica l'EBR di una partizione logica che fa parte di una estesa descrive la partizione logica e un puntatore alla partizione logica successiva che fa parte della estesa)
Per chiarire meglio, l'MBR è fatto così
[0000] MBP (Master Boot Program) = 440 bytes
[01B8] Firma del produttore del disco = 2 bytes
[01BC] Nullo = 2 bytes
[01BE] MBT (Master boot table) = 64 bytes
[01FE] Magic number dell'MBR (55AAh) = (2 bytes)
in totale:
440+4+2+64+2=512 bytes
Una entry della MBT è di 16 bytes (16x4= 64 bytes) per questo possono esistere solo quattro partizioni sul disco avviabili. Ogni entry è così:
[00] - 1 bytes - status (avviabile=0x80; non_avviabile=0x00;invalida=altro_valore)
[01] - 3 bytes - Indirizzo CHS del 1° settore della partizione (suddiviso in 7bit head, 5bit sector, 2+7bit cilinder -> = 3bytes)
[04] - 1 bytes - tipo di partizione (NTFS=0x07, Partizioni_Linux=0x83)
[05] - 3 bytes - indirizzo CHS dell'ultimo settore nella partizione
[08] - 4 bytes - Indice LBA(X =4byte) del primo settore della partizione (è un indirizzamento simile a CHS, si può ottenere uno dall'altro con un paio di semplici operazioni)
[12] - 4 bytes - Numero di settori nella partizione, necessario per LBA
Nell'EBR, che di struttura è uguale all'MBR, ma non nei dati contenuti, troviamo invece:
[0000] Nullo = 440 bytes
[01B8] Nullo = 2 bytes
[01BC] Nullo = 2 bytes
[01BE] Tabella delle partizioni logiche che fanno parte della estesa, possono essere 2 voci da 16 bytes, la terza e la quarta e sempre nulle, sono uguali alle entry della MBT =(16+16) bytes + 32 bytes di zeros = 64 bytes
[01FE] Magic number dell'EBR(55AAh) = 2 bytes
In realtà la tabella l'EBR varia in funzione del programma che l'ha creata... Infatti i tool forniti (sia quelli ms-dos, che windows che Linux - per l'ultimo si usa la lattera maiuscola, per gli altri no) non istanziano la dimensione LBA della partizione (valore che fa da puntatore all'EBR della partizione successiva) aspettandosi invece solamente di incrementare questo valore di +1 in fase di avvio.
IPOTESI
Questo particolare potrebbe essere la causa del warning. Il sistema di partizionamento sa che un ridimensionamento come è stato fatto potrebbe portare ad un mancato indirizzamento diretto all'EBR della partizione logica successiva, ma credo che i sistemi, comunque, "cerchino" nel disco la partizione, essendoci altri riferimenti a lei, ma che questa ricerca porti alle gravi inefficienze avvisate.
Ma, ripeto, prendiamo tutto quello che ho scritto con le molle...."
Con MegaLab non si finisce mai di imparare!!