Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-03-28 | new stuff | Anton Kling | |
2024-03-26 | Kernel: Improve kmalloc security and performance | Anton Kling | |
Fill new and freed allocations with random data unless it is allocated from kcalloc in which case it should be zero filled. | |||
2024-03-26 | Increase support for signals | Anton Kling | |
2024-03-25 | Random changes | Anton Kling | |
2024-03-25 | WindowServer: Add focus, minimize support | Anton Kling | |
2024-03-21 | libc: fix malloc implementation | Anton Kling | |
I don't know what was wrong but memory allocations were failing. I removed the old code and replaced it with the malloc implementation which exists in the kernel. Now it doesn't crash so I guess it is fine ¯\_(ツ)_/¯ | |||
2024-03-20 | MMU: Fixed massive problem in assumption of RAM layout | Anton Kling | |
This caused certain addreses which where not RAM memory to be assigned to virtual addresses incorrectly. This caused a significant slowdown when running it with KVM due to constantly having to exit the VM if the OS writes to memory that is not RAM. This fix increased the performance of KVM significantly and improved TCG performance. | |||
2024-03-19 | IRC: Add the IRC client I am working on | Anton Kling | |
2024-03-17 | stuff | Anton Kling | |
2024-03-14 | random changes made | Anton Kling | |
2024-03-02 | Kernel: 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-28 | TCP/UDP: Start rewrite of network sockets | Anton Kling | |
Having sockets be file descriptors seems like a bad idea so I trying to make UDP and TCP sockets be more independent and not be abstracted away as much. | |||
2024-02-25 | IPC: Inform the scheduler the process is waiting for a IPC message | Anton Kling | |
2024-02-22 | Kernel: 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-21 | Kernel: 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-21 | Kerenel: Cleanup halt checking code | Anton Kling | |
2024-02-21 | New clang-format options | Anton Kling | |
2024-02-19 | Kernel: Change timing for context switches | Anton Kling | |
2024-02-19 | Kernel/VFS: Cleanup of file descriptor halts | Anton Kling | |
2024-02-17 | cleanup | Anton Kling | |
2024-02-16 | General cleanup | Anton Kling | |
2024-02-14 | Kernel: Update signal handling and IPC | Anton Kling | |
2024-02-09 | Kernel/Interrupts: Restructure how interrupts are handeled in the kernel | Anton Kling | |
Now all interrupts go through a common stub which will make certain signal handlers easier to implement | |||
2024-02-07 | Minor fix | Anton Kling | |
2024-02-07 | Kernel: poll() should skip invalid file descriptors | Anton Kling | |
2024-02-07 | Remove sti and cli inline assembly | Anton Kling | |
2024-02-07 | Add enable/disable interrupts function | Anton Kling | |
This is to reduce usage of inline assembly | |||
2024-02-07 | A lot of small changes | Anton Kling | |
2023-12-18 | Add untracked files | Anton Kling | |
2023-11-29 | Kernel: Zero initialize process struct during creation | Anton Kling | |
2023-11-28 | Meta: Apply new clang-format rules to kernel | Anton Kling | |
2023-11-28 | Kernel: Add basic IPC and move to microkernel design. | Anton Kling | |
The IPC design is currently a WIP and is nowhere near complete | |||
2023-11-25 | Kernel: Add stat syscall | Anton Kling | |
forgot to add it before | |||
2023-11-25 | Minibox shell: Change shell prompt to use cwd | Anton Kling | |
2023-11-24 | LibC: Fill new allocations with random data and fix a bug | Anton Kling | |
The bug was noticed as a result of this new randomization of allocations. | |||
2023-11-24 | Refactor write() and pwrite() | Anton Kling | |
2023-11-24 | Refactor open() | Anton Kling | |
2023-11-23 | Kernel/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-23 | LibC: Move assembly to its own file to avoid using inline | Anton Kling | |
This was a ugly hack and in this case it caused undefined behavior. | |||
2023-11-23 | LibC: Reduce warnings in code | Anton Kling | |
2023-11-22 | Networking: Split network packets if they are too large | Anton Kling | |
2023-11-22 | Test: Add test case for realpath() | Anton Kling | |
2023-11-22 | LibC: Add fflush() and buffer writes to file descriptors | Anton Kling | |
2023-11-22 | Meta: Use dirent as a general include file | Anton Kling | |
This include file is shared by the kernel and libc | |||
2023-11-22 | Kernel/RTL8139/Networking fixes | Anton Kling | |
This is just a commit containing multiple fixes since I am too lazy to split them up. | |||
2023-11-22 | Kernel/LibC: Change file type detection | Anton Kling | |
2023-11-22 | Meta: Cleanup of header files such that they are partially shared | Anton Kling | |
The /include directory contains definitons that both the kernel and libc need to be in sync. | |||
2023-11-21 | Kernel: Make poll() return number of file descriptors that had revent set | Anton Kling | |
2023-11-20 | LibC: Add ntohs and ntohl | Anton Kling | |
2023-11-20 | LibC: Add macros for stdin, stdout, stderr in unistd | Anton Kling | |