2011-12-16 26 views
16

Qual è il significato della dimensione del blocco del file system? Se la mia dimensione del blocco del Filesystem è impostata su 8K significa che tutto l'I/O di lettura/scrittura avverrà alla dimensione 8K? Quindi se la mia applicazione vuole leggere diciamo 16 byte all'offset 4097 allora verrà letto un blocco 4K a partire dall'offset 4096?Dimensione blocco file system

Come funzionano le scritture in questo caso? Supponiamo che voglio scrivere dire 64 byte.

risposta

0

Normalmente quando devi trattare con i file in programmazione devi usare l'astrazione Stream. Le operazioni di I/O tramite codice vengono spesso lette e scritte sui flussi; leggere e scrivere da e verso i flussi, può essere memorizzato in modo da poter leggere o scrivere blocchi di file.

La dimensione del blocco su fs si riferisce alla mappatura della superficie del disco; minore la dimensione del singolo blocco maggiore il numero di blocchi (e quindi gli elementi nella tabella che mantiene le informazioni sull'allocazione dei file).

Così i SO possono quindi mappare i file su disco in modo discreto in base alle dimensioni del blocco e avere una "mappa dei file" più piccola. Come so che questo non influisce sull'astrazione del flusso nelle API del linguaggio di programmazione.

+0

La mia domanda era più capire come funzionano i file system e come interagiscono con il dispositivo a blocchi. Qual è il significato della dimensione del blocco in quel contesto. – user880946

+0

http://en.wikipedia.org/wiki/File_system#Space_management. Cluster di dischi (gruppi di settori) e i blocchi di cui stiamo parlando si riferiscono allo stesso concetto. –

16

Hai ragione. La dimensione del blocco è l'unità di lavoro per il file system. Ogni lettura e scrittura viene eseguita in multipli completi della dimensione del blocco.

La dimensione del blocco è anche la dimensione più piccola sul disco che può avere un file. Se si dispone di una dimensione di blocco di 16 byte, un file con una dimensione di 16 byte occupa un blocco completo sul disco.

Il libro "Practical file system design" stati:

Block: La più piccola unità scrivibile da un disco o un sistema fi le. Tutto ciò che un sistema di file fa è composto da operazioni eseguite su blocchi. Un blocco file system ha sempre la stessa dimensione o maggiore (in multipli interi) della dimensione del blocco disco .