maksw
|
2c4a68a75f
|
add page cache with read-ahead and dirty writeback, file-backed and anonymous mmap with CoW, VAD-based virtual memory replacing the old user region model, PFN database with eviction and reclaim, file identity for cross-open section sharing, FAT32 path cache and per-file cluster chain cache, serial.sys for COM1 keyboard input, xHCI MSI with INTx and polled fallback, PciEnableMsiAuto, waitable input queue, KeWaitForAnyEvent, per-process thread info syscall, expanded kernel stats (PFN/PTE/VAD/file-cache/disk), pool allocation tags, async I/O user buffer locking, file flush on close, add docs.md.
|
2026-06-20 13:17:39 +02:00 |
|
maksw
|
467a58c9c6
|
rewrite comments into one, unified style
|
2026-06-15 10:17:48 +02:00 |
|
maksw
|
b838f8d83d
|
move keyboard and mouse out of HAL into a standalone ps2.sys driver, implement usb stack with xhci controller discovery, hid keyboard/mouse, and bulk-only mass storage, add pci msi support with capability chain walking and software irq vector allocation (slots 16-23), rewrite user virtual memory as a USER_VA_REGION descriptor arena with per-process ownership tracking and guard page support, replacing the old bump allocator and top-down image region, add MmCreateUserRegion/MmDestroyAllUserRegions so process teardown reclaims all user va in one pass, allocate a pool-backed shadow framebuffer in hal_screen to fix cursor tearing and scroll corruption, reserve ap trampoline page below 1mb in uefi bootloader before boot services exit, rewrite memset/memcpy/memmove/memcmp with __stosq/__movsq intrinsics, promote driver flag literals to macros and add multi-tu STANDALONE_DRIVERS table to build.c, split rtl8139/rtl816x into header+source, rename KbReadScancode to KbReadKey, improve page fault output with MmDebugDescribeAddress and user region dump, fix %p to %016llX throughout.
|
2026-06-02 00:01:20 +02:00 |
|
maksw
|
bfe2b55142
|
parallel compile, SMP, swapgs, cleanup, remove useless Reserved fields
|
2026-05-30 11:18:46 +02:00 |
|
maksw
|
6bff37746d
|
major restructuring, prepare for smp
|
2026-05-28 18:53:37 +02:00 |
|
maksw
|
b3569a2b90
|
better scheduler time allocation, proper quota tracking
|
2026-05-26 14:46:52 +02:00 |
|
maksw
|
e1248f4afe
|
refactor syscall ABI and FAT32 driver to use request structs and string views natively, enforce handle access rights on object lookup, add scheduler statistics tracking, fix KiSchedule to prevent 50% idle throttling on CPU-bound threads, better document x64 initial user stack alignment, fix process teardown to properly signal exit events and manage thread counts, optimize doom file I/O with a custom handle struct to internally track position and size, add SubsystemData to TEB for generic thread-local state, apply PAGE_NX to non-executable PE sections in the loader, update native apps, tests, and shells to match new APIs, update kernel32 directory retrieval.
|
2026-05-26 14:46:49 +02:00 |
|
maksw
|
db175ab20a
|
first PID is 0, separate idle to system
|
2026-05-20 22:42:52 +02:00 |
|
maksw
|
529f816166
|
implement proper IRQL, DPCs, kernel and user APCs, alertable waits, async file I/O with cancellation, trap frames, selftests, a real driver/device model, native async FAT32, VFAT dotfile fixes, syscall ABI cleanup, async_apc and async_cancel tests, POSIX multi-volume paths, and pimp the readme.
|
2026-05-19 20:56:15 +02:00 |
|
maksw
|
f5fd7bdd75
|
doom is now using the native api, add a PEB + TEB to replace the dummy and the awkward argument passing to processes, all allocations are zeroed because i had enough, small readme changes and dedication.
|
2026-05-18 21:30:07 +02:00 |
|
maksw
|
ddb5d5f5d8
|
save fpu state properly-ish, add a guard to doom_malloc_wrapper, fix QueryPerformance* and GetSystemTimeAsFileTime
|
2026-05-15 14:42:39 +02:00 |
|
maksw
|
b5c831f593
|
duct taped posix.dll (just like microsoft), new cursor, more info in the fault handlers, processes now have a parse-it-yourself cmdline, add SYS_WAIT_THREAD and SYS_GET_PROCESS_PID, writing still doesn't work
|
2026-05-05 15:24:58 +02:00 |
|
maksw
|
8c7564d5e1
|
add /IGNORE:4216 to HAL link step, add writing and directory listing to the FAT32 driver, add the concept of current working directory to the VFS, add writing to the VFS, more operations in the shell, rename KeCurrentThread to KeGetCurrentThread and add KeGetCurrentProcess, add STATUS_NO_MORE_FILES, change KeFault* to KePanic, add syscalls for writing to files, add a proper syscall to writing to the console, move Screen.Clear to after memory status debug print, add ObjectTypeDir to OBJECT_TYPE, extend kernel32 by file operations and upgrade user32 (and add gdi32) to match windows a bit more closely, change CreateProcessA to accept the first argument as NULL.
|
2026-05-04 16:27:49 +02:00 |
|
maksw
|
83d48e09bb
|
remove weird double spaces, remove /EXPORT from build.bat in favor of __declspec(dllexport)
|
2026-05-03 19:54:51 +02:00 |
|
maksw
|
9fa2a7e0db
|
colonel.exe 🤑, refactor all include directives, AHCI is now interrupt driven, upgrades to IDE, implemented I/O Request Packets, fix numerous keyboard issues, change all for (;;) and while (1) to while (true), DbgPrint guarded by spinlock, fix KeSignalEvent, major KernelMain refactor, added SystemInitThread because of new blocking I/O, replace memcpy manouvers with strncpy and strncat, add: run for ide, runa for ahci, rund for debug and ide, runad for debug and ahci.
|
2026-05-03 19:35:48 +02:00 |
|
maksw
|
7f4052f41c
|
fix the return value of LdrLoadImage, make use of __declspec(dllexport), speed up blitting, add dummy TEB, redesign the syscall interface, fix stack alignent so movaps doesn't crash, implement a shitload of win32, implement a simple shell, add bink as video.exe 😎, minor kmain.c cleanup, HAL now supports power-off events, implemented \b in hal_screen.c, fix many deadlocks, add wait for exit event for processes, completely new error codes, small readme changes.
|
2026-05-03 13:43:29 +02:00 |
|
maksw
|
129be91e15
|
fix a few bugs in scheduling and synchronization, separate OVMF_VARS for debug
|
2026-05-02 11:34:30 +02:00 |
|
maksw
|
0e1479b168
|
i think it works
|
2026-04-30 23:52:46 +02:00 |
|