Commit Graph

  • 0f5910add7 Kernel/Utilities: Add new round_{up,down}_to_nearest_page functions apio 2022-10-12 14:51:04 +0200
  • baa71b09cc Kernel: Build with -fstack-protector-strong instead of -fstack-protector-all apio 2022-10-12 14:50:31 +0200
  • 4768d5fc12 ELFLoader: Consider the offset when calculating how many pages to map apio 2022-10-12 14:40:06 +0200
  • bbd9f1d187 VMM: Add FIXME apio 2022-10-12 14:35:34 +0200
  • 15f340dbbe VMM: Do not map recursively apio 2022-10-12 14:34:12 +0200
  • 8daffa876c Make some shell scripts executable apio 2022-10-12 14:31:50 +0200
  • 28469497e9 Change build system to accept arbitrary CFLAGS during the build process apio 2022-10-12 14:31:41 +0200
  • d3cb642e5f Scheduler: add FIXME apio 2022-10-12 14:30:57 +0200
  • 0ee9bd7290 Scheduler: free a task's ELF image. apio 2022-10-12 14:30:46 +0200
  • eaea4603c6 MemoryManager: Fix logging when built with debug logging apio 2022-10-12 14:29:30 +0200
  • 4021cb3ac0 KernelHeap: do not crash the entire system apio 2022-10-12 14:28:48 +0200
  • ad9c7af0bf VMM: add FIXME apio 2022-10-12 14:27:47 +0200
  • 950f4ef608 VMM: Add support for larger pages apio 2022-10-12 14:27:26 +0200
  • 525d567af6 VMM: When unmapping a page, invalidate the TLB for that page apio 2022-10-12 14:24:34 +0200
  • c9ebe89899 Kernel/KernelHeap: Add MODULE #define apio 2022-10-12 14:04:41 +0200
  • cf160d1260 Scheduler: Use misc/utils.h instead of doing everything manually. apio 2022-10-12 13:18:35 +0200
  • 66add380cf Kernel/Utilities: add a new get_top_of_stack convenience function apio 2022-10-12 13:17:58 +0200
  • cf3f61e373 Kernel: More GDT refactoring apio 2022-10-12 13:12:46 +0200
  • c1f9d3323f Kernel: Refactor TSS loading to make it cleaner >.< apio 2022-10-12 13:07:28 +0200
  • 97eacc027e Kernel: Use PAGE_SIZE in more places apio 2022-10-12 13:05:57 +0200
  • f5deb1048a Kernel: Add functions to push and pop the interrupt state apio 2022-10-12 12:58:56 +0200
  • b3e16068ef Kernel: Add Utilities::get_rflags(), and thus Interrupts::are_enabled() apio 2022-10-12 12:56:55 +0200
  • e90b90c556 Kernel, libc: Round up to nearest page-aligned size instead of down apio 2022-10-12 12:15:12 +0200
  • a8eb7a6b66 Merge branch descriptive_headers into main apio 2022-10-12 10:11:45 +0000
  • d89685bb36 libc: Document sys/types.h #11 apio 2022-10-12 12:07:42 +0200
  • 1e16a78106 libc: Document functions in sys/mman.h apio 2022-10-12 12:06:45 +0200
  • a3362429d3 libc: Update strerror() apio 2022-10-12 12:01:18 +0200
  • 0d3e7d4463 libc: Document errno.h apio 2022-10-12 12:01:07 +0200
  • b42c866db8 Correct description for fopen() apio 2022-10-12 11:58:07 +0200
  • 9f5b3b76d2 libc: Document the function in fcntl.h apio 2022-10-12 11:57:49 +0200
  • f44411aa46 libc: Document the functions in luna.h apio 2022-10-12 11:54:29 +0200
  • 6aabe19fb4 libc: Document the functions in stdio.h apio 2022-10-12 11:51:32 +0200
  • ffc223c2cf libc: Document functions in stdlib.h apio 2022-10-12 11:30:21 +0200
  • c8c4d31cca Add a FIXME to string.cpp apio 2022-10-12 11:20:48 +0200
  • 19ee20b6f5 libc: Document the functions in string.h apio 2022-10-12 11:19:14 +0200
  • 38e87d8f8f libc: Document the functions in unistd.h apio 2022-10-12 11:02:18 +0200
  • 96b1d1c2f2 Devices: Tell a device which name you want it to be instantiated with apio 2022-10-12 10:54:46 +0200
  • eb03ae91e0 Devices: Add a new Serial device apio 2022-10-12 10:44:30 +0200
  • 89cbe5957b Update .gdbconf to point to the non-stripped kernel executable apio 2022-10-12 10:17:49 +0200
  • 44834b8a0f libc: Implement fputs, fputc, putc and putchar apio 2022-10-12 10:05:14 +0200
  • eaf7a1620b Next version! apio 2022-10-11 21:42:23 +0200
  • e145690db8 apps: Remove demo programs (except for init) old-0.10 apio 2022-10-11 21:37:27 +0200
  • 25ab31c7ce Remove unnecessary comments apio 2022-10-11 21:32:28 +0200
  • d3ac590e24 Kernel: Remove the sys_getversion() syscall apio 2022-10-11 21:31:28 +0200
  • 112e375b5e Kernel: Add a FIXME apio 2022-10-11 21:21:27 +0200
  • c30041b733 fix naming apio 2022-10-11 21:17:07 +0200
  • 88a01fcfc7 libc: make perror output to stderr apio 2022-10-11 21:13:38 +0200
  • b67011c626 libc: Use the new write() syscall apio 2022-10-11 21:12:19 +0200
  • 0f47f59364 libc: make fprintf actually write to the chosen file apio 2022-10-11 21:10:19 +0200
  • 2f46e46aa4 libc: Implement fwrite() apio 2022-10-11 21:09:30 +0200
  • 80ab982fe4 libc: make stdout and stderr functional apio 2022-10-11 21:08:46 +0200
  • 53a4b3b85e libc: Add new flags to open() apio 2022-10-11 21:07:21 +0200
  • 12cf37d0a7 Kernel/syscalls: Modify sys_write to accept a file descriptor and write to it apio 2022-10-11 21:06:12 +0200
  • e764647133 Devices: add a new ConsoleDevice apio 2022-10-11 21:04:50 +0200
  • b1fcfd0d74 VersionDevice: Ignore offset instead of erroring out + set flags to 0 apio 2022-10-11 21:04:14 +0200
  • e67ef7778c VFS: Support writing to files apio 2022-10-11 21:03:30 +0200
  • f6e783ea45 init: do not show 'read n bytes' when printing version apio 2022-10-11 20:13:00 +0200
  • 8e57df518f apps: build with optimizations enabled apio 2022-10-11 19:57:24 +0200
  • 0c451e504e Kernel: Mounting /dev MUST succeed apio 2022-10-11 19:53:55 +0200
  • 04da26bff5 kernel: add a few comments apio 2022-10-11 19:51:24 +0200
  • feb8c1c31b libc: Implement strchr() apio 2022-10-11 19:50:18 +0200
  • 0131193379 ELFLoader, Scheduler: Transition to use VFS apio 2022-10-11 19:33:48 +0200
  • 86b50a6aa0 Remove random demos apio 2022-10-11 19:25:19 +0200
  • 0a7d4a530d VFS, DeviceFS: Implement a device filesystem apio 2022-10-11 19:21:16 +0200
  • a198cf8d8d Add initrd_mkdir to registered directories in the initrd apio 2022-10-11 18:25:11 +0200
  • 4aa3da8c12 VFS: Add basic mount(), unmount() and mkdir() functions (not accessible to userspace yet) apio 2022-10-11 18:23:00 +0200
  • 1278cec065 VFS: Add a 'type' flag to Nodes, implement EISDIR apio 2022-10-11 17:48:11 +0200
  • 7a097f16ea apps: add a new example app which does all kinds of stdio misbehaving >.< apio 2022-10-11 17:31:06 +0200
  • 667d308fc3 kernel/main.cpp: remove obsolete reference to _userspace apio 2022-10-11 17:30:40 +0200
  • 6088031c49 stdio: log stuff more apio 2022-10-11 17:19:03 +0200
  • 81815a0bdd Refactor sys/stdio.cpp apio 2022-10-11 17:10:44 +0200
  • 2a755fcd93 sys_open(): actually return EMFILE if the process has used all of its file slots apio 2022-10-11 17:03:16 +0200
  • 6c51477197 libc: Implement ferror() and feof() apio 2022-10-11 16:57:08 +0200
  • d25e8a43db build system: strip apps apio 2022-10-10 21:24:21 +0200
  • 4f2b3ce5d1 fclose: restore errno after call to free() if close() fails apio 2022-10-10 21:18:24 +0200
  • 93f6be9319 libc: Implement the start of a FILE* API (the standard, portable C way of doing file stuff) apio 2022-10-10 21:08:57 +0200
  • 9e0bd39964 libc: Implement wrappers for sys_{open,read,write} apio 2022-10-10 20:45:26 +0200
  • 1b84c443fe Merge branch VFS into main apio 2022-10-10 18:25:43 +0000
  • da2ede3450 Kernel, libc, userspace: Implement file descriptors #10 apio 2022-10-10 20:21:39 +0200
  • 63b2de4e3c Basic FDs apio 2022-10-10 19:00:24 +0200
  • da84f1713c InitRD: Use get_blocks_from_size() apio 2022-10-10 18:45:49 +0200
  • bbe7c6e658 VFS: Implement resolve_path and form the initial ramdisk's VFS properly apio 2022-10-10 18:44:43 +0200
  • 2be70d0bc1 VFS: Use 64-bit numbers in read() apio 2022-10-09 21:30:38 +0200
  • 8158ddc94f VFS: be more verbose apio 2022-10-09 21:19:22 +0200
  • b38c52f8c7 more vfs stuff apio 2022-10-08 21:35:19 +0200
  • f3d7e220ac The beginnings of a VFS implementation!! apio 2022-10-08 21:22:46 +0200
  • 49c7900407 Add %m to userspace printf apio 2022-10-08 18:44:14 +0200
  • 4b74c14f1b Merge branch printf_pointers into main apio 2022-10-08 16:27:37 +0000
  • 3686e03bb7 Cast %p usage to void* #9 apio 2022-10-08 18:27:05 +0200
  • 3feb7782bc Kernel/mmap, munmap: Use %p in printf apio 2022-10-08 18:24:05 +0200
  • d5f59b666a Kernel/Memory: Use %p in printf apio 2022-10-08 18:21:02 +0200
  • 8ce58e9e30 Kernel/InitRD: Use %p with printf() apio 2022-10-08 18:16:55 +0200
  • 5fc543c179 Kernel/ACPI: Use printf() with %p apio 2022-10-08 18:15:08 +0200
  • 40099feb80 Apps: Use the new %p in printf() apio 2022-10-08 18:11:41 +0200
  • 3ee1f34bc4 Forgot to add break :) apio 2022-10-08 18:08:50 +0200
  • c67079dd74 Kernel, libc: Implement %p in *printf() apio 2022-10-08 18:07:33 +0200
  • 247645d301 Merge branch exit_status into main apio 2022-10-08 15:58:51 +0000
  • f83a6ace51 Kernel, libc: Add support for providing a status code to exit() #8 apio 2022-10-08 17:56:40 +0200
  • 1e0c8c5fe7 Kernel: Strip kernel symbols when installing apio 2022-10-08 15:57:07 +0200
  • 4a212b4c92 Modify shebangs to use /usr/bin/env bash instead of /bin/sh apio 2022-10-08 15:35:39 +0200