Commit Graph

9 Commits

Author SHA1 Message Date
Karina 4e6794a6c2 chore: update copyrights 2026-01-31 01:57:28 +04:00
Karina e63983c95d full refactor in kernel/: now its apple-styled; im so fucking tired 2026-01-31 01:40:10 +04:00
Karina caf2d2b4a8 v0.5.3: syscalls, minilibc.
- fix(gs): was a nightmare. now its solved. Both MSR_GS_BASE and MSR_KERNEL_GS_BASE are now initialized to , preventing null GS_BASE when interrupt occurs during the first kernel task run
- chore(syscall.asm): stability improvements. User RSP is now saved via kernel stack instead of global g_cpu, preventing stack theft when task switch occurs during a syscall
- feat(interrupts): all irq and isr handlers now conditionally perform swapgs based on the CS selector (checkin if comfing from ring 3)
- upgrade(scheduler): big update: 1) added TASK_BLOCKED state from process sync; 2) syncronized PID and Task ID to fix wakeup logic; 3) implemented sched_block and sched_exit() for proper wait/exit syscalls
2026-01-30 07:12:57 +04:00
Karina 888bc5abdd v0.5.3-pre: refactor syscall handlers and introduce libterm
Moved handlers to syscalls/, implemented libterm (malloc, stdio)
2026-01-30 04:58:43 +04:00
Karina 55ea8fc533 feat(userspace): userspace support
build: updated CMakeLists to build and copy to initramfs

wip(syscalls): initial syscalls

chore(ksh/kfetch): minor changes

chore(gitignore): added initramfs/*
2026-01-29 21:25:45 +04:00
Karina 3525c81d9e fix(linker): _start is now always first in binary
feat(rand): real random using rdrand/xorshift

chore(panic): added 2 more fun_messages

feat(ksh): removed rectest and added rand command

wip(ksh/kfetch): now it shows vendor string instead of stub
2026-01-29 04:44:25 +04:00
Karina d01a91c993 feat: jumping to userspace (currently only in dbg command with infinit jmp to self loop 2026-01-29 01:10:14 +04:00
Karina 9a296e4045 ref: changed ifndef -> pragma 2025-12-30 21:28:29 +04:00
Karina 794dae7084 Refactor: Modular kernel structure & WIP keyboard driver
- Reorganized src/inc into arch, drivers, core, shell
- Updated CMakeLists.txt for multi-arch support
- Added basic scancode-to-ASCII mapping (US QWERTY)
- Initial KSH (Kernel Shell) skeleton
- WIP: Keyboard modifier handling
2025-12-27 22:10:24 +04:00