Problemi con i sistemi operativi di casa Microsoft? Questa è la sezione che fa per te!
da Ices_Eyes » mar ott 17, 2006 5:19 pm
Diego166 ha scritto:Vorrei sapere delle informazioni relative al master boot record chaimato anche MBR,ovvero la parte che comprende i primi settori di avvio del disco rigido..quel che so che l mbr occupa 512 byte e in questi sono inclusi i primi settori di avvio (quanti non so)...
Nel MBR è inclusa la tabella delle partizioni o tabella di allocazione file che se dico giusto costituisce l'indice relativo alla posizione di memoria x ogni file memorizzato sul disco fisso...
Sinceramente tutte queste informazioni teoriche non mi hanno fatto capire molto...
Cosa cè effettivamente dentro quei 512 byte? sono cosi pochi..potrebbero contenere massimo 512 caratteri alfanumerici..
ma che tipo di informazioni binarie ci possano essere non lo so...
Cosa è di pratica il bootsector?
Facciamo una cosa alla volta... :P
Allora...Il master boot record non contiene la tabella di allocazione dei file, ma solamente la tabella delle partizioni primarie. La tabella di allocazione dei file cresce al crescere della dimensione del disco, in 512 byte.....avresti dischi piccolini
Ora...dico delle partizioni primarie perché esistono partizioni primarie e secondarie: un mbr può contenere fino 4 puntatori a partizioni. Queste sono dette primarie. Poi esstono le partizioni secondarie, che stanno all'interno diuna particolare partizione primaria detta partizione estesa, e che, anzichè essere riferite dall'MBR, sono collegate tra loro come in una lista.
Come è compoto un MBR: come hai detto tu sono 512 byte, posti nel cilindro 0, testina 0, settore 1 di un disco. Questi sono divisi in 448 byte di codice, che permette l'avvio della macchina (a cui il bios passa il comando) e il 64 byte per la tabella delle partizioni, divisa in 4 record da 16byte l'uno; da qui il limite di sole 4 partizioni primarie. Una di queste viene marcata con un flag che la denota come avviabile.
Il bootsector invece è un altra cosa: è il codice presente all'inizio di una partizione, e che permette di avviarla.
In pratica all'accensione di un pc succede questo:
il bios esegue i propri test, e passa il controllo poi al codice presente nel MBR. Questo esegue i sui 448byte di codice e controlla quale della partizioni primarie è avviabile. Trovata questa partizione passa il controllo al suo bootsector, che lancia il sistema operativo.
Quanta roba hai chiesto... :P
I cluster...La dimensione dei cluster dipende dalla dimensione del disco e dal filesystem scelto. Ad esempio FAT16 utilizza una dimensione di cluster non superiore a 32768byte, con indirizzi di 16 bit l'uno. Questo significa che non può essere utilizzato per dischi superiori ai 2GB. Se il disco era più piccolo, allora era possibile diminuire la dimensione del cluster.
Quando tu scrivi su disco il file viene diviso in tante parti di dimensione del cluster. Ora se il file non ha dimensione multipla del cluster, allora uno o più pezzi del file andranno in cluster che rimarranno per una certa parte vuoti. Questa viene chiamata frammentazione interna, e quelle parti vuote sono "perse". Dall'altra parte però, facendo cluster troppo piccoli, si ha una frammentazione esterna, ossia più blocchi del file che sono scritti in giro per tutto il disco, con conseguente lavoro extra per le testina...
Ora mi fermo, se qualcosa non ti è chiaro, o hai altre domande fai pure, ma prima devo riprendermi da questo papiro...
-
Ices_Eyes
- Membro Ufficiale (Gold)
-
- Messaggi: 5543
- Iscritto il: ven ott 24, 2003 10:37 am
- Località: Prov. di Venezia
-
da Ices_Eyes » mer ott 18, 2006 5:17 am
Uhm....
Mi sembra di ridare l'esame di Laboratorio di amministrazione di sistema...
Allora: iniziamo dal principio... Un settore fisco di un disco contiene 512 byte ed è la più piccola unità di memorizzazione presente in un disco rigido... Prendiamo ad esempio un filesystem Fat16 (per NTFS il discorso è diverso). Un fat 16 utilizza inidirizzi di 16 bit appunto. Questo significa che può inidirizzare all'interno del disco fino a 2^16 = 65535 "oggetti" all'interno del disco. Questi settori sono però solitamente troppo piccoli per essere gestiti, perché, a blocchi di 512 byte con un massino di 65535 blocchi, avresti un disco di dimensioni massime di 32MB...Allora cosa si è fatto: questi blocchi fisici vengono raggruppati in oggetti più grandi, che sono i cluster (ossia raggruppamenti di due o più settori fisici di un disco).
Ora le operazioni che puoi fare sono semplici: hai la dimnsione del disco x, hai la dimensione degli indirizzi del filesystem, 16 o 32 bit a seconda che sia una fat16 o una fat32, le dimensioni dei cluster te le ricavi da te facendo una divisione.
Un cluster però non è una unità indissolubile. Se ad esempio hai un file di dimesione 6K, e sul disco hai cluster di dimensione 4kb l'uno, allora la dimensione reale occupata da quel file sul tuo disco sarà 4+4KB = 8 KB, perché in un cluster non ci sta, quindi ne dovrà utilizzare 2.
Per quanto riguarda NTFS la cosa è diversa. Le informazioni sui file non sono più contenute in una tabella scritta all'inizio della partizione ed allocata al momento della formattazione, ma sono scritte in particolari file detti metadata. Utilizza indirizzi a 64 bit per inidirizzare i cluster all'interno del disco, e questo porta le dimensioni dei dischi ad essere in pratica qualsaisi. Uno di questi metadati, chiamato master file table, è praticamente come la tabella di allocazione della fat, e mappa tuti i file e le directory resenti nel disco, compresi i metadati stessi.
Anche qui la dimensione del cluster varia, a seconda del disco, ma se prima avevi un massimo di 65535 oggetti indirizzabili dalla fat 16, ora ne hai 2^64 = 18446744073709551616, che, anche con cluster di 512 byte ti porterebbero ad un disco di dimensioni di 512*18446744073709551616 = 8.79e^+12GB....
-
Ices_Eyes
- Membro Ufficiale (Gold)
-
- Messaggi: 5543
- Iscritto il: ven ott 24, 2003 10:37 am
- Località: Prov. di Venezia
-
da Ices_Eyes » mer ott 18, 2006 4:43 pm
Diego166 ha scritto:Piacerebbe anche a me avere un ruolo tipo il tuo...sono posti d'oro...io adesso come adesso vendo pc dentro Mediaworld fai un po te...
No, ma minca insegno... Sono un semplice studente universitario, l'esame l'ho dato 2 anni fa
Diego166 ha scritto:Mi sono perso..quale è l'operazione da eseguire? nel mio caso..ho un disco da80 gb che windows vede solo 76.3gb (dimensione disco logico) dichiarato da lui in risorse di sistema, file sistem a 64bit (dimensione indirizzi del file sistem) devo sapere quanti cluster ho per poterti dire la dimensione di ognuno...manca quindi un dato?
Xò vorrei avere si una partizione formattata con cluster da512bytes l'uno e quindi ogni cluster un settore fisico...
Ti copio un pezzo di un articolo della knledge base Microsoft:
Microsoft http://support.microsoft.com/kb/314878/it ha scritto:Nella tabella che segue sono illustrati i valori predefiniti utilizzati in Windows XP per la formattazione NTFS. Dimensione unità
- Codice: Seleziona tutto
(volume logico) Dimensione cluster Settori
----------------------------------------------------------------------
512 MB o inferiore 512 byte 1
513 MB - 1.024 MB (1 GB) 1.024 byte (1 KB) 2
1.025 MB - 2.048 MB (2 GB) 2.048 byte (2 KB) 4
2.049 MB e superiore 4.096 byte (4 KB) 8
La dimensione massima predefinita per il cluster in Windows XP è di 4 kilobyte (KB) in quanto non è consentita la compressione file NTFS su unità con una dimensione di allocazione superiore. L'utilità Format non utilizza mai cluster superiori a 4 KB a meno che non venga esplicitamente specificato di ignorare la dimensione predefinita utilizzando il parametro /A: per la formattazione dalla riga di comando oppure non venga specificata una dimensione di cluster superiore nella finestra di dialogo Formatta in Gestione disco.
Se si utilizza l'utilità Convert per convertire un volume da FAT a NTFS, viene utilizzata sempre una dimensione di cluster di 512 byte. Le strutture FAT sono allineate ai limiti di 512 byte; dimensioni di cluster superiori non consentono la conversione. In Microsoft Windows NT 4.0 e versioni precedenti, quando una partizione viene formattata durante l'installazione di Windows, viene dapprima formattata come FAT e successivamente convertita in NTFS. Pertanto la dimensione di cluster sarà sempre di 512 byte quando una partizione viene formattata nel corso dell'installazione. (Questa informazione non si applica all'installazione di Microsoft Windows 2000 o di Windows XP, dove la partizione viene formattata in base al file system selezionato.)
Mentre per fat il limite della dimensione dei cluster era dettato dal fatto che più di tanti "oggetti" il file system non poteva linkaare, per NTFS il discorso cambia...
Ogni file viene memorizzato in più cluster, se eccede la loro dimensioni. Questi cluster non sono contigui, per cui la testina, per leggere sequenzialmente un file, si sposta di qua e di là... Quindi, più piccoli sono i settori, più, in media, gli spostamenti della testina sono tanti per file grandi, e dubito tu abbia molti file inferiori a 4Kb nel tuo hard disk tali da far aumentaree notevolmente la frammentazione interna
Da qui a scelta di 4Kb come dimensione standard... Poi è vero, se ne poteva scegliere magari una maggiore, ma come scritto da microsoft si ha un problema con ntfs che non permette più l'uso della compressione file, e quindi di una delle funzionalità del file system stesso, che comunque poò o meno essere utilizzata...
-
Ices_Eyes
- Membro Ufficiale (Gold)
-
- Messaggi: 5543
- Iscritto il: ven ott 24, 2003 10:37 am
- Località: Prov. di Venezia
-
Torna a Sistema Operativo
Chi c’è in linea
Visitano il forum: Nessuno e 49 ospiti