summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/KernelKit
AgeCommit message (Collapse)Author
2025-05-14feat(kernel): Filesystem fixes, and others.Amlal El Mahrouss
what? - Add simple generic RTL8139 NIC driver, to be used within a NK device. - Update IVT accordingly. - Comment ARM's AP GIC init function, to tell what it's actually doing. - Cleanup Kernel Main, removed the useless pre_init_scheduler function. - Prepare new FileMgr with HeFileSystemMgr. - Fallback to NeFS when trying to format a fileysstem. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-14feat(kernel): Set SubSystem according to TASK/PROCESS structure.Amlal El Mahrouss
also: - Introduce the KernelTaskScheduler soon. - Reintroduce ZXD binaries for signed drivers. - Made the arguments name inside kernel spawn function inside CodeMgr clearer. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-13feat(kernel): expand KDBG packet structure, and prefix hexadecimalAmlal El Mahrouss
numbers with 0x100, instead of 100h. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-13feat(kernel): see below for the commit's details.Amlal El Mahrouss
what? - UserProcessScheduler and CoreProcessScheduler have been extended for FILE_TREE and also HEAP_TREE structures. - DDK device's API will use dk_ calls instead of sk_ calls. - SIGTRAP and Interrupt handlers have been fixed to handle when no process is being run, and the kernel is instead raising the interrupt. - Add file for HeFS formating in DiskImage.fwrk - Replace generic handler with breakpoint handler in int 3. why? - These changes are bug fixes and improvements. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-12feat: sched, tooling: improving and laying foundations for the futureAmlal El Mahrouss
milestones and objectives, such as: driver loading (ifs.sys, ddk.sys, user.sys), and better tooling for application development. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-11feat(kernel/hefs): Fixed the shortcomings and issues of HeFS.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-05-08meta(kernel): saving changes to avoid loss.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-04meta(format.sh): format codebase.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-04feat(kernel): update core scheduler enums.Amlal
why? - to avoid clashes with other values in memory. why? (regarding previous commit on HeFS) - faster lookups and the name being not shown clearly on disk is a plus. Signed-off-by: Amlal <amlal@nekernel.org>
2025-05-01kernel: mmap the blob to VMAddress in PEFCodeMgr, alongside other fixes ↵Amlal
regarding memory leaks. 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, sched: worked on a pending ticket (process rebalancing)Amlal
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: 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-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: refactor and improve parts of the kernel, related to I/OAmlal
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 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-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, kernel: improve nefs format method, hefs format method.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev: compiler error fixes.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-25dev, kernel: debug protocol tweaks.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-25dev, kernel: fix kDebugTypeLen, made it inline to avoid linker errors.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, kernel: scheduler: fully implement traversal and cleanup.Amlal
Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, kernel: scheduler and heap related work.Amlal
- Replacing USER_HEAP_LIST with HEAP_HEAP_TREE. - Reworked Signal struct. - Add Team spinner inside ARM64 HAL too. Signed-off-by: Amlal <amlal@nekernel.org>
2025-04-24dev, kernel: scheduler, timer: hw timer and scheduler improvements.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-24dev, tooling: Improve the tools and frameworks on userspace.Amlal El Mahrouss
Details: - See commit details for more. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-24dev, kernel: Update Status to kKilled, and not kFinished whenAmlal El Mahrouss
constructing process. 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-23dev, kernel: necessary refactors regarding future changes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-23dev, kernel, boot: disk i/o and scheduler warning fixes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-23dev, kernel: scheduler and disk swap refactors.Amlal El Mahrouss
Details: - Reworked SCSI groundwork to prepare for a Generic SCSI driver. - Refatored scheduler's code with the new coding style for structs. - Add Leak and LeakBlob inside PROCESS_IMAGE struct. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, kernel: WiP changes done to kernel and SysChk module.Amlal El Mahrouss
- Getting SysChk to work again. - Refactor scheduler. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-22dev, boot: fix bootloader link error caused by `kTeams`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-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-19dev, sched: last commit before 0.0.1.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-18kernel, boot: improvements and tweaks on the kernel's filesystems.Amlal El Mahrouss
- 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>
2025-04-17dev, kernel: Finish recovering files.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-17kernel, boot: recovering lost changes because of some git issue.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-15fix, kernel, boot, mod: Fixing issues regarding the boot flow and theAmlal El Mahrouss
kernel. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-14bootloader, netboot: integrate EFI_SIMPLE_NETWORK_PROTOCOL for HTTP-based ↵Amlal El Mahrouss
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>
2025-04-13dev, scheduler, ahci, dev: Refactor scheduler, and fix minor mistakes.Amlal El Mahrouss
Add kDeviceTypeATA in DeviceMgr.h, making NeKernel aware that ATA devices can exist too. The scheduler now won't have to reimplement new classes, I refactor the names to signal that, and they're already generic enough to signal that. The AHCI-Generic driver got cleaned up of any irrelevant code, such as aligning the newly allocated pointer. Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-11big commit, for pedantic CI.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-11tweak kernel, boot: use -Wall, -Werror, -Wpedantic now.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-10dev, meta: minor tweaks and improvements.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08pci, Device.h: remove unused function prototypes.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
2025-04-08pci, Device.h: use sizeof UInt32 instead of relying on a number.Amlal El Mahrouss
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>