summaryrefslogtreecommitdiff
path: root/userland
AgeCommit message (Collapse)Author
2024-03-26Increase support for signalsAnton Kling
2024-03-25Random changesAnton Kling
2024-03-25WindowServer: Add focus, minimize supportAnton Kling
2024-03-21libc: fix malloc implementationAnton 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-20MMU: Fixed massive problem in assumption of RAM layoutAnton 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-19IRC: Add the IRC client I am working onAnton Kling
2024-03-17stuffAnton Kling
2024-03-14random changes madeAnton 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-07Minor fixAnton Kling
2024-02-07A lot of small changesAnton Kling
2023-12-18Add untracked filesAnton 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-25Minibox shell: Change shell prompt to use cwdAnton Kling
2023-11-24LibC: Fill new allocations with random data and fix a bugAnton Kling
The bug was noticed as a result of this new randomization of allocations.
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-23LibC: Move assembly to its own file to avoid using inlineAnton Kling
This was a ugly hack and in this case it caused undefined behavior.
2023-11-23LibC: Reduce warnings in codeAnton Kling
2023-11-22Test: Add test case for realpath()Anton Kling
2023-11-22LibC: Add fflush() and buffer writes to file descriptorsAnton Kling
2023-11-22Meta: Use dirent as a general include fileAnton Kling
This include file is shared by the kernel and libc
2023-11-22Kernel/LibC: Change file type detectionAnton Kling
2023-11-22Meta: Cleanup of header files such that they are partially sharedAnton Kling
The /include directory contains definitons that both the kernel and libc need to be in sync.
2023-11-20LibC: Add ntohs and ntohlAnton Kling
2023-11-20LibC: Add macros for stdin, stdout, stderr in unistdAnton Kling
2023-11-20LibC: Allow open to accept multiple argumentsAnton Kling
2023-11-20LibC: Add macros for file regnitionAnton Kling
2023-11-18WindowServer: Implement window resizing.Anton Kling
Currently no event is sent to a client that a window is resized. This should be added when I can bother adding that functionality to the client applications also.
2023-11-17Minibox: Add a somewhat improved shellAnton Kling
This shell actually lexes and produces a AST which makes it easier to add features and will makes it more difficult to introduce bugs. So basically it is just better code.
2023-11-17LibC: Add isatty()Anton Kling
2023-11-16LibC: Add error checking to scandirAnton Kling
2023-11-15VFS/LibC: Add getcwd()Anton Kling
2023-11-15LibC: Add getdelim and getlineAnton Kling
2023-11-15Kernel/LibC: Add chdir function and syscallAnton Kling
2023-11-15VFS: Add statAnton Kling
2023-11-13LibC: Support negative values in printf for %dAnton Kling
2023-11-06Userland: Remove old coreutil applications that have moved to miniboxAnton Kling
2023-11-01Kernel: Add a simple TCP implementationAnton Kling
2023-10-31ante: Adjust X position of cursor so it can always land on a line.Anton Kling
If a y position is found for the cursor we will adjust the X position to the optimial position. Previously if you tried to move from the end of a long line to a short line it would not work since a valid X position could not be found.
2023-10-31WindowServer: Make the mouse dotted to make it visible on all backgroundsAnton Kling
2023-10-31Meta: Fix build scripts to work on debianAnton Kling
2023-10-31Meta: Create a simple toolchain compilation scriptAnton Kling
2023-10-31Meta: Create simple build scripts for kernel, userland and general enviromentAnton Kling
2023-10-30LibC: Remove header files that are not in the "include" directoryAnton Kling
2023-10-30LibC: Don't fail if a free() is done that the wrong address location.Anton Kling
2023-10-30Kernel/LibC: Add signals and support for custom signal handlers to processes.Anton Kling
2023-10-30LibC: Bug fix, make sure to invalidate cache if it skips using itAnton 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-30LibC: Skip using cache if length requested is longer than the cache blockAnton Kling
This avoid a bunch of extra systemcalls that would have to be made to read each portion into a cache block.