|
293a992133
|
kernel: Add a kernel_wait_for_event() function to avoid weird calls to kernel_wait in kthreads
continuous-integration/drone/push Build is passing
|
2023-05-04 23:43:00 +02:00 |
|
|
3a1c22bb93
|
kernel: Add keyboard combinations for debug information dumps
Ctrl+Alt+E: Dump threads
Ctrl+Alt+M: Dump memory usage
Ctrl+Alt+H: Dump heap state
|
2023-05-04 23:32:48 +02:00 |
|
|
96f3d29d37
|
kernel: Tell the reap thread to run when it's needed, instead of checking every 200 ms
|
2023-05-04 23:06:00 +02:00 |
|
|
42eb0a1d74
|
kernel: Freeze waitpid()'s calling thread until a child tells us it's done, instead of polling it every 10 ms
|
2023-05-04 23:03:31 +02:00 |
|
|
4616997f5b
|
kernel: Store a thread's parent directly instead of its parent's PID
|
2023-05-04 22:58:04 +02:00 |
|
|
52ce4b28aa
|
Scheduler: Remove redundant check in for_each_child
continuous-integration/drone/push Build is passing
|
2023-04-28 15:22:16 +02:00 |
|
|
7b4cfd52cd
|
Scheduler: Don't search threads spawned before the current thread to find children
continuous-integration/drone/push Build is passing
Children will always be spawned later (and thus have a higher PID) than their parent.
|
2023-04-28 15:19:01 +02:00 |
|
|
bcdec62f51
|
kernel: Allow returning early from Scheduler::for_each_child
|
2023-04-28 15:13:53 +02:00 |
|
|
77dcfab5ef
|
kernel: Run the initialization process in a thread
continuous-integration/drone/push Build is passing
This way we can give it more stack and also reclaim it later!
|
2023-04-28 13:23:07 +02:00 |
|
|
d48d0efb07
|
kernel: Add names to threads
continuous-integration/drone/push Build is passing
|
2023-03-24 21:05:38 +01:00 |
|
|
7efcc06090
|
kernel+init+sh: Implement parent processes and waitpid(-1, ...)
continuous-integration/drone/push Build is passing
|
2023-03-24 17:37:04 +01:00 |
|
|
b6fb5f3dfe
|
kernel+libc: Implement waitpid()
continuous-integration/drone/push Build is passing
|
2023-03-23 22:42:24 +01:00 |
|
|
54f2d35416
|
kernel: Add the fork() system call
|
2023-03-18 23:45:48 +01:00 |
|
|
ff468db675
|
kernel/ELF+Scheduler: Use VFS instead of TarStream
continuous-integration/drone/push Build is passing
|
2023-03-11 10:34:08 +01:00 |
|
|
a33a72915e
|
Scheduler: Creation, destruction and switching of userspace tasks :))
From a TarStream. Not optimal, but OK for the moment.
|
2023-01-05 21:52:26 +01:00 |
|
|
5854e5e530
|
Add newlines at end-of-file
|
2023-01-02 13:07:29 +01:00 |
|
|
a11a5dec1f
|
DoublyLinkedList -> LinkedList
continuous-integration/drone/push Build is passing
|
2022-12-19 12:43:23 +01:00 |
|
|
92a7004c2f
|
Move the reaping logic to Scheduler
|
2022-12-19 12:24:15 +01:00 |
|
|
751377de0a
|
Scheduler: Make it possible for a thread to stop existing
continuous-integration/drone/push Build is passing
|
2022-12-18 18:43:34 +01:00 |
|
|
d93d95f23c
|
Add sleeping mechanism
|
2022-12-07 16:11:59 +00:00 |
|
|
13f5d09cfd
|
Add a Scheduler!!
|
2022-12-07 16:11:59 +00:00 |
|