Les deux premiers octets (00 00) indiquent un numéro d'inode 0, ce qui signifie que cette entrée est inutilisée. Les deux octets suivants (79 6F) correspondent aux caractères ASCII "yo".
Cette entrée était donc utilisée auparavant pour un fichier ou un répertoire appelé "yo". Lorsque l'entrée a été supprimée, le numéro d'inode a été mis à 0, mais le nom n'a pas été effacé.
</aside>
--
## Exemple d'inode - fichier répertoire
...
...
@@ -326,7 +382,7 @@ struct minix_inode {
<divstyle="font-size: 0.8em">
- Le nom `.` (0x2E) pointe sur l'inode 2 (lui même)
- Le nom `.` (0x2E2E) pointe sur le répertoire parent, l'inode 1 (la racine)
- Le nom `..` (0x2E2E) pointe sur le répertoire parent, l'inode 1 (la racine)
- Il y a 2 répertoires : `linux` (inode 0x36C) et `system` (inode 0x9)
- Il y a 2 fichiers : `hello.c` (inode 0xB) et `.bash_login` (inode 0xE)
- Il y a 4 `dir_entry` inutilisées (inodes à 0)
...
...
@@ -359,7 +415,7 @@ struct minix_inode {
## Exemple de bloc de données - contenu fichier régulier
Contenu du 1er bloc de données référencé par l'inode 11\
Contenu du 1er bloc de données référencé par l'inode 11 (0xB)
- bloc 583 (offset = 583*1024 = 0x91C00)
...
...
@@ -384,7 +440,7 @@ Contenu du 1er bloc de données référencé par l'inode 11\
## Exemple d'inode - fichier régulier
Contenu de l'inode 16
Contenu de l'inode 16 (0x10)
```c
structminix_inode{
...
...
@@ -407,7 +463,7 @@ struct minix_inode {
## Exemple de bloc de données - contenu fichier régulier
Contenu du bloc indirect référencé par l'inode 11\
Contenu du bloc indirect référencé par l'inode 16 (0x10)
- bloc 595 (offset = 595*1024 = 0x94C00)
...
...
@@ -437,9 +493,9 @@ Contenu du bloc indirect référencé par l'inode 11\
- Le nombre total d'inodes pouvant être créés dans le FS est indiqué par le champs `ninodes` du superbloc
- La table des inodes possède `ninodes` entrées
- Le premier inode de la table (à l'indice 0) est l'inode 1, il n'y a donc pas d'inode 0 !
-**Attention** : le bit 0 du bitmap indique l'état de l'inode 0 !
- le bit 0 est toujours à 1 (utilisé), bien que l'inode 0 n'existe pas
- un FS vide aura donc 2 bits à 1 dans le bitmap\ : le bit 0 (inode 0) et le bit 1 (inode 1 = répertoire racine)
-**Attention** :
- le bit 0 du bitmap indique l'"état" de l'inode 0 ! le bit 0 est toujours à 1 (utilisé), bien que l'inode 0 n'existe pas
- un FS vide aura donc 2 bits à 1 dans le bitmap: le bit 0 (inode 0) et le bit 1 (inode 1 = répertoire racine)
</div>
<br>
...
...
@@ -461,8 +517,9 @@ Contenu du bloc indirect référencé par l'inode 11\
- Les n° de blocs dans l'inode sont relatifs au début du FS
- Le bitmap des blocs de données indique uniquement l'état des **blocs de données** utilisés (donc pas superbloc, bitmaps, etc.)
-**Attention** : le bit 0 du bitmap des blocs de données est à **ignorer** !
- il est toujours à 1 et ne représente aucun bloc de données
-**Attention** :
- le bit 0 du bitmap des blocs de données est à **ignorer** !
- Il est toujours à 1 et ne représente aucun bloc de données
- le bit 1 du bitmap correspond au bloc `firstdatazone` indiqué dans le superbloc