c68d040484
Scheduler: Make sure we are in the kernel's address space when resuming a blocked process
2022-10-30 19:10:46 +01:00
b8296eb92d
su: Also set group ID
2022-10-28 17:55:56 +02:00
16dc227a05
Kernel: Add UID and GID fields to Task
2022-10-28 17:06:13 +02:00
fcf53ef6a5
Kernel: Make waitpid() block by default unless WNOHANG is specified
2022-10-27 17:05:42 +02:00
af46b8d9ac
Kernel: Cleanup file descriptor validation
2022-10-25 18:35:17 +02:00
da61e3648f
Kernel: Implement blocking reads
...
This is a huge step forward!! bc actually runs now, without echo or backspace, but it runs!!
2022-10-21 21:26:19 +02:00
c2fa4f380d
Kernel: Use the new Task member functions
2022-10-17 17:07:25 +02:00
891651f2d6
Task: Move functions operating on Task to member functions
...
Also, add an alloc_fd_greater_than_or_equal() function, for use in fcntl(F_DUPFD)
2022-10-17 17:00:07 +02:00
3eb1bff2e9
Task: add an alloc_fd() function
2022-10-15 10:45:12 +02:00
a6f0a7056f
Scheduler: Set the user_task field in a Task at creation time
...
We were previously looking at its segment registers to see if they were user-like, but this method is bad.
What is the task was executing a system call?
So now, we store that value at creation time.
2022-10-12 17:07:39 +02:00
1ecd24f5d6
Kernel: Add SSE support (enable SSE on boot and save context (user tasks only) on task switch)
2022-10-02 18:53:54 +02:00
1c12cf016e
Add a Scheduler.
...
Finally.
Just Round Robin with sleeping, but it's still awesome. I think this can finish v0.3, with a few adjustments.
2022-09-20 19:58:04 +02:00