summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-12-12formatting: Use clang-format on all projectsAnton Kling
This commit also add braces to all `if` statements.
2024-12-12kernel: Fix/improve cleanup of process after exitAnton Kling
2024-12-12signal: Remove old way of sending signals and instead use procfsAnton Kling
2024-12-12procfs: Add a procfsAnton Kling
Userland can now interface with processes by writing/reading from `/proc/<pid>/<entry>` It can send signals, for example `echo 15 > /proc/1/signal`
2024-12-11kernel: Add more sv functions and change interfacesAnton Kling
2024-12-10kernel: Add string view and string builderAnton Kling
This makes write/read calls that use strings to communicate much simpler and less error prone.
2024-12-10kernel: Add kbnprintfAnton Kling
Like snprintf but without null termination
2024-12-09timer: Use strings instead of direct int64_t to communicate with userlandAnton Kling
This makes it easier to write and read from /dev/clock using shell scripts. The actual performance decrease will be minimal and the interface is not that perfect for proper time keeping anyways.
2024-12-09kernel: Add a way to parse numbers from C stringsAnton Kling
After making this change I am now actually doubting if using C strings is a good idea and maybe it should just always just the string view library that userland makes use of. But old code and the upcoming commits rely upon this so it is a change my future less lazy self will do.
2024-12-09kernel: Add ksnprintfAnton Kling
2024-12-09lock: Add lock utilityAnton Kling
2024-12-09sh: Add exit commandAnton Kling
2024-12-09libc: sv add number parsingAnton Kling
2024-12-09mmu: Make certain allocations physical and virtual mapping linearAnton Kling
Previously it was possible for fragmentation to occur and as a result certain allocations would have a linear virtual address space but not a linear physical address space. This is bad since a lot of calls to kmalloc_align rely upon both being linear, it has now been changed such that all allocations done by kmalloc_align now guarantee this mapping holds for both virtual and physical addresses. It was due to oversight and sheer luck that this had been working for so long.
2024-12-09tcpserver: Add the basics of tcpserverAnton Kling
2024-12-08vfs: Bug fix...Anton Kling
The commit is self explanatory. It was a simple mistype that went unnoticed for a while.
2024-12-08vfs: Force truncation even without permissionsAnton Kling
O_TRUNC as a mode does not seem to imply write permissions but we still wish to truncate the file before giving back a file descriptor. Therefore the kernel can now override any permission checks if it wishes to do a truncation while still using the "ordinary path".
2024-12-08audio: Control master volume through /dev/volumeAnton Kling
2024-12-08kernel/libc: Add isdigit()Anton Kling
2024-12-08kernel: Change error reporting for exec*Anton Kling
2024-12-02ac97: Messy fixes to audioAnton Kling
It seems to work completely now, but it is still very messy.
2024-12-02minibox: Add true, falseAnton Kling
2024-11-30audio/pcm: Add a proram to play audio filesAnton Kling
2024-11-30kernel: Change math.h to use macrosAnton Kling
Having min/max be functions was a stupid decision in the first place
2024-11-30ac97/audio: Add audioAnton Kling
Incomplete but still very cool
2024-11-30vfs: Move read() to vfs.cAnton Kling
2024-11-29ext2: Handle "zero" blocksAnton Kling
Any blocks with the value zero appear to indicate a region completly filled to zeros. I don't see this anywhere in the spec but it does make sense and the behavior matches files that I have on my FreeBSD machine so I guess it must be valid.
2024-11-28add missing filesAnton Kling
2024-11-28changesAnton Kling
2024-11-24sh: Remove sh and use the "minibox" version insteadAnton Kling
2024-11-24libc: fclose should always close the associated file descriptorAnton Kling
My previous "fix" was a misreading of the spec.
2024-11-23vfs: Support O_TRUNCAnton Kling
2024-11-23vfs: Add O_APPEND support + refactoringAnton Kling
2024-11-23libc: Add append to f(d)open and other fixesAnton Kling
2024-11-22libc: Fix bugs in strto(u)l(l)Anton Kling
2024-11-22libc: Add RC_ERRNO to more syscallsAnton Kling
This is very inconstant at the moment
2024-11-22vfs: Add dup()Anton Kling
2024-11-22libc: Add case for strtol(l) where base is 0Anton Kling
2024-11-22vfs: Close new file descriptor if already in use when calling dup2Anton Kling
2024-10-30kernel: Improve error handling for OOMAnton Kling
2024-10-30kernel/mmu: Make sure to check for NULL.Anton Kling
2024-10-17kernel: Use realloc instead of malloc+freeAnton Kling
2024-10-17httpd: Bug fix close unused file descriptorAnton Kling
2024-10-16kernel: 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-16httpd: Bug fix for not handling error code 400 properlyAnton Kling
2024-10-14httpd: Add /index.html support and better error handlingAnton Kling
2024-10-14ppm: Fix bounds checkingAnton Kling
2024-10-14kernel: small bug fixesAnton Kling
2024-10-14kernel: stuffAnton Kling
2024-10-14TCP: Don't free buffer prematurelyAnton Kling