Commit Graph

  • 8716c8baf4 LibC: remove select() declaration Bananymous 2023-06-02 17:29:09 +03:00
  • 2d67a7153b LibC: rename [[noreturn]] to __attribute__((__noreturn__)) Bananymous 2023-06-02 17:28:36 +03:00
  • 3fcc7c6768 LibC: stdlib.h doesn't seem to typedef wchar_t without __need_wchar_t Bananymous 2023-06-02 17:27:31 +03:00
  • 5d2a062b36 LibC: fix INFINITY definition typo Bananymous 2023-06-02 17:26:56 +03:00
  • e517ff6b6d LibC: fix DIR typedef for C code Bananymous 2023-06-02 17:26:38 +03:00
  • 7296846a81 LibC: complex.h undefs I before defining it Bananymous 2023-06-02 17:13:09 +03:00
  • 6abcb0de9b LibC: mbstate_t is empty struct Bananymous 2023-06-02 17:10:29 +03:00
  • 40f9d9d9bc LibC: fix sig_atomic_t definition Bananymous 2023-06-02 17:08:43 +03:00
  • 7aea8c45f7 Kernel: VFS now has max link depth of 100 Bananymous 2023-06-02 12:50:40 +03:00
  • 7bbdee6cc4 Kernel: Symlinks are now working Bananymous 2023-06-02 11:43:46 +03:00
  • efb3271588 BAN: Fix function call in Vector Bananymous 2023-06-01 00:50:04 +03:00
  • ff548bd898 Kernel: Shell can now list symlinks Bananymous 2023-06-01 00:25:53 +03:00
  • 835d32814d Kernel: add basic support for symlinks Bananymous 2023-06-01 00:24:45 +03:00
  • 79d1f665f2 Kernel: Shell opens standard files Bananymous 2023-05-31 23:14:15 +03:00
  • 9c818d3da0 BuildSystem: cmake creates /usr/bin Bananymous 2023-05-31 23:13:53 +03:00
  • a378e59432 BuildSystem: link libraries when they change Bananymous 2023-05-31 22:40:15 +03:00
  • a75a3f7a5f Userspace: make test program link against libc on change Bananymous 2023-05-31 22:36:47 +03:00
  • 0f412e570c LibC: add execl Bananymous 2023-05-31 22:36:26 +03:00
  • 1daa1f5611 Kernel: Cleanup exec code Bananymous 2023-05-31 22:36:05 +03:00
  • 24a190d1f7 Kernel: Add SYS_EXEC syscall Bananymous 2023-05-31 20:57:33 +03:00
  • b48b239882 Kernel: Implement Process::exec() Bananymous 2023-05-31 20:56:29 +03:00
  • 5fb69300ca Kernel: Move userspace entry functions to Process instead of Thread Bananymous 2023-05-31 19:25:53 +03:00
  • dcb23f686f Kernel: boot.S maps GiB as single pdpte Bananymous 2023-05-31 00:42:24 +03:00
  • 650570e57d Kernel: Fix comment Bananymous 2023-05-31 00:39:06 +03:00
  • 1f5a36f074 Kernel: PageTable destructor works now Bananymous 2023-05-31 00:36:46 +03:00
  • aeaf2cd3f1 Kernel: PageTable::create_userspace() now works Bananymous 2023-05-31 00:35:30 +03:00
  • 959c0fc572 Kernel: kmalloc free error prints the pointer Bananymous 2023-05-31 00:34:56 +03:00
  • e3d3788f28 Kernel: RSDP location is now done with virtual addresses Bananymous 2023-05-31 00:34:21 +03:00
  • 850b7f27a2 Kernel: Physical range now calculates RAM with physical addresses Bananymous 2023-05-31 00:33:44 +03:00
  • 0939f23b04 Kernel: Heap gets multiboot pointer with P2V Bananymous 2023-05-30 23:57:44 +03:00
  • 67886b0c5a Kernel: Move V2P and P2V to Memory/Types.h Bananymous 2023-05-30 23:57:03 +03:00
  • 56eb6fb4ce Kernel: PageTable::map_range_at maps correctly the last page Bananymous 2023-05-30 23:56:07 +03:00
  • 81cf389754 Kernel: Booting with higher half kernel gets to Heap initialization Bananymous 2023-05-30 22:21:12 +03:00
  • 0907965dc5 Kernel: start work on higher half kernel Bananymous 2023-05-30 08:00:17 +03:00
  • 79315d318c Toolchain: lib gcc is wuild with mcmodel=large Bananymous 2023-05-30 07:59:41 +03:00
  • e8f820ef8d LibC: Fix some headers to make gcc build again Bananymous 2023-05-30 01:17:45 +03:00
  • 210d90ec79 Kernel: We now identity map full GiB in boot.S Bananymous 2023-05-30 00:08:52 +03:00
  • 8bea18a6f2 Kernel: Remove unused includes of CriticalScope Bananymous 2023-05-29 21:15:55 +03:00
  • 861966eed6 Kernel: Remove unnecessary usages of PageTableScope Bananymous 2023-05-29 21:10:48 +03:00
  • 5bb1f2a48c Kernel: Rename MMU to PageTable Bananymous 2023-05-29 21:06:09 +03:00
  • fb17af4844 Kernel/LibC: opening standard files is done in libc Bananymous 2023-05-29 20:21:19 +03:00
  • 9a8512887f LibC: open() now just returns syscall(SYS_OPEN, ...) Bananymous 2023-05-29 20:19:17 +03:00
  • b8ec8918b7 Kernel: We can't lock the MMU lock in load() Bananymous 2023-05-29 19:39:35 +03:00
  • ff83f967d8 Kernel: Make RecursiveSpinLock thread safe Bananymous 2023-05-29 19:38:09 +03:00
  • 998999a755 Kernel: Add SYS_SLEEP Bananymous 2023-05-28 22:34:48 +03:00
  • 09666adc53 Kernel: fork() now copies allocations through FixedWidthAllocator Bananymous 2023-05-28 21:34:35 +03:00
  • ec73db0057 Kernel: Move page macros to Types.h Bananymous 2023-05-28 21:03:08 +03:00
  • 833642d405 Kernel: ISR will now crash userspace process instead of panicing kernel Bananymous 2023-05-28 20:53:10 +03:00
  • f04399c3a0 Kernel: fork() now copies allocation done through GeneralAllocator Bananymous 2023-05-28 20:37:39 +03:00
  • f2d767b799 Kernel: Add bareboness fork() function Bananymous 2023-05-28 18:08:26 +03:00
  • 3e93dae53c Kernel: Add invalidate() to MMU Bananymous 2023-05-28 18:05:30 +03:00
  • 187bb046aa Kernel: fix MMU::map_page_at() Bananymous 2023-05-28 17:57:05 +03:00
  • dd4973ac35 LibC: fputs uses fputc instead of putc Bananymous 2023-05-28 16:25:26 +03:00
  • b021d3eebd Kernel: Processes and Threads use VirtualRange memory allocations Bananymous 2023-05-28 16:24:41 +03:00
  • 15842db83e Kernel: Move PhysicalRange to its own file and add VirtualRange Bananymous 2023-05-28 16:21:45 +03:00
  • 869de7283f Kernel: MMU::get() is now MMU::kernel Bananymous 2023-05-28 16:18:18 +03:00
  • a2ee543fa1 Shell: we now link BAN (we can't use it though) Bananymous 2023-05-26 22:24:17 +03:00
  • eb24d32383 Kernel: Directory listing is working again Bananymous 2023-05-26 22:23:56 +03:00
  • 565e3db22d Kernel: kmalloc debug_dump is marked [[maybe_unused]] Bananymous 2023-05-26 22:23:17 +03:00
  • faf14b880e LibC: Rewrite all the headers. Bananymous 2023-05-26 22:21:07 +03:00
  • faa7bc6043 BAN: libban is now build into library dir Bananymous 2023-05-22 20:19:21 +03:00
  • 03c64b950b BAN: Errors.h can be included from userspace Bananymous 2023-05-22 19:54:59 +03:00
  • 27147790fd Userspace: Start work on shell Bananymous 2023-05-16 19:22:46 +03:00
  • 1658e925f2 Kernel: Add bareboness possibility to set termios Bananymous 2023-05-16 19:22:10 +03:00
  • 82dcec9576 Buildsystem: Fix userspace link order Bananymous 2023-05-16 19:21:07 +03:00
  • 80d9f6131b Kernel/LibC: move file offset back to kernel Bananymous 2023-05-16 14:14:47 +03:00
  • e0a72defa2 Kernel: Add argc and argv to process entry Bananymous 2023-05-16 00:27:49 +03:00
  • e0a7e242f8 Kernel: Add MMUScope Bananymous 2023-05-16 00:25:30 +03:00
  • 6acb86c14b Kernel: MMU keeps track of the current Bananymous 2023-05-16 00:26:13 +03:00
  • 8ec675cca6 LibC: fix bugs with printf Bananymous 2023-05-15 22:02:33 +03:00
  • 591d03de95 BAN: add is_arithmetic and is_signed to Traits.h Bananymous 2023-05-15 20:26:29 +03:00
  • ec316391c5 Kernel: argc is passed as zero to userspace Bananymous 2023-05-11 18:27:31 +03:00
  • 7543fadfa8 LibC: printf now prints 0 as integer Bananymous 2023-05-11 18:20:37 +03:00
  • bbaf1223f3 BuildSystem: add helper to create userspace programs Bananymous 2023-05-11 18:10:06 +03:00
  • 177b205c48 BuildSystem: userspace has cmake target Bananymous 2023-05-11 16:19:53 +03:00
  • 729ff267d7 LibC: add function declarations to sys/stat.h Bananymous 2023-05-11 01:48:33 +03:00
  • d9be14e1fb LibC: add function declarations to dirent.h Bananymous 2023-05-11 01:42:52 +03:00
  • 8a9f9b07e7 LibC: add definitions to math.h Bananymous 2023-05-11 01:40:42 +03:00
  • c989a01913 LibC: add defines in stdio.h Bananymous 2023-05-11 01:39:16 +03:00
  • 5188efcc57 LibC: add function declarations to unistd.h Bananymous 2023-05-11 00:18:05 +03:00
  • c05a5b796b LibC: add function declarations to string.h Bananymous 2023-05-11 00:00:16 +03:00
  • f0058e67c2 LibC: add function declarations to math.h Bananymous 2023-05-10 23:56:28 +03:00
  • 508d6311de LibC: define all errnos and strerror{name,desk}_np Bananymous 2023-05-10 23:51:26 +03:00
  • 7c6bf40d0d LibC: add function declarations to time.h Bananymous 2023-05-10 23:29:10 +03:00
  • a74343c589 LibC: add more types to sys/types.h Bananymous 2023-05-10 23:28:56 +03:00
  • d188576ef3 LibC: Add dummy signal.h Bananymous 2023-05-10 23:20:27 +03:00
  • d922c5e1d0 LibC: add toupper, tolower in ctype.h Bananymous 2023-05-10 23:13:56 +03:00
  • 0adf24fcad LibC: Add dummy setjmp.h Bananymous 2023-05-10 23:00:53 +03:00
  • 80e13965d9 LibC: Add dummy locale.h Bananymous 2023-05-10 22:56:41 +03:00
  • 36707ec87a LibC: implement printf conversions e, E, f, F Bananymous 2023-05-10 22:36:03 +03:00
  • 5f89f083a2 LibC: add math.h with floorl Bananymous 2023-05-10 22:35:20 +03:00
  • 0d9422ead8 BAN: add pow, log2, log10, log in math Bananymous 2023-05-10 19:03:33 +03:00
  • cae0a1cc60 LibC: add working f modifier to printf Bananymous 2023-05-10 15:41:11 +03:00
  • 480d92fce5 LibC: add better error string support Bananymous 2023-05-10 02:22:31 +03:00
  • 49fe3d0d4f LibC: add probably functional *printf Bananymous 2023-05-10 02:00:28 +03:00
  • ff2e2937a5 Kernel: Remove offset from OpenFileDescriptor Bananymous 2023-05-09 20:31:22 +03:00
  • 0cc1fb53d5 LibC: Fix bug in *printf Bananymous 2023-05-09 20:30:12 +03:00
  • 512be884ed Kernel: Add barebones GeneralAllocator for >4096B Bananymous 2023-05-08 22:10:49 +03:00
  • f1667b398a Kernel: FixedWidthAllocator operates on MMU Bananymous 2023-05-08 00:06:56 +03:00
  • b0ec0f1a1a Kernel: We add FixedWidthAllocators on demand Bananymous 2023-05-07 23:57:01 +03:00