Dove sono memorizzati i nomi dei file su un filesystem?
Non è inode o con il contenuto del file effettivo poiché abbiamo un collegamento reale che due nomi di file possono puntare allo stesso inode.
.
in se stesso.
Dove sono memorizzati i nomi dei file su un filesystem?
Non è inode o con il contenuto del file effettivo poiché abbiamo un collegamento reale che due nomi di file possono puntare allo stesso inode.
.
in se stesso.
Risposte:
Non ho trovato un duplicato adatto, quindi ecco una risposta alla tua domanda.
estratto
Nomi dei file e implicazioni sulla directory:
- gli inode non contengono nomi di file, ma solo altri metadati di file.
- Le directory Unix sono elenchi di strutture associative, ognuna delle quali contiene un nome file e un numero di inode.
- Il driver del file system deve cercare una directory alla ricerca di un determinato nome file e quindi convertire il nome file nel numero di inode corrispondente corretto.
Fonte: pagina Wikipedia su Inode
Quindi il nome del file è memorizzato nella struttura delle informazioni delle directory. Per esempio:
estratto
Nel file system EXT2, le directory sono file speciali utilizzati per creare e conservare percorsi di accesso ai file nel file system. La Figura 9.3 mostra il layout di una voce della directory in memoria.
Un file di directory è un elenco di voci di directory, ognuna contenente le seguenti informazioni:
- inode : l'inode per questa voce della directory. Questo è un indice nella matrice di inode contenuta nella tabella Inode del gruppo di blocchi. Nella figura 9.3, la voce della directory per il file chiamato file ha un riferimento al numero di inode i1,
- nome lunghezza - La lunghezza di questa voce della directory in byte,
- name - Il nome di questa voce della directory.
Le prime due voci per ogni directory sono sempre lo standard
.
e le..
voci che significano rispettivamente "questa directory" e "la directory principale".
Ecco i riferimenti della Figura 9.3 sopra:
Fonte: The Linux Documentation Project: Filesystem
Il nome del file è memorizzato nella rispettiva directory ("file di directory"). Questa voce punta a un inode.
Il nome file è memorizzato nella struttura dati "directory" che ha "(stringa) nome file" e il corrispondente "(int) inode". la directory è responsabile della mappatura del nome file -> inode. e in ode è responsabile della mappatura dell'inode -> settore su disco.