No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
Le format de fichier AFS permet de packer un ensemble de fichier dans un seul et unique fichier. Il n'y a pas de compression. Tous les éléments (fichiers, et blocks système de l'afs) sont alignés sur des blocks de 0x800 octets. En dehors des fichiers, l'afs est en little endian. | Le format de fichier AFS permet de packer un ensemble de fichier dans un seul et unique fichier. Il n'y a pas de compression. Tous les éléments (fichiers, et blocks système de l'afs) sont alignés sur des blocks de 0x800 octets. En dehors des fichiers, l'afs est en little endian. | ||
Un AFS se compose de 4 parties : | Un AFS se compose de '''4 parties''' : | ||
# Le header | # '''Le header''' | ||
# La Table Of Content (TOC) : | #* 4 octets : magic number = "AFS\x00" | ||
#* 4 octets : nombre total de fichiers | |||
# '''La Table Of Content''' (TOC) : | |||
## | #* un tableau avec pour chaque fichier : | ||
## | #** 4 octets : offset fichier | ||
## | #** 4 octets : taille fichier | ||
# La partie qui contient l'ensemble des fichiers | #* A la suite de ce tableau, 3 cas sont alors possibles : | ||
# Le Filename Directory qui se constitue, pour chaque fichier, de : | ## on trouve l'offset de le filename directory (4 octets) et sa taille (4 octets) | ||
## on trouve un padding (NULL bytes) puis l'offset du filename directory (4 octets) et sa taille (4 octets) | |||
## on a tout simplement pas de filename directory (ni offset ni taille) | |||
# La partie qui contient '''l'ensemble des fichiers''' | |||
# '''Le Filename Directory''' qui se constitue, pour chaque fichier, de : | |||
#* 32 octets : Le nom du fichier paddé avec des NULL bytes | |||
#* 2 octets : année | |||
#* 2 octets : mois | |||
#* 2 octets : jour | |||
#* 2 octets : heure | |||
#* 2 octets : minute | |||
#* 2 octets : seconde | |||
#* 4 octets : La taille du fichier |
Revision as of 15:12, 15 January 2022
Le format de fichier AFS permet de packer un ensemble de fichier dans un seul et unique fichier. Il n'y a pas de compression. Tous les éléments (fichiers, et blocks système de l'afs) sont alignés sur des blocks de 0x800 octets. En dehors des fichiers, l'afs est en little endian.
Un AFS se compose de 4 parties :
- Le header
- 4 octets : magic number = "AFS\x00"
- 4 octets : nombre total de fichiers
- La Table Of Content (TOC) :
- un tableau avec pour chaque fichier :
- 4 octets : offset fichier
- 4 octets : taille fichier
- A la suite de ce tableau, 3 cas sont alors possibles :
- on trouve l'offset de le filename directory (4 octets) et sa taille (4 octets)
- on trouve un padding (NULL bytes) puis l'offset du filename directory (4 octets) et sa taille (4 octets)
- on a tout simplement pas de filename directory (ni offset ni taille)
- un tableau avec pour chaque fichier :
- La partie qui contient l'ensemble des fichiers
- Le Filename Directory qui se constitue, pour chaque fichier, de :
- 32 octets : Le nom du fichier paddé avec des NULL bytes
- 2 octets : année
- 2 octets : mois
- 2 octets : jour
- 2 octets : heure
- 2 octets : minute
- 2 octets : seconde
- 4 octets : La taille du fichier