Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-10-31 | Meta: Create a simple toolchain compilation script | Anton Kling | |
2023-10-31 | Meta: Create simple build scripts for kernel, userland and general enviroment | Anton Kling | |
2023-10-31 | Meta: 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. | |||
2023-10-30 | Cleanup of things that did not get formatted or not included in old commits | Anton Kling | |
2023-10-30 | LibC: Remove header files that are not in the "include" directory | Anton Kling | |
2023-10-30 | LibC: Don't fail if a free() is done that the wrong address location. | Anton Kling | |
2023-10-30 | Kernel/LibC: Add signals and support for custom signal handlers to processes. | Anton Kling | |
2023-10-30 | LibC: Bug fix, make sure to invalidate cache if it skips using it | Anton Kling | |
Since when the cache gets skipped the offset in the file increases far outside of the reach of the current cache. Therefore the current cache should be discarded. | |||
2023-10-30 | LibC: Skip using cache if length requested is longer than the cache block | Anton Kling | |
This avoid a bunch of extra systemcalls that would have to be made to read each portion into a cache block. | |||
2023-10-30 | EXT2: Improve block cache | Anton Kling | |
This significantly speeds up certain operations as indirect block looksup now don't need to make as many requests to the hard drive. | |||
2023-10-30 | Kernel/LibC/Networking: Be able to send UDP messages | Anton Kling | |
Now it can send UDP messages to a specific IP address and libc has enough to create a basic UDP ECHO server, that is kinda cool. | |||
2023-10-30 | Kernel: Expose source information of incoming UDP packets | Anton Kling | |
2023-10-30 | Kernel: Move min, max functions to their own file | Anton Kling | |
2023-10-30 | LibC: Optimize memcpy function | Anton Kling | |
Instead of copying byte by byte it now copies in 64, 32, 16, 8 bit chunks. | |||
2023-10-30 | Kernel/Networking/LibC: Add syscalls and libc functions for UDP | Anton Kling | |
This allows a UDP server to be created in userland and read data. Currently it can't send data and is very very simplistic. Code is horrible and probably needs some fixing until it can be further built upon. | |||
2023-10-30 | Kernel: Fixup rtl8139, add basic ARP and ethernet support | Anton Kling | |
Currently the ARP appears to be able to respond to requests. | |||
2023-10-30 | Build system: Remove the network cards from as where only for testing | Anton Kling | |
2023-10-30 | Kernel: Add basic support for PCI and rtl8139 | Anton Kling | |
This implementation is very messy and is currently not used. | |||
2023-10-30 | RTL8139: Transmission and interrupts seem to magically work now. | Anton Kling | |
This commit is done to preserve the functional code before I make new changes. | |||
2023-10-30 | Kernel: Add basic PCI and very basic rtl8139 support | Anton Kling | |
2023-10-24 | Add ftruncate syscalls that I forgot to add | Anton Kling | |
2023-10-24 | ante: Truncate the file before writing to it. | Anton Kling | |
Previously the file size would not decrease even if data was deleted. | |||
2023-10-24 | EXT2: Add truncate function to filesystem | Anton Kling | |
2023-10-24 | VFS/LibC: Create ftruncate function and corresponding syscall and libc ↵ | Anton Kling | |
implementation Previously this function was only used for shared memory region created by shm_open because I was lazy. Now exists for all files. | |||
2023-10-24 | Scheduler/MMU: Include length variable in structure that did not get ↵ | Anton Kling | |
included in previous commit | |||
2023-10-24 | LibC: Allocate stdin, stdout, stderr on the heap so they can be closed with ↵ | Anton Kling | |
fclose | |||
2023-10-24 | WindowServer: Optimize 'for' loop such that it avoids doing a division ↵ | Anton Kling | |
during each iteration | |||
2023-10-24 | WindowServer: Don't hardcode the display resolution | Anton Kling | |
2023-10-23 | EXT2: Use the vfs_create_inode function to create the mount | Anton Kling | |
2023-10-23 | VFS/libc: Create a syscall for mkdir and add the function to libc | Anton Kling | |
2023-10-23 | EXT2: Make a function for directory creation and refactor directory entry ↵ | Anton Kling | |
creation code | |||
2023-10-23 | ante: Make use of the LibGUI event loop. | Anton Kling | |
2023-10-23 | WindowServer/LibGUI: Add a eventloop | Anton Kling | |
This can be used by any program does nothing until it gets user input. | |||
2023-10-23 | WindowServer: Draw a border around the active window | Anton Kling | |
2023-10-23 | WindowServer: Remove client struct and make a client equivalent to a window | Anton Kling | |
2023-10-23 | WindowServer: Add ability to focus on windows by doing a left click. | Anton Kling | |
2023-10-23 | Scheduler/MMU: Add a mmaped region to the memory map array. | Anton Kling | |
2023-10-23 | VBE: Add a interface for getting width, height information about the display | Anton Kling | |
2023-10-23 | WindowServer: Optimize copying of buffers. | Anton Kling | |
This optimization should probably move over to memcpy later. | |||
2023-10-23 | WindowServer: Make the wallpaper be stored in a shared memory region. | Anton Kling | |
This allow other processes to easily modify the wallpaper by opening the memory region and poking into memory. | |||
2023-10-23 | WindowServer: Launch a new terminal by pressing ALT+n | Anton Kling | |
2023-10-23 | EXT2: Invalidate inode cache if the inode gets written to. | Anton Kling | |
2023-10-22 | libc: Implement fscanf function | Anton Kling | |
2023-10-22 | libc: Add a cache to the fread function for reading from files on disk. | Anton Kling | |
This helps a ton when using functions such as fscanf that reads from a FILE byte by byte. By creating a cache it avoids a ton of 'read' syscalls that would otherwise be made. | |||
2023-10-22 | EXT2: Implement a very basic cache for blocks and inodes | Anton Kling | |
2023-10-22 | Update .gitignore for all programs | Anton Kling | |
2023-10-22 | Change CC in Makefiles to not use a absolute path | Anton Kling | |
2023-10-22 | Ignore relased key events in 'ante' | Anton Kling | |
2023-10-22 | Remove junk files from sync.sh script. | Anton Kling | |
2023-10-22 | Add hashmap to submodules | Anton Kling | |