banan-os/kernel/kernel
Bananymous dc2a455395 Kernel: Optimize processes' memory management
Memory regions are now stored in a sorted array. This allows O(nlogn)
lookup for address validation instead of the old linear lookup.

Now inserting new regions is also O(nlogn) instead of the old constant
time, but lookups are **much** more frequent
2025-11-17 05:26:07 +02:00
..
ACPI Kernel: Fix 32 bit target 2025-11-17 02:33:00 +02:00
Audio Kernel: Don't stop audio processing after each entry in AC97 2025-08-07 16:43:05 +03:00
Device Kernel: Implement proper memory region splitting 2025-11-13 04:20:53 +02:00
FS Kernel/LibC: Implement {recv,send}msg as syscalls 2025-11-10 01:40:33 +02:00
Input Kernel: Fix 32 bit target 2025-11-17 02:33:00 +02:00
Lock Kernel: Track the number of recursive spinlocks a thread is holding 2025-06-06 06:51:15 +03:00
Memory Kernel: Implement proper memory region splitting 2025-11-13 04:20:53 +02:00
Networking Kernel: Implement connect for UDP socket 2025-11-17 05:26:07 +02:00
Storage Kernel: Make F11 drop disk cache 2025-08-31 00:36:59 +03:00
Terminal Kernel: Fix termios and enter key handling 2025-08-19 16:23:30 +03:00
Timer LibC: Make time_t signed integer 2025-08-19 16:23:30 +03:00
USB Kernel: Fix USB FS device default max packet size 2025-08-10 19:57:31 +03:00
APIC.cpp Kernel: Fix IOAPIC max redirection entry fetching 2025-08-25 17:15:55 +03:00
BootInfo.cpp Kernel: Add support for multiboot 2025-08-05 03:09:24 +03:00
CPUID.cpp Kernel: Cleanup internal CPUID functions declarations 2025-01-14 22:57:44 +02:00
Credentials.cpp Kernel/LibC: Implement {get,set,init}groups 2025-08-10 19:57:31 +03:00
Debug.cpp Kernel: Show QR code with panic logs on kernel panic 2025-10-28 05:50:19 +02:00
ELF.cpp Kernel/LibC: Implement chroot 2025-08-11 14:07:37 +03:00
Epoll.cpp Kernel: Remove minimum timeout of 100 ms from epoll 2025-08-15 18:28:11 +03:00
Errors.cpp Kernel: Add support for ATA CHS addressing and cleanup code 2024-11-19 20:39:32 +02:00
GDT.cpp Kernel: Fix 32 bit target 2025-11-17 02:33:00 +02:00
IDT.cpp Kernel: Dump r8-r15 on x86_64 exceptions 2025-11-17 02:33:00 +02:00
InterruptController.cpp Kernel: Remove lai as a dependecy 2024-04-10 04:39:48 +03:00
Interruptable.cpp Kernel: Fix interrupt system 2024-09-27 15:31:31 +03:00
OpenFileDescriptorSet.cpp Kernel: Implement fd passing with SCM_RIGTHS 2025-11-12 00:06:36 +02:00
PCI.cpp Kernel: Implement basic AC97 driver 2025-07-15 14:17:49 +03:00
PIC.cpp Kernel: Start all processors on kernel boot 2024-03-03 02:19:43 +02:00
Panic.cpp BAN/Kernel: Rework assertion/panic system 2024-03-04 11:41:54 +02:00
Process.cpp Kernel: Optimize processes' memory management 2025-11-17 05:26:07 +02:00
Processor.cpp Kernel/LibC: Replace SYS_{GET,SET}_TLS with SYS_{SET,GET}_{FS,GS}BASE 2025-11-13 04:20:53 +02:00
Random.cpp Kernel: Clobber flags in `rdrand` 2025-07-18 19:36:37 +03:00
SSP.cpp All: Cleanup all files 2024-01-24 15:53:38 +02:00
Scheduler.cpp Kernel/LibC: Replace SYS_{GET,SET}_TLS with SYS_{SET,GET}_{FS,GS}BASE 2025-11-13 04:20:53 +02:00
Syscall.cpp Kernel/LibC: Implement {recv,send}msg as syscalls 2025-11-10 01:40:33 +02:00
Thread.cpp Kernel: Fix 32 bit target 2025-11-17 02:33:00 +02:00
ThreadBlocker.cpp Kernel: Rewrite ThreadBlocker 2025-07-02 00:17:42 +03:00
kernel.cpp Kernel: Look for PS/2 devices in the ACPI namespace 2025-08-15 17:02:15 +03:00