| Age | Commit message (Collapse) | Author |
|
method on FSParser class.
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
implementation.
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
notice:
- parent_dir_fmt has to be formated to take care of subdirs.
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
writing an IND. (HeFS)
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
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>
|
|
why?
the struct were way too big to fit wihin a sector.
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
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>
|
|
allocation tree fix.
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
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>
|
|
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>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
Signed-off-by: Amlal <amlal@nekernel.org>
|
|
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>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
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>
|
|
- 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>
|
|
- ran format command.
- a variation of a red-black tree traversal, with customized
fallback mechanism.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
- 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>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
details:
- A checksum shall be made available for checking data
integrity.
- User API shall be used to keep track of user permissions.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
- HeFS requires a 4gb disk at minimum now.
- make_app fully supports STEPS.
- Errata of NeFS.tex, add HeFS.tex.
- Better boot flow.
- New filesystems for FileMgr.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
kernel fetching
- Added BootNet module to support network boot using EFI_SIMPLE_NETWORK_PROTOCOL
- Replaced ModuleMain with BootloaderMain as unified entry point
- Implemented EFI protocol discovery, startup, and logging for netboot
- Updated linker scripts, GDB configs, and build targets accordingly
- Laid groundwork for full HTTP/TCP/IP bootloader logic
- Improved kernel handoff logic and memory allocation fallback handling
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
OS_DESIGN.drawio
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Renamed `fDriveKind` to `fProtocol` across kernel storage subsystems
to clarify its purpose as a protocol identifier (e.g., "AHCI", "ATA-")
rather than a general "kind" classification.
Updated all affected header and source files:
- DriveMgr, HeFS, AHCI, ATADeviceInterface, and NeFS now consistently
reference `fProtocol()` instead of `fDriveKind()`.
- Added streaming operators (`<<`, `>>`) to AHCI and ATA device
interfaces for improved mountpoint interaction.
- Promoted `GetPortsImplemented()` and `SetPortsImplemented()` to
public for AHCI device configuration.
- Added null checks and protocol verification logic in stream operators.
This refactor improves clarity and consistency when working with
storage devices across the kernel.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
mbci: reintroduce NeKernel's MBCI.
cfkit: rename: CFKit -> CF
libuser: rename ErrKind to ErrRef.
coregfx: fix last unconsistent things about the module.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
sched: Fix redundancy in NeKernel's user scheduler macros, refactored
the other files using the redundant macros too.
part one of a series of commit for NeKernel.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
- Renamed __BOOTLDR_STANDALONE__ → __BOOTZ_STANDALONE__ across all modules.
- Introduced NetBoot module to support fallback booting via packets.
- Updated amd64-desktop build to bundle netboot.sys as part of system image.
- NetBoot now properly zeroes out its header and performs sanity check on PatchLength.
- Boot flow now attempts to fallback to NetBoot if neoskrnl.exe fails to start.
- Reorganized disk formatting logic for clarity and better failure recovery.
- HeFS & NeFS minimum disk size lowered (64GiB → 256MiB and 4GiB → 8MiB).
- Renamed `IndexProperty` to `Index` in FSKit::Indexer.
- Moved HintKit → hint/, updated includes and guards.
- Removed deprecated LPC.{cc,h}, replaced by ProcessCodes.h.
- Modernized SystemCalls.h typedefs: SCIObject → Ref, ThreadObject → ThreadRef, etc.
- Updated userland tools `make_app` and `open` with copyright and behavior fixes.
This prepares the BootZ infrastructure for headless/network environments.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
refactor: rename SCIKit -> user (then libuser.dylib)
boot/modules/netboot: fixed compilation for amd64.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
|
|
Removing useless parts of the project too.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
|