Commit Graph

  • 8be28012ee LibC: Reorder some syscalls Bananymous 2023-06-11 03:28:43 +0300
  • 5aed186827 Kernel: Add SYS_OPENAT Bananymous 2023-06-11 03:27:56 +0300
  • 91f812e17f Kernel: Exceptions will now enable interrupts before calling exit() Bananymous 2023-06-11 01:36:21 +0300
  • f0b22c48b2 LibC: implement close Bananymous 2023-06-11 01:10:28 +0300
  • 52c4eebd77 Kernel: Implement SYS_FSTAT Bananymous 2023-06-11 00:54:04 +0300
  • 24f0d26fce LibC: Implement basic dirent functionality Bananymous 2023-06-11 00:19:20 +0300
  • 825ec221b7 Kernel: we don't panic anymore on unrecognized syscall Bananymous 2023-06-11 00:18:48 +0300
  • e31080bce3 Kernel: allow open() call with O_SEARCH Bananymous 2023-06-11 00:18:34 +0300
  • 7a5d5cabad Kernel: Add syscall for reading directory entries Bananymous 2023-06-11 00:18:08 +0300
  • f7de310889 LibC: add missing O_EXEC and O_SEARCH Bananymous 2023-06-10 23:21:43 +0300
  • e209ca7c82 Kernel: Rewrite directory listing so it can be integrated to libc Bananymous 2023-06-10 23:13:41 +0300
  • ee8de77a90 Userspace: fix return values of cat and echo Bananymous 2023-06-10 17:34:10 +0300
  • db49cbd6e2 Kernel: We now store the processes exit code Bananymous 2023-06-10 17:31:56 +0300
  • e001eecb7b Userspace: add exit to shell Bananymous 2023-06-09 01:51:23 +0300
  • 7f34d00c95 Userspace: add echo Bananymous 2023-06-09 01:50:18 +0300
  • 2c18adbddd Userspace: add ^L support for shell Bananymous 2023-06-09 01:24:08 +0300
  • 97c7fc42d1 Kernel: SpinLocks now reschedule if they cannot aquire the lock Bananymous 2023-06-09 00:53:32 +0300
  • 7da0627f8e Kernel: Process::exit() now uses the new Scheduler::reschedule() Bananymous 2023-06-09 00:49:19 +0300
  • 27cef23823 Kernel: Scheduler now has reschedule() Bananymous 2023-06-09 00:47:17 +0300
  • b7fc2dc3d0 Kenrel: Rename Scheduler::reschedule -> Scheduler::timer_reschedule Bananymous 2023-06-09 00:41:43 +0300
  • 8af390e0f6 Kernel: Big commit. Rewrite ELF loading code Bananymous 2023-06-09 00:37:43 +0300
  • 96d6453ea8 Kernel: PageTableScope locks the PageTable before disabling interrupts Bananymous 2023-06-09 00:34:41 +0300
  • 2b9900e56e Kernel: get_free_contiguous_pages works with non-page aligned addresses Bananymous 2023-06-06 02:03:23 +0300
  • 86f58f60cb LibC: implement setenv, unsetenv, putenv Bananymous 2023-06-05 22:43:26 +0300
  • 064ce568c2 Kernel: add basic support for environment variables Bananymous 2023-06-05 21:53:37 +0300
  • 6aff459e1c BAN: add StringView::contains(char) Bananymous 2023-06-05 22:46:37 +0300
  • 0b1b4d8f7e Kernel: exec now has better posix errors Bananymous 2023-06-05 21:08:34 +0300
  • 3fc2c3529a Shell: load old termios for process execution Bananymous 2023-06-05 20:34:31 +0300
  • b0e9ab0519 Kernel/LibC: pass environ pointer to process Bananymous 2023-06-05 20:34:08 +0300
  • 668517a723 Kernel: TTY now actually flushes on ^D Bananymous 2023-06-05 20:21:46 +0300
  • 649f08ec78 Kernel: verify that loaded elfs are executable Bananymous 2023-06-05 19:15:32 +0300
  • 2f2c298c68 Shell: add bareboness utf8 support Bananymous 2023-06-05 18:53:52 +0300
  • 90e48970e6 Shell: we now support left/right arrows Bananymous 2023-06-05 18:24:41 +0300
  • 480842a203 LibC: abort now prints 'abort()' and exits Bananymous 2023-06-05 18:23:19 +0300
  • 5425394880 Kernel: TTY now supports CSI s and u Bananymous 2023-06-05 18:19:13 +0300
  • a365813fa9 BuildSystem: disable nls from gcc Bananymous 2023-06-05 17:55:47 +0300
  • 9d64dbd5c2 Kernel/LibC: add SYS_STAT and stat(), lstat() Bananymous 2023-06-05 14:36:17 +0300
  • 30bb61a775 Base: revert bin and lib symlinks to relative paths Bananymous 2023-06-05 10:08:01 +0300
  • 1f36ed0cf9 Userspace: Start work on proper shell Bananymous 2023-06-05 01:42:57 +0300
  • d54c76f88a Base: /lib and /bin are now absolute symlinks Bananymous 2023-06-04 18:12:05 +0300
  • cbb9f47ee5 LibC: add wait and waitpid Bananymous 2023-06-04 17:59:13 +0300
  • b68d5a5833 Kernel: Add SYS_WAIT Bananymous 2023-06-04 17:57:24 +0300
  • 94d2090777 Kernel: fork() now clones current thread Bananymous 2023-06-04 17:39:23 +0300
  • e97585daf9 Kernel: Process FixedWidthAllocators come now in 4 sizes Bananymous 2023-06-04 01:26:43 +0300
  • 924fc2118c Kernel: Allocators are now stored in UniqPtr Bananymous 2023-06-04 01:25:57 +0300
  • 51f4c0c750 Kernel: make load_elf() its own function Bananymous 2023-06-04 01:24:11 +0300
  • 37b93da650 Kernel: PhysicalRange maps its nodes to kernel vaddr space Bananymous 2023-06-04 01:20:47 +0300
  • 35e739dcdd Kernel: reorder process exit steps Bananymous 2023-06-04 01:19:04 +0300
  • 8352392b38 Kernel: You can specify first vaddr for getting free pages Bananymous 2023-06-04 01:15:48 +0300
  • 413f05bfca BAN: Add UniqPtr Bananymous 2023-06-04 00:34:03 +0300
  • dc1aff58ed Kernel: PAGE_FLAG_MASK is now only 0xF Bananymous 2023-06-03 18:55:25 +0300
  • 9f75d9cfe5 Kernel: PageTable now has debug_dump Bananymous 2023-06-03 18:54:48 +0300
  • a42af7e973 Kernel: boot.S is back to 2 MiB pages Bananymous 2023-06-03 18:53:36 +0300
  • 2ce244d303 BAN: Errors now includes assert.h Bananymous 2023-06-03 18:53:05 +0300
  • a775a920d0 BuildSystem: remove sse and sse2 from userspace Bananymous 2023-06-03 16:05:32 +0300
  • 4f84faf392 LibC: printf string persision works now Bananymous 2023-06-03 15:07:02 +0300
  • a4cb5d8360 Kernel: Inode/Device detection is done with overridden bool functions Bananymous 2023-06-03 13:28:15 +0300
  • da7f09cf82 Kernel: Heap will return 0 if no free page is available Bananymous 2023-06-03 02:55:31 +0300
  • 0166af472b Kernel: DiskCache will try to shrink_to_fit after cache cleanup Bananymous 2023-06-03 02:37:37 +0300
  • 884d986bd6 Kernel: DiskCache won't crash when running out of kmalloc memory Bananymous 2023-06-03 02:36:20 +0300
  • 59b807189f Kernel: add basic disk cache Bananymous 2023-06-03 02:23:14 +0300
  • fb1c7015b1 Kernel: Shell 'memory' now prints heap memory usage Bananymous 2023-06-03 02:22:18 +0300
  • d4123f62b2 Update README.md Bananymous 2023-06-02 18:43:30 +0300
  • a3f410d1a1 Userspace: create_program creates proper cmake files again Bananymous 2023-06-02 18:42:25 +0300
  • 1d19a4bffe BuildSystem: all scripts have now bash shebang Bananymous 2023-06-02 18:40:24 +0300
  • 271dd91292 BuildSystem: add rule to build libstdc++ Bananymous 2023-06-02 18:39:42 +0300
  • 9bd4d68f9c Kernel: Shell ls and stat now properly show symlinks Bananymous 2023-06-02 18:22:56 +0300
  • 3c3c7826ef LibC: Add simple definition for realloc Bananymous 2023-06-02 17:56:13 +0300
  • 2207357b93 LibC: add __cxa_at_exit() for libc Bananymous 2023-06-02 17:49:21 +0300
  • 3a69768eb0 LibC: remove select() declaration Bananymous 2023-06-02 17:29:09 +0300
  • afb29ff3ec LibC: rename [[noreturn]] to __attribute__((__noreturn__)) Bananymous 2023-06-02 17:28:36 +0300
  • e6f0f891a6 LibC: stdlib.h doesn't seem to typedef wchar_t without __need_wchar_t Bananymous 2023-06-02 17:27:31 +0300
  • 36e5aa4683 LibC: fix INFINITY definition typo Bananymous 2023-06-02 17:26:56 +0300
  • 7738050105 LibC: fix DIR typedef for C code Bananymous 2023-06-02 17:26:38 +0300
  • 4bf11ec349 LibC: complex.h undefs I before defining it Bananymous 2023-06-02 17:13:09 +0300
  • d821012eed LibC: mbstate_t is empty struct Bananymous 2023-06-02 17:10:29 +0300
  • 35c6edd989 LibC: fix sig_atomic_t definition Bananymous 2023-06-02 17:08:43 +0300
  • 633cb4f282 Kernel: VFS now has max link depth of 100 Bananymous 2023-06-02 12:50:40 +0300
  • 4d4d0e26a9 Kernel: Symlinks are now working Bananymous 2023-06-02 11:43:46 +0300
  • feea2d4024 BAN: Fix function call in Vector Bananymous 2023-06-01 00:50:04 +0300
  • 0ffd2a5c1d Kernel: Shell can now list symlinks Bananymous 2023-06-01 00:25:53 +0300
  • 232fdcb82c Kernel: add basic support for symlinks Bananymous 2023-06-01 00:24:45 +0300
  • 0ccc23d544 Kernel: Shell opens standard files Bananymous 2023-05-31 23:14:15 +0300
  • 789ca3db1a BuildSystem: cmake creates /usr/bin Bananymous 2023-05-31 23:13:53 +0300
  • cb359a05dc BuildSystem: link libraries when they change Bananymous 2023-05-31 22:40:15 +0300
  • 14982c137a Userspace: make test program link against libc on change Bananymous 2023-05-31 22:36:47 +0300
  • 0acab11620 LibC: add execl Bananymous 2023-05-31 22:36:26 +0300
  • 02f0239016 Kernel: Cleanup exec code Bananymous 2023-05-31 22:36:05 +0300
  • ab61b49aca Kernel: Add SYS_EXEC syscall Bananymous 2023-05-31 20:57:33 +0300
  • 4da1d6fd27 Kernel: Implement Process::exec() Bananymous 2023-05-31 20:56:29 +0300
  • 909e847369 Kernel: Move userspace entry functions to Process instead of Thread Bananymous 2023-05-31 19:25:53 +0300
  • eafa09fecf Kernel: boot.S maps GiB as single pdpte Bananymous 2023-05-31 00:42:24 +0300
  • 8175348284 Kernel: Fix comment Bananymous 2023-05-31 00:39:06 +0300
  • b2832cb47a Kernel: PageTable destructor works now Bananymous 2023-05-31 00:36:46 +0300
  • 9f499991c8 Kernel: PageTable::create_userspace() now works Bananymous 2023-05-31 00:35:30 +0300
  • 9a416e8ae8 Kernel: kmalloc free error prints the pointer Bananymous 2023-05-31 00:34:56 +0300
  • 911922c6a3 Kernel: RSDP location is now done with virtual addresses Bananymous 2023-05-31 00:34:21 +0300
  • 1f2fd59ad5 Kernel: Physical range now calculates RAM with physical addresses Bananymous 2023-05-31 00:33:44 +0300
  • 708d401d2c Kernel: Heap gets multiboot pointer with P2V Bananymous 2023-05-30 23:57:44 +0300
  • ed0dcacab3 Kernel: Move V2P and P2V to Memory/Types.h Bananymous 2023-05-30 23:57:03 +0300