summaryrefslogtreecommitdiffhomepage
path: root/docs
diff options
context:
space:
mode:
authorAmlal <amlal@nekernel.org>2025-05-04 09:09:49 +0200
committerAmlal <amlal@nekernel.org>2025-05-04 09:09:49 +0200
commita2df3cdb17330addd117938df71696ffbb2f1aae (patch)
tree3702f7beff450b0ce00e318e9eded9917ee2860a /docs
parent20a010bf4d36d6b9fc133a48a2f4a5922fe731e2 (diff)
feat(filesystem): Update HeFS implementation and specifications.
Signed-off-by: Amlal <amlal@nekernel.org>
Diffstat (limited to 'docs')
-rw-r--r--docs/tex/hefs.tex14
1 files changed, 7 insertions, 7 deletions
diff --git a/docs/tex/hefs.tex b/docs/tex/hefs.tex
index fe0d681b..5a9c5abf 100644
--- a/docs/tex/hefs.tex
+++ b/docs/tex/hefs.tex
@@ -87,7 +87,7 @@ The `HEFS\_INDEX\_NODE` represents a file and is constrained to 512 bytes to mat
\begin{lstlisting}[style=cstyle, caption={HEFS\_INDEX\_NODE (Fits 512B)}]
struct HEFS_INDEX_NODE {
- Utf8Char fName[256]; // Local file name
+ UInt64fHashPath; // Local file name
UInt32 fFlags;
UInt16 fKind;
UInt32 fSize;
@@ -98,8 +98,8 @@ struct HEFS_INDEX_NODE {
UInt32 fUID, fGID;
UInt32 fMode;
- UInt64 fBlock[16]; // Data block slices (start-only)
- Char fPad[69]; // Padding to reach 512B
+ UInt64 fSlices[16]; // Data block slices (start-only)
+ Char fPad[317]; // Padding to reach 512B
};
\end{lstlisting}
@@ -108,22 +108,22 @@ Directories form a red-black tree. Each node (IND) can hold up to 16 index node
\begin{lstlisting}[style=cstyle, caption={HEFS\_INDEX\_NODE\_DIRECTORY}]
struct HEFS_INDEX_NODE_DIRECTORY {
- UInt64 fHashName; // Directory name as hash
+ UInt64 fHashPath; // Directory name as hash
UInt32 fFlags;
UInt16 fKind;
UInt32 fEntryCount;
- UInt32 fChecksum, fIndexNodeChecksum;
+ UInt32 fChecksum;
ATime fCreated, fAccessed, fModified, fDeleted;
UInt32 fUID, fGID;
UInt32 fMode;
- UInt64 fIndexNode[16]; // Inode LBA references
+ UInt64 fINSlices[16]; // Inode LBA references
UInt8 fColor; // Red/Black tree color
Lba fNext, fPrev, fChild, fParent;
- Char fPad[281];
+ Char fPad[285];
};
\end{lstlisting}