Age | Commit message (Collapse) | Author | |
---|---|---|---|
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 | 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-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-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-22 | Networking: Split network packets if they are too large | 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 | 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-18 | VFS: Do not add extra '/' on root path. | Anton Kling | |
2023-11-17 | Kernel: Add isatty syscall | Anton Kling | |
2023-11-16 | VFS: Do canonicalization of the current working directory | Anton Kling | |
2023-11-16 | Kernel: Change how syscalls are built and implemented. | Anton Kling | |
2023-11-16 | ext2: Fix directory resolution | Anton Kling | |
Previously a parsing of /usr/../ would fail as it would be searching '/' for a empty file even though the desired outcome if for it to stop parsing after reaching '/'. The solution is to give the current directory inode if the file searched for in the directory is empty. | |||
2023-11-15 | Add untracked files | Anton Kling | |
2023-11-15 | VFS/LibC: Add getcwd() | Anton Kling | |
2023-11-15 | Meta: Setup a drive over AHCI | Anton Kling | |
2023-11-15 | PCI: Add interrupt handler functions | Anton Kling | |
2023-11-15 | Kernel/LibC: Add chdir function and syscall | Anton Kling | |
2023-11-15 | VFS: Add stat | Anton Kling | |
2023-11-15 | VFS: Bug fix. Uninitalized structure member. | Anton Kling | |
This was found thanks to kmalloc now filling new allocations with random data. | |||
2023-11-15 | ext2: Bug fix. Add padding to the block group descriptor. | Anton Kling | |
2023-11-13 | AHCI: Add write function. | Anton Kling | |
This also changes the ext2 filesystem so it will now write to the file it mounted. Currently the file mounted is /dev/sda which points to a SATA drive. | |||
2023-11-13 | Kernel: Add support for AHCI and make use of it with the current filesystem. | Anton Kling | |
It will now also create a corresponding /dev/sd* device for each detected SATA drive. The filesystem still writes using the ATA driver. This should be fixed soon. | |||
2023-11-13 | Memory: Fix problem where certain tables did not get marked as kernel. | Anton Kling | |
This caused the tables to be cloned instead of having the pointer copied on the new page directory creations. This is just a solution to the symptom of having a bad design for memory managment. Maybe I will figure out something better. | |||
2023-11-13 | Kernel: Remove kmalloc_eternal | Anton Kling | |
I would like to be able to free some of those objects but I have not decided upon how that will be done yet. Even if not freeded the added complexity of having two functions does not make the extra bytes saved worth it IMO. | |||
2023-11-13 | Crypto: Implement fast insecure RNG for overwritting memory areas. | Anton Kling | |
This is mainly done to test for uninitlalized memory and find bugs faster. Therefore it does not need to be cryptographically secure or perfectly uniform. Xoshiro256++ seems like a good fit. | |||
2023-11-13 | Kernel: Add typedefs.h | Anton Kling | |
2023-11-13 | ARP: Save the IP, MAC of incoming ARP requests | Anton Kling | |
2023-11-13 | Exceptions: Output CR2 on page fault | Anton Kling | |
2023-11-12 | AHCI: Add very basic AHCI and some additional helper functions to mmu.c | Anton Kling | |
Currently certain parts of the code are taken from osdev wiki as there seems to be very little documentation that I can find on how H2D FIS is structured. Those parts, especially some of the uglier parts of the example code will be rewritten/changed. | |||
2023-11-12 | Kernel/PCI: Add functions for getting BAR and specific PCI devices by | Anton Kling | |
class | |||
2023-11-10 | Ext2: Change char* to u8* where the type is referencing data and not a C | Anton Kling | |
string | |||
2023-11-10 | Kernel Style: Change uint*_t -> u* | Anton Kling | |
2023-11-10 | Kernel/Memory: Fill new allocations with random data. | Anton Kling | |
This should make it easier to spot uninitalized memory being used. | |||
2023-11-10 | Syscall: Cleanup code and remove dumb usage of get_vfs_fd. | Anton Kling | |