summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/FS/HeFS.cc
AgeCommit message (Collapse)Author
2025-05-03kernel: HeFS: breaking changes — major refactor of Index Node Directory layoutAmlal
Why: - Enables efficient allocation of nested paths like '/boot/pagefile.sys' without pre-creating parent paths manually. - Reduces disk space waste by avoiding placeholder or stub directories. - Faster and cleaner: avoids expensive Utf8Char* traversal and comparison at runtime. - Prepares the filesystem for structural hashing and future journaling. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-02kernel: HeFS: disk security improvements and new CreateFile and DeleteFile ↵0.0.2Amlal
method on FSParser class. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-02kernel, FS: Mostly patches regarding NeFS's formating and disk write ↵Amlal
implementation. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-02kernel: tex: Update spec docs.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-02kernel, fskit: HeFS: Worked on IND allocation and added removal support.Amlal
notice: - parent_dir_fmt has to be formated to take care of subdirs. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel:ifs:HeFS: The IFS is now able to write IND into disk correctly.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel: HeFS: did progress on IND allocation.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01tooling, fs: Improve tooling and clean up HeFS filesystem code.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01dev, kernel: HeFS spec and tooling, and PEF spec updates.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel: keep track of cr3 in AMD HAL/HEL.Amlal
why? To keep track of it, avoid security issues in the future. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel(HeFS): IFS traversal fixes.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel, FS/HeFS: saving changes on HeFS IFS.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-30kernel: filesystem+vmem: don't be verbose on the allocator when we don't ↵Amlal
need it. details: - Reworked HeFS traversal algorithm, fixing last parts of HeFS regarding IND allocation. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-29dev(kernel, HeFS): reworking filesystem to find an hybrid solution regarding ↵Amlal
memory footprint (unstable changes) Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-29kernel, fs: Fixing and optimizing filesystem allocator.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-29kernel: Figuring out the EPM header bug; where it gets duplicated when ↵Amlal
writing an IND. (HeFS) Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28kernel: getting that filesystem to work as intended.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: Fixed HeFS directory allocation routine.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: HeFS improvements and tweaks.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-28dev, kernel: HeFS, Tooling: reworked the mkfs.hefs tool for the new filesystem.Amlal
other/related: - Add new KPC codes. - Final refactors for HeFS's Format method. - Dma pool improvements. - Better standard disk I/O names. - Add mm_memory_fence function inside HalPagingMgrAMD64.cc Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: HeFS had to be redesigned to be less problematic with hard-drives.Amlal
why? the struct were way too big to fit wihin a sector. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: AHCI, HeFS filesystem, SysChk, and BootSATA improvements.Amlal
what? - AHCI now writes to disk, forgot to do it. - Codebase's architecutre has been used to reuse the Generic+AHCI driver in SysChk for AHCI. (tradeoff is 256K in size instead of 36K) - DriveMgr now detects EPM. - And HeFS is still being worked on. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: AHCI support and HeFS improvements, alongside scheduler ↵Amlal
allocation tree fix. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev, kernel: HeFS and disk related work and improvements.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-27dev: fixes and improvements, codebase formating too.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-26dev, kernel, tooling: add HeFS tooling and early allocation stategy.Amlal
why? - we need to format it externally too. - a in-kernel format doesn't handle every case. - and i have to fix the createdir, createfile methods for correct inode dir linking. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-26dev, kernel and user: codebase additions and work in progress 'tactical pause'Amlal
why? - HeFS's Formating needs some thought before being layed out, that's the kind of thing that bites hard in the ass. - Alongside those changes I improved parts of the kernel too. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-26kernel, hefs: fixing issues with rb-tree, regarding the traversal of inds.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-26dev, kernel: add kernel on when the traversal hits 0 (it should never happen)Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-26dev, kernel: saving work in progress code regarding scheduler and filesystem.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev: fix readme clone link.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev, kernel: improve nefs format method, hefs format method.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev: better .clang-format, ran format command.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, kernel: early user_heap_tree rework of the scheduler's heap system.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, kernel, boot: HeFS, Scheduler, BootZ: see below.Amlal El Mahrouss
Refactored HeFS node handling and API for extensibility, added directory metadata, improved wildcard querying, and updated documentation accordingly. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-24dev, kernel: HeFS patches and starting to implement filesystem.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: Milestone towards 0.0.2, see details.Amlal El Mahrouss
Details: - Added support for 512 process teams (kTeams array). - New SwitchTeam() API in UserProcessScheduler. - Kernel main loop rotates active team every 200ms. - Renamed syscall tables for clarity (kSyscalls → kSysCalls, etc.). - Replaced kKernelMaxSystemCalls with kMaxDispatchCallCount. - Updated call sites to match new naming. - Bumped format version to 0x0101. - Added reserved fields to HEFS_BOOT_NODE for future use. - Changed inode indexing logic to operate on (start, size) pairs. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22fs, HeFS: additional patches regarding tree traversal.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22kernel, {fs,sched}: User RT scheduler fixes and HeFS advancements regarding ↵Amlal El Mahrouss
the B-Tree. - RT Scheduler fixed. - B-Tree improved. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: VEPM WiP implementation, and syschk fixes in WiP.Amlal El Mahrouss
- Currently working on VEPM and adapting it to SysChk. - Refactor DriveMgr for VEPM. - Fix warnings in HeFS.cc, ALIGN(8) on HeFS.h - Update PIO modules to use VEPM. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-21dev, kernel: Made HeFS use a RB-Tree traversal algorithm.Amlal El Mahrouss
- ran format command. - a variation of a red-black tree traversal, with customized fallback mechanism. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-21dev, kernel, tools, tooling, tex: add mk_app tool, see details.Amlal El Mahrouss
- Patch HeFS implementation file, working on a allocation function now. - Generated LaTeX specs from source code. - Add mk.{hefs, nefs} tools for future formatting (with diutil first) - Add python tool to generate user apps for NeKernel. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-20kernel, dev: python script to make an ESP from files.Amlal El Mahrouss
- Started implementing the wrt_* APIs (Wide string functions) - Make user.sys link now, need to implement more syscalls. - Tiny HEFS refactors too. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-20fs, kernel(HeFS): Implement `hefs_get_index_node` for tree traversal.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-31meta/repository: fix capitalization on my name 'El' instead of 'EL'.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-29ddk: refactor: reorganize kit into a standard kernel kit.Amlal El Mahrouss
sched: refactor: refactor scheduler file names, for future additions. xcoff: refactor: document and improve XCOFF for NeFS (regarding Ne's FW) codemgr: refactor: make a difference between kernel and user processes. refactor: document project overall. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-03-24kernel(feat): Add basic wide system bug check (memory check), otherAmlal El Mahrouss
changes have been made too, see commit details for more information. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
2025-03-23meta(kernel): Reworked repository's filesystem structure.Amlal El Mahrouss
Removing useless parts of the project too. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>