Note: this is probably 25% broken, but it works right now as written, so I hope it all works.
- Added a new scheduler header file (scheduler.h) defining task structures, scheduling policies, and signal handling mechanisms.
- Integrated scheduling functions into the syscall interface, including SYS_GETPID, SYS_GETPPID, SYS_EXIT, SYS_SCHED_YIELD, SYS_NICE, SYS_KILL, SYS_SIGACTION, SYS_SIGPROCMASK, SYS_SCHED_GETSCHEDULER, and SYS_SCHED_SETSCHEDULER.
- Updated syscall handler to manage new scheduling-related syscalls and signal actions.
Signed-off-by: kaguya <vpshinomiya@protonmail.com>
Replace the legacy userpsace Makefile with the CMake build system for the kernel
The userspace is the only one still utilizing manual Makefiles, it will eventually be CMakified
Signed-off-by: kaguya <vpshinomiya@protonmail.com>