Commit Graph

187 Commits

Author SHA1 Message Date
2a0dddead3 Fix interrupts not working with -enable-kvm 2025-11-18 14:20:46 +01:00
edcdaa5c60 List PCI devices 2025-11-17 04:43:41 +01:00
77b5a4a153 Modularize interrupt handlers, split up scheduler and PIT interrupt handlers 2025-11-17 01:08:23 +01:00
f2b7c5da57 Avoid deadlock in proc_killself() 2025-11-17 00:52:25 +01:00
58a47edc79 Shorter ata driver and partition dev names 2025-11-16 00:08:31 +01:00
0a43ba36cd Reduce binary sizes for the kernel and userspace apps 2025-11-15 23:56:16 +01:00
bc53f9746e Fix mbus skipping other consumers in ipc_mbusconsume() 2025-11-15 01:46:46 +01:00
d7059ac4e3 Fix term_getsizes(), return proper char count 2025-11-15 01:46:17 +01:00
871c9cf439 Remove fbdev, add term_getsizes() syscall to get terminal width+height 2025-11-15 00:57:53 +01:00
ecee481b33 Reimplement the terminal user access via separate syscalls 2025-11-15 00:38:54 +01:00
3726cc49da New font 2025-11-15 00:26:55 +01:00
ef7a45e7cf Remove ps2kbdev dev functions in favour of MBus 2025-11-11 23:50:24 +01:00
c2364fbd48 Add MBus syscalls 2025-11-11 23:44:43 +01:00
4fe907a733 Clean up PS/2 keyboard driver, new IPC mechanism MBus (message bus) 2025-11-11 23:10:38 +01:00
07fc8a5562 Remove sched_ticks, move proc_reaper() out to proc_tick() function 2025-11-11 22:07:58 +01:00
5bd6ca0fa7 Remove extconf and KPRINTF_COLORS 2025-11-11 21:31:17 +01:00
7256fcd818 Prefix backtrace() with intr_ 2025-11-11 21:28:54 +01:00
51e89c8603 Remove atomic.h 2025-11-11 21:27:47 +01:00
566b35f4d5 Big code refactor, get rid of HAL entirely 2025-11-11 21:26:27 +01:00
7015bc9576 Decouple I/O from HAL 2025-11-11 19:59:01 +01:00
344952fb5f Move string functions/utils from HAL to std/string 2025-11-11 19:54:09 +01:00
f5dae4984d Rename base.img.6pack to base.img.6pk 2025-11-11 01:49:49 +01:00
91ecc2dc6a Break when IpcPipe is full 2025-11-11 00:51:29 +01:00
1f793f287f Clean up kernel/proc, remove devs_spinlock, remove PROC_DIE() macro 2025-11-11 00:32:09 +01:00
26e5d92947 Use hal_memcpy to propagate new proc interrupt frame 2025-11-10 20:25:55 +01:00
7e3b162591 Protect busy VfsObjs during opening and deleting 2025-11-10 20:23:03 +01:00
1f93e8db13 Reduce proc stack size to 1M 2025-11-10 18:48:47 +01:00
5c02d4d44a Fix distingishing kernel/user mode cpu exceptions 2025-11-10 18:35:46 +01:00
efaddb970a Remove useless path fiels in VfsObj 2025-11-10 18:19:17 +01:00
02d60129b1 Compress base.img using FastLZ library 2025-11-09 21:38:27 +01:00
e4a5c07b3d Change proc state under held spinlock 2025-11-08 21:40:15 +01:00
e0162e9e0b Add dev_delhandle() syscall to delete a device handle from process resources 2025-11-08 16:24:04 +01:00
2fa77d073f Only allow absolute paths 2025-11-06 21:58:24 +01:00
88ac5cf877 New syscalls vfsavailmounts() and vfsmountstat() to get info about current VFS mountpoints 2025-11-04 00:24:58 +01:00
9612e7961e No networking for now 2025-11-02 18:31:51 +01:00
0f93aa2a81 Implement schedsleep() syscall to sleep a process for a given time 2025-11-02 16:46:37 +01:00
179c4b98e2 Only one fb-terminal-based putchar_() 2025-11-02 14:16:10 +01:00
e52b33671b Fix very subtle spinlock race condition due to atomics misuse 2025-11-02 02:17:03 +01:00
9ccc6751e3 Use CS register to detect kernel code vs. user code in case of an exception 2025-11-02 00:46:31 +01:00
d947192475 Make socket port binding a separate step with ipc_netsockbindport() syscall 2025-10-29 22:33:41 +01:00
4417141216 Implement ipc_netsockdelete() syscall and automatic dangling socket cleanup 2025-10-29 21:21:35 +01:00
815c2239fe Porting PicoTCP WIP 2025-10-29 14:29:06 +01:00
6722f42e68 fix tiny leak 2025-10-26 17:38:39 +01:00
2b3b135160 fix unused stuff warnings 2025-10-25 23:26:32 +02:00
e8d8e5e9f9 Expose raw reads/writes to store devs via dev interface 2025-10-20 00:00:53 +02:00
01da863b8b Handle disk partitioning 2025-10-19 22:29:19 +02:00
68e0e8848d Clean up kernel/storedev/atasd.c, remove ata_probe1() 2025-10-19 15:48:51 +02:00
c3621a33dc Support up to 4 ATA drives (primary and secondary bus) 2025-10-19 15:46:56 +02:00
4452f1b196 Change naming scheme for atasd and ramsd 2025-10-18 22:16:01 +02:00
0e0bff4888 Use implicitly passed _caller_pid in syscalls 2025-10-18 12:20:43 +02:00