aboutsummaryrefslogtreecommitdiff
path: root/sys/kern
AgeCommit message (Collapse)Author
2024-09-09kernel: vfs: Refactor fd related codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-08-21kernel: vfs: Add sys_close()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-08-21kernel: Add ref count to filedescIan Moffett
Keep track of how many threads are currently using the file descriptor. This will be useful when fork() is implemented. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-08-12kernel: Remove extra newlineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-08-12kernel: Add initial support for signalsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-24kernel: device: Add read/write stubsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22kernel: sched: Implement MLFQAptRock327
Implements the Multilevel Feedback Queue scheduling algorithm. Signed-off-by: AptRock327 <dominik032009@gmail.com> Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22kernel: vfs_syscalls: Add sys_read()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22kernel: vfs_syscalls: Remove unused varsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22kernel: vfs_syscalls: Add sys_open()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-18kernel: exit: Drop loadmap entries with bad rangeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-18kernel: Add copyin() and copyout()Ian Moffett
Add copyin() and copyout() for copying from userspace to kernel space and vice versa. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-18kernel: elf: Keep track of program start and endIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-18kernel: elf: Fix loadmap indexingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-17kernel: exit: Unload thread in exit1()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-17kernel: exec: Save program state within threadIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-17kernel: Call sched_enter() instead of cpu_reboot()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-16kernel: exec: Save base vaddr in exec_rangeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-15kernel: fork: Pre-increment nthreadsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-12kernel: Add support for devfsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-12kernel: Add device layerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-11kernel: namei: Allow lookups farther than '/'Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-11kernel: vfs: Implement mountpoint namingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-10kernel: Init driversIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-09kernel: Call vm_init() before acpi_init()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-07kernel/amd64: Add serial debug loggingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-04kernel: init_main: Startup PID 1Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-04kernel/amd64: Add syscall support + SYS_exitIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-02kernel: proc: Remove PROC_INEXEC flagIan Moffett
This commit removes handling of the PROC_INEXEC flag as md_td_kick() takes care of the transfer to user mode in a cleaner way. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-02kernel/amd64: Handle the user GS segment registerIan Moffett
This commit introduces usage of swapgs to switch out the GS register with the user GS register. An md_td_kick() function is also introduced to start up user threads. The this_cpu() function uses the GS register to read the current CPU structure using a new "self" field. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-01kernel: exec: Add execve()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-30kernel: sched: Add exit1()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-29kernel: elf: Cleanup error handlingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-29kernel: elf: Fix memory leakIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-29kernel: elf: nd.vp -> vpIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-28kernel: fork: Ensure 'newproc' is zeroedIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-28kernel: elf: Add ELF64 loaderIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-28kernel: vfs: Add vnode refcountIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-28kernel: vfs: Don't destroy vnode if errorIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-28kernel/amd64: Focus md_td_init() to fork MD codeIan Moffett
Rename md_td_init() to md_fork() and change up what it does to keep things as simple as possible. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-25kernel: vfs: Add getattr vopIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-25kernel: vfs: Keep style consistentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-25kernel: sched: Remove "TODO" from sched_switch()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-23kernel: Init proc0Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-23kernel: Add fork1()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-23kernel: sched: Add PCB and context switchingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-19kernel: Add initramfs and initial VFS codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-08kernel/amd64: Prepare for schedulerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-08kernel/amd64: Pass CPU info to cpu_startup()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-06-05kernel: init_main: Init virtual memory subsystemIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>