Commit Graph

259 Commits

Author SHA1 Message Date
Ali Mashtizadeh
51b61e3316 Use PROT/MAP flags rather than PTEs to improve portability. 2023-10-23 21:53:07 -04:00
Ali Mashtizadeh
d1a7bc9020 Rename cpu definitions to cpu.h and cpuop.h 2023-10-23 16:27:55 -04:00
Ali Mashtizadeh
bd44784c5f Cleanup comments and change CV_WakeAll -> CV_Broacast 2023-10-16 15:07:17 -04:00
Ali Mashtizadeh
32cd3ba42b Add WIFEXITED 2023-10-02 19:53:08 -04:00
Ali Mashtizadeh
032bf32d88 Remove accidently committed debugging 2023-10-02 19:46:25 -04:00
Ali Mashtizadeh
fb3348128e Add sys/wait.h 2023-10-02 19:34:24 -04:00
Ali Mashtizadeh
63f2ae716e Add spawn and wait/waitpid functions into libc. 2023-10-02 19:33:47 -04:00
Ali Mashtizadeh
21a30db5d3 Prevent ls from running on files 2023-10-01 20:47:09 -04:00
Ali Mashtizadeh
64818e1337 Reduce default log level 2023-10-01 20:30:12 -04:00
Ali Mashtizadeh
e2be315cfc Reentrant strtok for kernel debugger 2023-10-01 19:47:26 -04:00
Ali Mashtizadeh
78768d172a Implementing strtok and adding strtok to the shell 2023-10-01 19:36:02 -04:00
Ali Mashtizadeh
2695dcf2b0 Reorganize the kernel binary to support loading a non-stripped kernel. 2023-09-22 21:37:37 -04:00
Ali Mashtizadeh
56bef77cce Fix backspace emulation in the serial console and in fgets() 2023-09-22 21:07:27 -04:00
Ali Mashtizadeh
b39acb2afd Cleanup docs in assembly routines. 2023-09-10 16:36:43 -04:00
Ali Mashtizadeh
ce4bc130af Cleanup machine.c 2023-09-10 16:32:03 -04:00
Ali Mashtizadeh
ddab13b829 pmap 2023-09-10 16:31:44 -04:00
Ali Mashtizadeh
631603cab3 Fix up documentation 2023-09-10 16:12:25 -04:00
Ali Mashtizadeh
22704368cb Documentation cleanup throughout the kernel 2023-09-09 20:18:08 -04:00
Ali Mashtizadeh
ac1d7e05ee Cleanup documentation add doxygen and README. 2023-09-09 18:15:41 -04:00
Ali Mashtizadeh
a58001cd9e Cleanup and comments in process and thread code and bonus asserts. 2023-09-06 13:51:47 -04:00
Ali Mashtizadeh
a9acaf0489 Cleanup pmapdump* commands 2023-09-06 13:46:47 -04:00
Ali Mashtizadeh
4e7deee132 Fix warning 2023-09-05 22:19:11 -04:00
Ali Mashtizadeh
3bde8dd084 Cleaning up a pile of bugs 2023-09-05 22:18:10 -04:00
Ali Mashtizadeh
b508aaca27 Fix handle use after free 2023-09-05 21:20:02 -04:00
Ali Mashtizadeh
fde5d543a6 Merge branch 'master' of ssh://review.rcs.uwaterloo.ca:77/source/castoros 2023-09-05 17:47:58 -04:00
Ali Mashtizadeh
09f3e260ff NMI now triggers the debugger 2023-09-05 17:47:52 -04:00
Emil Tsalapatis
d0f236206a do not remove process from parent zombie list during Process_Destroy 2023-09-05 17:26:34 -04:00
Emil Tsalapatis
1c88ad598c wake up procs in wait channel during Mutex_Unlock 2023-09-05 16:37:22 -04:00
Ali Mashtizadeh
e991129de9 Free pages in PMap_Destroy and add extra assertions to catch errors in PAlloc. 2023-09-04 16:03:34 -04:00
Ali Mashtizadeh
3e5eeacf09 Add extra ASSERTs to PAlloc_AllocPage 2023-09-03 14:56:44 -04:00
Ali Mashtizadeh
feb45381ba OSWait: Fix waiting on a specific PID 2023-09-03 14:54:14 -04:00
Ali Mashtizadeh
72341c3c8b Fix WaitChannel_Wake to do nothing if there's no threads to wake up. 2023-09-02 18:41:20 -04:00
Ali Mashtizadeh
d3349d9eaa Adding kernel side Mutex, CV, and testing it with Exit/Wait. 2023-09-02 17:51:10 -04:00
Ali Mashtizadeh
8ce9e523e0 Print currently running threads as well for debugging. 2023-08-30 15:50:41 -04:00
Ali Mashtizadeh
f2b35697a5 Remove warning and cleanup console output. 2023-08-30 13:03:55 -04:00
Ali Mashtizadeh
52377a980c Add waitchannels into the kernel. 2023-08-30 12:49:23 -04:00
Ali Mashtizadeh
67578f14b7 Add lock and malloc annotations to the code. 2023-08-30 12:45:51 -04:00
Ali Mashtizadeh
562cfeec44 x86 ide: Remove unlock in IDE_Identify when failing to select the drive. 2023-08-27 16:57:38 -04:00
Ali Mashtizadeh
91e2e76c91 Add printf checking 2023-08-22 22:03:53 -04:00
Ali Mashtizadeh
06e247a401 Add NO_RETURN to abort and assert functions. 2023-08-22 21:53:26 -04:00
Ali Mashtizadeh
5295c3c8d2 Fix warnings from old style C code. 2023-08-22 18:02:12 -04:00
Ali Mashtizadeh
1df34b2d2e Cleanup loader and unify init and spawn paths. 2023-08-21 22:06:57 -04:00
Ali Mashtizadeh
1676ae4056 Add sched and process to kernel build. 2023-08-21 18:39:26 -04:00
Ali Mashtizadeh
ff7c6309b7 Split up thread.c into thread, process and scheduler files. 2023-08-21 18:38:51 -04:00
Ali Mashtizadeh
e4ca21fa2e Destroy spinlock when destroying the semaphore 2023-08-21 18:36:54 -04:00
Ali Mashtizadeh
1a67c4841b Fix argument passing and cleanup sysctl 2023-08-21 16:57:54 -04:00
Ali Mashtizadeh
765bde0c82 Add basic breakpoint support to kdb 2023-08-21 16:42:29 -04:00
Ali Mashtizadeh
0804766a40 Cleanup logging throughout kernel 2023-08-20 19:08:26 -04:00
Ali Mashtizadeh
45928b97a8 Document initialization on AMD64 2023-08-20 19:06:38 -04:00
Ali Mashtizadeh
c8f6294511 Fix address printing in Debug_HexDump 2023-08-20 19:05:59 -04:00