summaryrefslogtreecommitdiff
path: root/kernel/cpu
AgeCommit message (Collapse)Author
2024-04-29Kernel/LibC: Remove unused syscallsAnton Kling
2024-04-29Kernel/IRC: Add setsockopt and move IRC client to use new socket interfaceAnton Kling
2024-04-29Kernel/Socket: Move sockets back to being file descriptorsAnton Kling
2024-04-26Kernel: Handle userspace memory errors instead of crashing.Anton Kling
The kernel should kill the process if it has memory issues.
2024-04-18LibC/Kernel: Move lseek/seek to kernelAnton Kling
2024-04-18Kernel: Fix compiler warningsAnton Kling
2024-04-17Kernel/LibC: Add fstat() and remove stat() syscallAnton Kling
2024-04-16Kernel: Improve "out of memory" error handlingAnton Kling
It can now boot with fairly low memory while not crashing and instead gracefully failing the operation. Userland still does not properly handle errors.
2024-04-15Bug fix and cleanup.Anton Kling
2024-04-11bug fixesAnton Kling
2024-04-02Kernel: Fix some memory leaksAnton Kling
2024-03-26Increase support for signalsAnton Kling
2024-03-25Random changesAnton Kling
2024-03-17stuffAnton Kling
2024-03-14random changes madeAnton Kling
2024-03-02Kernel: Fix incorrect hardcoded value.Anton Kling
It should be 20 as there are 5 addresses pushed onto the stack. Not hex 20 which is sligthly more and as a result caused random crashes.
2024-02-25IPC: Inform the scheduler the process is waiting for a IPC messageAnton Kling
2024-02-22Kernel: Fix undefined behavior and cleanup functions.Anton Kling
The int_syscall caused crashes for higher level of optimizations. To fix this I rewrote the function in assembly as I deemed it to be simpler.
2024-02-21Kernel: Remove all inline assembly.Anton Kling
Now the kernel does not rely upon inline assembly which is often very error prone. This also means that the kernel could probably be compiled with any c99 compiler which would help future bootstrapping.
2024-02-21New clang-format optionsAnton Kling
2024-02-17cleanupAnton Kling
2024-02-16General cleanupAnton Kling
2024-02-14Kernel: Update signal handling and IPCAnton Kling
2024-02-09Kernel/Interrupts: Restructure how interrupts are handeled in the kernelAnton Kling
Now all interrupts go through a common stub which will make certain signal handlers easier to implement
2024-02-07Remove sti and cli inline assemblyAnton Kling
2024-02-07A lot of small changesAnton Kling
2023-11-28Meta: Apply new clang-format rules to kernelAnton Kling
2023-11-28Kernel: Add basic IPC and move to microkernel design.Anton Kling
The IPC design is currently a WIP and is nowhere near complete
2023-11-24Refactor write() and pwrite()Anton Kling
2023-11-24Refactor open()Anton Kling
2023-11-23Kernel/LibC: Add randomfill() syscall.Anton Kling
This syscall aims to fill the given buffer with cryptographically secure random data. If the syscall returns and does not cause a page fault it will **always** have filled the buffer with random data and never gives back any error value.
2023-11-17Kernel: Add isatty syscallAnton Kling
2023-11-16Kernel: Change how syscalls are built and implemented.Anton Kling
2023-11-15VFS/LibC: Add getcwd()Anton Kling
2023-11-15Kernel/LibC: Add chdir function and syscallAnton Kling
2023-11-13Exceptions: Output CR2 on page faultAnton Kling
2023-11-10Kernel Style: Change uint*_t -> u*Anton Kling
2023-11-10Kernel/Memory: Fill new allocations with random data.Anton Kling
This should make it easier to spot uninitalized memory being used.
2023-11-10Syscall: Cleanup code and remove dumb usage of get_vfs_fd.Anton Kling
2023-10-31Meta: Move kernel and userland to their own folders.Anton Kling
This is to allow both the kernel and the userland to share certain header files and to make the folder structure a bit more clear.