banan-os/kernel/include/kernel
Bananymous 39802b56c1 Kernel: Allow SYS_EXEC to fail at any point
This patch builds new executable image to another pml4 structure and
only after everything is validated will current context be replaced.
This allows exec to fail "late" where previously it would panic the
kernel or kill the process. This allows graceful handling of exec
failures in userspace!
2024-09-24 16:29:38 +03:00
..
ACPI Kernel: Fix ACPI name formatting functions 2024-09-14 19:39:13 +03:00
Device Kernel: Implement basic random device to /dev/random 2024-08-22 14:02:26 +03:00
FS Kernel: Fix TTY reading one keyevent after disabling input handling 2024-09-22 17:13:10 +03:00
Input Kernel: Add ps2=<scancode set> command line argument 2024-08-18 20:51:10 +03:00
Lock Kernel: Rewrite the whole scheduler and re-architecture SMP handling 2024-07-22 00:33:50 +03:00
Memory Kernel: Implement copy-on-write memory for file backed `mmap`s 2024-09-11 19:33:50 +03:00
Networking Kernel: Implement simple RTL8169 driver 2024-09-19 22:58:03 +03:00
Storage Kernel: Fix NVMe controller namespace numbering 2024-08-18 20:51:10 +03:00
Terminal Kernel: Fix TTY reading one keyevent after disabling input handling 2024-09-22 17:13:10 +03:00
Timer Kernel: Add asserts for overflow checks with ms -> ns conversions 2024-09-24 16:28:44 +03:00
USB Kernel: Rewrite the whole scheduler and re-architecture SMP handling 2024-07-22 00:33:50 +03:00
APIC.h Kernel: All processors use LAPIC timer when running with APIC 2024-07-23 02:28:52 +03:00
Arch.h Kernel: Replace i386 with i686 2024-03-26 02:48:26 +02:00
Attributes.h Kernel: add NEVER_INLINE and make Interruptable not constructable 2023-10-13 16:17:27 +03:00
BananBootloader.h Kernel: Add better support for bootloaders loading the kernel 2024-08-22 14:48:21 +03:00
BootInfo.h Kernel: Add better support for bootloaders loading the kernel 2024-08-22 14:48:21 +03:00
CPUID.h Kernel: Implement WriteCombining memory 2024-07-15 22:09:09 +03:00
Credentials.h Kernel: Implement supplementary groups 2024-01-02 23:24:32 +02:00
Debug.h Kernel: Move DEBUG_* macros to centralized Debug.h 2024-09-20 11:00:07 +03:00
ELF.h Kernel: Rework kernel-side ELF loading 2024-09-15 23:57:34 +03:00
Errors.h BAN: Make String and StringView header only 2024-05-23 15:43:26 +03:00
GDT.h All: Fix a lot of compiler warnings from header files 2024-06-18 23:02:10 +03:00
IDT.h Kernel: All processors use LAPIC timer when running with APIC 2024-07-23 02:28:52 +03:00
IO.h All: Cleanup all files 2024-01-24 15:53:38 +02:00
InterruptController.h Kernel: Implement API for sending IPIs for only one processor 2024-07-21 17:30:59 +03:00
InterruptStack.h Kernel: Rewrite the whole scheduler and re-architecture SMP handling 2024-07-22 00:33:50 +03:00
Interruptable.h All: Fix a lot of compiler warnings from header files 2024-06-18 23:02:10 +03:00
MMIO.h All: Cleanup all files 2024-01-24 15:53:38 +02:00
OpenFileDescriptorSet.h Kernel: Make sys_.*at use VFS relative path finding 2024-09-14 21:15:58 +03:00
PCI.h Kernel: Add command lineoption `nousb` that will disable usb controller 2024-08-16 22:09:24 +03:00
PIC.h Kernel: Force PCI irq line usage when not using APIC 2024-07-23 09:08:00 +03:00
Panic.h Kernel: Release debug lock if its locked during kernel panic 2024-09-18 00:56:02 +03:00
Process.h Kernel: Implement static Process::kill() 2024-09-24 13:16:43 +03:00
Processor.h Kernel: Make thread unblocking O(1) 2024-07-24 00:31:01 +03:00
ProcessorID.h Kernel: Make thread unblocking O(1) 2024-07-24 00:31:01 +03:00
RSDP.h Kernel: Parse RSDP from multiboot headers if exists 2024-01-26 00:49:42 +02:00
Random.h Kernel: Improve random number generation for unsigned types 2024-05-29 20:00:47 +03:00
Scheduler.h Kernel: Allow initial binding of threads to specific processor 2024-09-24 16:27:40 +03:00
Syscall.h LibC: Rewrite all the headers. 2023-05-26 22:31:21 +03:00
Thread.h Kernel: Allow SYS_EXEC to fail at any point 2024-09-24 16:29:38 +03:00
ThreadBlocker.h Kernel: Add asserts for overflow checks with ms -> ns conversions 2024-09-24 16:28:44 +03:00
kprint.h Kernel: Start work on making tty a file 2023-04-05 00:56:09 +03:00
multiboot2.h Kernel: Don't use multiboot2 explicitly. Parse it to common structure 2023-11-17 18:54:59 +02:00