-
Notifications
You must be signed in to change notification settings - Fork 1
Zff logical file layout
Files under Zff are categorized into 5 different types:
- Files
- directories
- Symbolic links
- Hard links
- special files (unix special files)
Under Zff, all extracted metadata for the individual files is stored in the file header.
The metadata regarding the dump (process) of the respective file is stored in the file footer.
The actual file data is then located in chunks. How the user data is stored, can be taken from the Data section. The chunked data in the data section can also be encrypted, compressed, etc.
Name | Type | Length in bytes | description |
---|---|---|---|
Chunk header | Chunk header object | Variable | The chunk header for this symlink. |
filenumbers | Array/Vector of uint64 | Variable | An array which contains the appropriate filenumbers of all children of this directory. |
More than one chunk header <-> filenumber array combination may occur if there is a very large number of files in the directory, or a very small chunk size is chosen. After all, the data is simply chunked.
Name | Type | Length in bytes | description |
---|---|---|---|
Chunk header | Chunk header object | Variable | The chunk header for this symlink. |
data | Bytes | Variable | The chunked data itself. |
This file contains only the data of this file. The data are chunked.
Name | Type | Length in bytes | description |
---|---|---|---|
Chunk header | Chunk header object | Variable | The chunk header for this symlink. |
Path to linked file | String | Variable | The path to the file where this symlink links to. |
More than one chunk header <-> "Path to linked file" array combination may occur if there is a very large number of files in the directory, or a very small chunk size is chosen. After all, the data is simply chunked.
Name | Type | Length in bytes | description |
---|---|---|---|
Chunk header | Chunk header object | Variable | The chunk header for this hardlink. |
file number | uint64 | 8 | contains the file number to the file of the twin object |
Name | Type | Length in bytes | description |
---|---|---|---|
Chunk header | Chunk header object | Variable | The chunk header for this special file. |
rdev-id | uint64 | 8 | The device ID of the originally (special) file. |
special filetype flag | uint8 | 1 | 0 if fifo-, 1 if char-, 2 if it's a block-device and 3 if it is a socket. |
© 2021-2024 ph0llux | CC BY-SA 4.0