Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-10-16 | kernel: Add RSOD(red screen of death) | Anton Kling | |
This is not useful since 99% of the time I will have access to the serial output. But it does look cool. | |||
2024-10-06 | Kernel/Networking: Modify outgoing packet in place | Anton Kling | |
This avoids creation of new buffers and unnecessary memcpys. The old interface still exists for UDP but will be removed when I am less lazy. From testing it does not appear to have any performance improvement but this is most likely due to other bottlenecks as extra copies should always be worse. | |||
2024-07-11 | PCI: Fix bug not account for different bar index | Anton Kling | |
2024-07-08 | Kernel/Net: Don't use kmalloc to create send buffers | Anton Kling | |
Current method is also really bad since it uses multiple copies when it should instead just copy to the send buffer of the network card directly. But I have other things that I want to prioritize first. | |||
2024-07-06 | Kernel: Add kmalloc scan | Anton Kling | |
This will scan for possible overflows in the program. It is a somewhat expensive operation but really useful for debugging. | |||
2024-07-04 | TCP: Allow delay for sends | Anton Kling | |
This is not at all optimal for applications that already buffer their data but can have a huge impact on those that don't. Applications that don't wish to use this should disable this for their socket. | |||
2024-07-04 | PIT: Fix dumb bug | Anton Kling | |
The incorrect timer was being used for TCP ACK flush | |||
2024-07-04 | Random: Improve random seeding. | Anton Kling | |
Now it appears to be sufficiently good at producing a distinct seed at each boot without using a /etc/seed file. Previously it did not do this. Of course this is nowhere near cryptographically secure but randomness does assist with things such as kmalloc. | |||
2024-07-04 | CMOS: Make read/write calls async | Anton Kling | |
This can speed up boot times since CMOS would otherwise have to wait before it could perform a read/write call. Now it gets triggered by a interrupt. | |||
2024-07-03 | Kernel/Time: Improve time keeping | Anton Kling | |
This makes use of TSC and now provides a file system interface for userland programs to change the system time. | |||
2024-07-03 | CMOS: Add basic CMOS RTC support | Anton Kling | |
2024-07-03 | Kernel: Add simple support for timer using TSC | Anton Kling | |
2024-07-02 | ahci: Bug fix, turns out the async optimization does not work that well | Anton Kling | |
2024-06-30 | ahci/ext2: small fixes | Anton Kling | |
2024-06-30 | Kernel: cleanup | Anton Kling | |
2024-06-30 | AHCI: Optimization to writes | Anton Kling | |
Now it avoids waiting for completion if possible and can instead batch commands. | |||
2024-06-30 | AHCI: Only check command slots that exist | Anton Kling | |
2024-06-28 | Kernel: Change naming scheme for certain structs | Anton Kling | |
2024-06-28 | RTL8139: Add out of memory conditions | Anton Kling | |
2024-06-27 | RTL8139: Masking "Transmit OK" interrupts | Anton Kling | |
2024-06-27 | RTL8139: Nicer code | Anton Kling | |
2024-06-27 | stuff | Anton Kling | |
2024-06-26 | TCP: Delay ACKs to batch together packets ACKed | Anton Kling | |
2024-06-26 | Kernel: Code cleanup | Anton Kling | |
2024-06-26 | Networking stuff | Anton Kling | |
TCP is now in a somewhat good state | |||
2024-06-25 | Optimize mouse driver to perform more work in kernel | Anton Kling | |
Instead of sending every event to userland they now get handeld in the kernel when possible. It will now only send out events when buttons are clicked or the mouse position is requested by userland. | |||
2024-06-23 | Kernel: Fix small out of memory issues | Anton Kling | |
2024-06-22 | Kernel stuff | Anton Kling | |
2024-06-17 | Improve PIT timer freq | Anton Kling | |
2024-06-17 | Reorganize logging code | Anton Kling | |
2024-06-09 | Add UDP | Anton Kling | |
2024-05-05 | Kernel: Clear more interrupts for mouse driver | Anton Kling | |
I am not sure why the mouse requires interrupt line 2 to be cleared. | |||
2024-05-01 | Kernel/Keyboard: Only write to buffer after it is initialized | Anton Kling | |
2024-04-29 | Kernel/Socket: Move sockets back to being file descriptors | Anton Kling | |
2024-04-28 | Kernel: Use ringbuffer for keyboard and mouse events | Anton Kling | |
2024-04-27 | Kernel: Make file descriptor numbers reusable. | Anton Kling | |
Instead of using the "append only" list it now uses "relist" which allows for indexes to be removed. | |||
2024-04-26 | Kernel/VFS: Change polling from variables to functions | Anton Kling | |
Instead of having to store state in variables functions are called to check the object directly. | |||
2024-04-26 | Kernel: More out of memory condition checks | Anton Kling | |
2024-04-18 | Kernel: Fix compiler warnings | Anton Kling | |
2024-04-15 | Bug fix and cleanup. | Anton Kling | |
2024-04-02 | Kernel: Use "struct list" to handle file descriptors instead of a fixed ↵ | Anton Kling | |
sized array | |||
2024-03-25 | Random changes | Anton Kling | |
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-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 | 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 | |