Commit Graph

  • 59237ab375 sb16: cleanup and add stereo support ring3 rusya 2026-05-20 15:24:01 +03:00
  • a77b51699c sb16: finally make the driver work rusya 2026-05-10 23:11:54 +03:00
  • 312c543510 sb16: continue trying to add a driver rusya 2026-05-09 15:21:07 +03:00
  • 59b775457d sb16: start adding sb16 driver rusya 2026-05-09 14:51:54 +03:00
  • ab2da499da mm: kill current task on usermode pagefault and fix destroy_page_dir destroying kernel space mappings rusya 2026-04-15 23:44:11 +03:00
  • 64d5cd1d2f tasking: prevent many page faults rusya 2026-04-16 15:16:57 +03:00
  • 560003b6e3 syscalls: implement statx syscall rusya 2026-01-31 20:51:47 +03:00
  • 93fe3a179b syscalls: stop freezing on brk syscall where ebx < current brk rusya 2026-01-31 20:49:52 +03:00
  • 761789a42e get rid of useless types.h header rusya 2026-01-16 17:59:26 +03:00
  • 64f86a961d syscalls: let open syscall work with directories rusya 2026-01-16 17:46:00 +03:00
  • 466c1a61af tasking: don't forget to free the cwd on a dead process rusya 2026-01-13 23:29:49 +03:00
  • 9fe2331ca7 syscalls: implement stat and fstat syscalls rusya 2026-01-13 23:29:16 +03:00
  • 4cef109e90 add cdrom-debug makefile target rusya 2025-12-10 23:48:06 +03:00
  • 3417fd7d13 syscalls: fix execve crash and heap-related problems rusya 2025-12-10 23:29:18 +03:00
  • 9e68f71cd0 mm: make page bitmap smaller and stop whining if a page was already free in clear_bit rusya 2025-12-10 00:48:35 +03:00
  • 53e380e510 syscalls: fix execve to use heap and make it work better with fork rusya 2025-12-10 00:47:46 +03:00
  • 51dc254aa3 mm: improve stability by making the page bitmap full by default, also implement liballoc_lock and liballoc_unlock rusya 2025-12-09 23:35:15 +03:00
  • 2a7f62e275 mm: make get_physaddr return NULL if PD or PT is not present rusya 2025-12-09 23:34:15 +03:00
  • 24caf9c8aa syscalls: fix execve syscall making GPF rusya 2025-11-23 15:55:18 +03:00
  • a358d0b1ac syscalls: hopefully fix fork syscall rusya 2025-11-23 15:23:38 +03:00
  • c8036a9aae screen: fix backspace handling rusya 2025-11-20 21:20:11 +03:00
  • 697029016e syscalls: hopefully fix chdir syscall breaking sometimes rusya 2025-11-20 21:08:15 +03:00
  • 1f90fb5825 screen: implement cursor positioning rusya 2025-11-20 20:12:52 +03:00
  • 0b0492e756 syscalls: stop requiring a trailing slash for directories in chdir and vfs: emove some debug_log calls in follow_path rusya 2025-11-20 20:01:55 +03:00
  • 827189593c syscalls: make chdir follow path from the current->cwd and return 0 if there's no error rusya 2025-11-20 16:12:40 +03:00
  • a66a5da039 add creation of directory /katau/huy into the makefile rusya 2025-11-20 16:11:16 +03:00
  • 0de9f026b6 vfs: make vfs_read_file_by_path return error on error rusya 2025-11-20 16:10:49 +03:00
  • c17c23ddd5 tasking: make idle task halt rusya 2025-11-20 15:53:57 +03:00
  • 7dc522eb3d syscalls: remove excessive debug_log from sys_brk rusya 2025-11-18 17:53:17 +03:00
  • 68033325d2 implement prover stdin reading rusya 2025-11-18 15:49:38 +03:00
  • ccf954e1d6 mm: add a warning in map_page if a page is already mapped rusya 2025-11-05 21:03:06 +03:00
  • 57d2931b96 mm: fix mapping memory in non-present PDEs rusya 2025-11-05 20:52:58 +03:00
  • 561de6a4e3 syscalls: hopefully implement chdir syscall rusya 2025-10-30 22:29:06 +03:00
  • f4b0429062 syscalls: implement getcwd syscall rusya 2025-10-30 20:26:28 +03:00
  • 26c8280059 syscalls: fix page count for mapping in sys_execve and make caller run coreutils rusya 2025-10-07 23:41:27 +03:00
  • 88c1936e83 syscalls: make execve and vfs_read_file_by_path use follow_path, fix vfs_read_file_by_path name, fix execve-related pagefault rusya 2025-10-07 23:11:20 +03:00
  • 8c26f54d28 update buildroot-config rusya 2025-10-01 21:09:56 +03:00
  • 05fa945421 continue working on correct shell loading rusya 2025-10-01 20:05:35 +03:00
  • 2019f87b14 make exec_from_file take l9660_file* instead of a filename rusya 2025-09-23 20:13:34 +03:00
  • f697fab390 vfs: add follow_path function rusya 2025-09-23 19:38:14 +03:00
  • 1fb777adb0 improve makefile to work with buildroot iso rusya 2025-09-18 14:54:27 +03:00
  • 3ca60aea00 fix buildroot config rusya 2025-09-18 14:53:27 +03:00
  • bacf6f6782 update buildroot config to have linux use arch default config rusya 2025-09-16 23:02:59 +03:00
  • 2c8b5d4752 syscalls: implement argv and envp handling in execve rusya 2025-09-16 22:41:32 +03:00
  • 7c2f3735bf add buildroot config rusya 2025-09-14 18:12:39 +03:00
  • 91e0379fc9 syscalls: implement basic execve syscall, no argc, argv, envp support yet rusya 2025-09-14 16:58:19 +03:00
  • 4c26652ee2 syscalls: remove start_time from sys_nanosleep rusya 2025-09-03 16:49:52 +03:00
  • 63938e1acd syscalls: fix nanosleep, thanks to gemini, sorry for that rusya 2025-09-03 16:35:07 +03:00
  • 5b922ea773 syscalls: start trying to add nanosleep syscall rusya 2025-09-02 00:15:29 +03:00
  • a459751453 apic: init apic timer using pit, not precise on qemu rusya 2025-09-01 23:22:33 +03:00
  • 982f1a5fae apic: make msr-related function names consistent with the overall style rusya 2025-08-30 21:11:51 +03:00
  • 649c4c56a4 apic: fix timer and keyboard handling rusya 2025-08-30 20:57:44 +03:00
  • fb8dd43dd3 start implementing APIC utils rusya 2025-08-29 18:35:22 +03:00
  • 9e21167bd3 vfs: put test_iso9660 into vfs.c rusya 2025-08-29 17:08:06 +03:00
  • 7c43956ebe vfs: introduce adjustable ISO9660 buffer length for file reading rusya 2025-08-22 17:50:42 +03:00
  • 9bb6d9d1a5 screen: implement cursorhome terminal command rusya 2025-08-22 17:43:41 +03:00
  • fffa4b7699 kmain: allocate first 16 pages for stack rusya 2025-08-20 21:01:09 +03:00
  • 92511dbcd7 tasking: fix stack corruption on the scheduler trigger rusya 2025-08-20 20:59:08 +03:00
  • 9fdc551308 syscalls: improve working with files using vfs rusya 2025-08-17 16:03:41 +03:00
  • caa4005990 exec_from_file and vfs: fix reading file rusya 2025-08-17 15:02:09 +03:00
  • 0628470a7c still trying to read a file rusya 2025-08-16 21:43:42 +03:00
  • ce6e9642ee continue working on implementing lib9660 into the kernel rusya 2025-08-16 19:41:48 +03:00
  • 287ac77422 add lib9660 and test_iso9660 function rusya 2025-08-14 21:41:54 +03:00
  • ea39cb85f3 add atapi driver rusya 2025-08-14 21:13:10 +03:00
  • d017f0b245 syscalls: continue making brk syscall rusya 2025-07-31 17:54:20 +03:00
  • df45ffe2ce tasking: add brk to process struct rusya 2025-07-31 17:02:56 +03:00
  • 992d82c6d4 syscalls: make use of stderr and fix chdir syscall return value rusya 2025-07-18 22:43:34 +03:00
  • 3ae26ed88a syscalls: fix cwd-related stuff rusya 2025-07-18 21:02:54 +03:00
  • 359e5c6d78 syscalls: add chdir and getcwd syscalls, not tested yet rusya 2025-07-16 15:42:35 +03:00
  • aac4375b8e syscalls: add getpid syscall rusya 2025-07-16 15:21:19 +03:00
  • 8bc7e1d523 syscalls: fix handle_syscall function performing more that 1 syscall at a time rusya 2025-07-09 17:23:18 +03:00
  • a01120cfe4 tasking: switch tss.esp0 on switching process rusya 2025-07-09 16:44:19 +03:00
  • 5b5de55919 i'm so close rusya 2025-07-08 18:53:06 +03:00
  • a9f8e96ac9 fuck that fork syscall rusya 2025-07-08 18:42:33 +03:00
  • c2293b8996 syscalls: close to being done with fork syscall rusya 2025-07-07 22:22:10 +03:00
  • 7f861a8b92 mm: fix copy_page_dir rusya 2025-07-07 20:37:48 +03:00
  • e793e45854 syscalls: continue working on fork syscall rusya 2025-07-07 00:19:35 +03:00
  • 2a7baf1184 syscalls: start adding fork syscall, not done yet rusya 2025-07-06 22:49:05 +03:00
  • cbd2c52c20 a little cleanup rusya 2025-06-24 17:41:38 +03:00
  • e3eba88958 mm: fix page fault on process exit rusya 2025-06-24 17:08:22 +03:00
  • bfdd3b6b6a mm: replace some printfs with debug_log rusya 2025-06-23 23:47:29 +03:00
  • b769ac0a58 tasking: continue fixing task_kill rusya 2025-06-23 23:36:14 +03:00
  • 29de6e6f43 tasking: a small cleanup rusya 2025-06-23 00:32:23 +03:00
  • c047dd687b tasking: implement task_kill function, thanks deepseek rusya 2025-06-23 00:05:21 +03:00
  • 70d6aacb91 syscalls: start adding exit syscall, not done yet rusya 2025-06-21 18:54:52 +03:00
  • bb096f826a syscalls: implement read syscall rusya 2025-06-21 17:09:34 +03:00
  • bf7d96865a syscalls: done with open, write, close syscalls rusya 2025-06-20 23:06:01 +03:00
  • 4ccae473ca syscalls: start implementing some basic syscalls rusya 2025-06-20 21:59:08 +03:00
  • a9789b7f57 tasking: fix syscall handling, use debug_log instead of printf in some places rusya 2025-06-19 18:31:15 +03:00
  • 93f174827b tasking: start handling syscalls rusya 2025-06-19 17:58:49 +03:00
  • 5fa2393fd6 tasking: fix ELF file execution rusya 2025-06-07 18:18:05 +03:00
  • 9f721a72b7 tasking: fix virtual mapping count in exec_from_file rusya 2025-06-07 15:07:26 +03:00
  • 2408b67ccc tasking: continue working on executing ELF files rusya 2025-06-06 20:20:45 +03:00
  • ea6733fd46 kmain: fix heap initialization and use kvalloc instead of alloc_page rusya 2025-06-06 14:16:47 +03:00
  • 01155234c6 tools: add elf tool rusya 2025-06-06 00:39:21 +03:00
  • 541bc7172f mm: implement heap with liballoc, might review later rusya 2025-06-06 00:36:22 +03:00
  • d1ac41deeb tasking, mm: remove unused functions and page_directory field from the Task struct rusya 2025-06-01 14:04:49 +03:00
  • 5f87e55067 tasking: make jump_usermode2 lock the scheduler & test the second user task rusya 2025-06-01 13:53:06 +03:00
  • 8fea7a8ec6 tasking: isolate ring3 tasks rusya 2025-06-01 01:24:31 +03:00
  • f47a4a451d tasking: fix separate page directory creation for new ring0 tasks rusya 2025-06-01 00:15:06 +03:00