summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/KernelKit
AgeCommit message (Collapse)Author
2025-07-21fix: KPC: Fix duplicate of kErrorNetworkTimeout.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-21feat: NeKernel Semaphore API.Amlal El Mahrouss
includes: - New semaphore API for the kernel, we also make use of the HardwareTimer class here. - Defined header only for now. - New HAL HW Timer API in AMD64. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-19feat: wip: new tree kind 'kSpecial' and refactor user scheduler code ↵Amlal El Mahrouss
temporary regarding FileTree allocation. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-19feat: CoreProcessScheduler has now a 'kSpecial' type for trees. (Because of ↵Amlal El Mahrouss
SwapKit, or devices) reworked LibMSG lisp function pointer type. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-10refactor: use `rt_debug_cmd` instead of `rt_debug_type`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-09feat: KID, UPS improvements, and future refactors regarding theAmlal El Mahrouss
FileTree system inside the UPS. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-09refactor! `CoreProcessScheduler` now uses `kFile` instead of `kFD`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-08refactor: comments cleanup, breaking change! updated TLS magic from ZKAAmlal El Mahrouss
to NKO. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-08refactor: Refactor NeKernel's TLS API.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-07refactor: FileMgr: remove useless macros.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-07fix: FileMgr: use `sz` when `Reading` blob inside file.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-06feat: set `fFile` to nullptr when freeing it.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-06fix: CoreProcessScheduler.h: Correct `kTreeKindCount` enum value to three.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-05feat: add magic check in `fsck.hefs`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-07-05feat: Document `SpawnDylib`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-30feat: Introducing `FileTree` allocation and WiP DebugSrv integration.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-25fix: PEF format fixes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-18PEF format update `5.0` and codebase refactors.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-18feat: Fix `ProcessLevelRing` enum value `kRingCount`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-11feat: `___chkstk_ms` has been implemented for AMD64 HAL.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-10fix: UserProcessScheduler security patches.Amlal El Mahrouss
These patches are regarding: - Thread safety (exit code global has been removed.) - Code quality, in `SpawnDylib` - In memory allocation checks too. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-06feat: kernel: Start enforcing `User`s validation when issuing OS calls.Amlal El Mahrouss
refactor: PE: remove BaseOfData, as we are only relying on PE32+ now. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-04meta: Ran `./format.sh`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-03feat: TLS: Improved its implementation, and add a user field for additional ↵Amlal El Mahrouss
checks. refactor: Reworked `open_msg`'s messaging system. refactor: Rename `Utils.cc` to `AsciiUtils.cc` Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-06-03feat: Last changes before `0.0.3`Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-30refactor: Format codebase and fix warning in UserProcessScheduler.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-30refactor: Refactor IDeviceObject to DeviceInterface and its usages.Amlal El Mahrouss
refactor: Cleanup UPS (UserProcessScheduler) implementation. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-29feat: UserProcessScheduler: reset UTime when exiting.Amlal El Mahrouss
feat: drawio: Rename OS_DESIGN to SYSTEM_DESIGN. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-29feat: Improve libSystem's architecture and implementation.Amlal El Mahrouss
fix: Fix NeKit's Ref, and ErrorOr classes. fix: Fix userland tools. next: - Finish the latest tickets and then release nekernel 0.0.3 Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-27feat: generic_kits: Add X64Chrono inside BenchKit.Amlal El Mahrouss
refactor: libSystem: Refactored as a whole. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-27feat: Assign ThreadID to APIC's ProcessID when initialzing APs.Amlal El Mahrouss
refactor: Cleanup copyright headers and source code. feat: Add PrinterNetworkDevice, and DBGNetworkDevice. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-27refactor: rename mm_make_ptr_flags to mm_set_ptr_flags.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-26feat!: Add IFS layer within DriveMgr, and IFS API.Amlal El Mahrouss
also: - Use ThreadID in AP system. - Refactor kernel according to new IFS layer. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-25kernel!: lots of changes, see commit details.Amlal El Mahrouss
refactor(hal): unify file naming and drop redundant architecture suffixes feat(build): rename kernel and bootloader to 'ne_kernel' and 'ne_bootz' refactor(memory): replace mm_get_phys_address with mm_get_page_addr feat(bitmap): track bitmap allocator usage and add out-of-memory error fix(heap): correct heap magic naming and alignment logic chore(fs): downgrade HeFS disk size check to warning chore(tools): clean up formatting in 'ping' and 'manual' docs(design): update OS_DESIGN.drawio to reflect Hypr86 and new layout Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-24feat(ZXD): Update file format.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-24feat(kernel): Better syscall routing, also added new tools.Amlal El Mahrouss
what: - ping, manual have been added. - Rework RtlCurrentPID to SchedGetCurrentProcessID. - Cleanup codebase overall. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-23feat(kernel/libSystem): Lots of improvements, see below.Amlal El Mahrouss
what: - Reworked NetworkDevice. - Reworked RTL8139 driver. - Don't assert fCleanup on NetworkDevice destructor. - Add new Ref types in libSystem. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-23refactor(kernel): Refactor HeapMgr functions.Amlal El Mahrouss
what: - mm_new_ptr is now mm_alloc_ptr. - mm_delete_ptr is now mm_free_ptr. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-23feat!(Kernel): Improvements on the BitMapMgr, HTS, and UPS.Amlal El Mahrouss
other: - Add ZXD header file. - Reworking AMD64 interrupts. - Improved HTS's design implementation. - Improved UPS's balancing implementation. breaking changes: - Rename MemoryMgr to HeapMgr. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-23feat!(kernel): Rename NewKit to NeKit.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-21feat(kernel): Architectural changes, and introducing a kKernelVM.Amlal El Mahrouss
see code for more details. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-21feat(kernel): source code improvements.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-19feat(kernel, sched): Architectural improvements, and cleaned upAmlal El Mahrouss
the codebase from previous implementations that didn't work/scale well. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-18feat(sched_desgin): better architecture for the HTS.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-18dev(sched): Improvements and work in progress fixes.Amlal El Mahrouss
what? - The main algorithm got improved for real time tasks, and SMP usage. - The SMP usage was present before, I just reintroduced it after realizing that it won't scale well from what I have right now. - Also removed weird implementations quirks from previous sketch. - Such as the core 0 being reserved for the boot core. - Also moved FS init code after IDT initalization. - To avoid weird FS format behavior. - Wrap HPET signature in a macro. next? - Work on the HAL's userspace transition mechanism. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-18feat(kernel{sched/hal}): int 3 if something is wrong in `sched_jump_to_task`Amlal El Mahrouss
why: - After the image's entry is done, and no exit is called. also: - Added sched_idle_task to CPS's API. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-17feat(kernel): don't schedule process when it's under signals such as:Amlal El Mahrouss
ABRT, KILL, TRAP. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-16feat(kernel): User doesn't store the password directly anymore, it is hashedAmlal El Mahrouss
under a 64-bit FNV algorithm. why? - Better security, so that we're sure that no one else knows about the password. also: - Rename super to MGMT (Management), as it manages a NeKernel machine. - Added a copy of cxxdrv in the nekernel source tree. - Working on the custom manual parser for NeKernel. (PoC) Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-15feat(kernel/sched): fixes and improvements on the scheduler'sAmlal El Mahrouss
implementation. why? - The previous one wasn't entierly correct on some parts. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-15feat(kernel): Finalizing the first version of the user scheduler.Amlal El Mahrouss
other: - Removed DmaPool into its own Kit. - ApplicationProcessor unit has been cleaned up. - Rename functions of MemoryMgr. - Use KIB instead of MIBs of stack. - Cleanup parts of the scheduler, and hw scheduler. - Use UD handler for INT 6. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>