summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-11-04kernel: descrip: Add support for fd duplicationIan Moffett
Sometimes we may need to duplicate a file descriptor and create a new fdno that refers to the same vnode. The fd_dup() function enables us to do this when needed. Signed-off-by: Ian Moffett <ian@osmora.org>
2024-11-04kernel: descrip: Only use copyinstr() in SYS_openIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-29kernel: syscall: Add SYS_statIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-29kernel: types: Add more POSIX typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-29kernel: types: Move dev_t to sys/types.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-27kernel: syscall: Fix brace formattingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-27kernel/amd64: acpi: Remove trailing newlineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-10-27kernel: devfs: Add getattr vop for device filesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-09-09kernel: vfs: Refactor fd related codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-09-09libc: Add close()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-09-03kernel: dev: Introduce DCDR frameworkIan Moffett
Added the Drive Cache Descriptor Ring (DCDR) framework to manage the caching of logical blocks for LBA-based storage mediums. This commit implements core components including data structures for Drive Cache Descriptors (DCDs) and Drive Cache Descriptor Rings (DCDRs). Other implemented features include: - DCD eviction policy based on least hit count - DCD invalidation - DCD lookups - Support for logical block coalescing 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-16kernel/amd64: trap: Handle user trapsIan Moffett
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-08-12kernel/amd64: proc: Set curtd upon thread kickIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-29kernel/amd64: Don't try IPIs with null cpu_infoIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-29kernel/amd64: cpu: Write cpu_info to IA32_GS_BASEIan Moffett
Instead of writing cpu_info to IA32_KERNEL_GS_BASE then using SWAPGS, write the cpu_info pointer directly to IA32_GS_BASE Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-29kernel/amd64: msr: Add IA32_GS_BASE MSR defineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-29kernel/amd64: Use only defines + handle err codesIan Moffett
- Use only defines in frame.h - Improve handling of trap error codes Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-29kernel/amd64: Facilitate IA32_FS_BASE reads/writesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-24libc: Implement read()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-24kernel: nvme: Set write op to nowriteIan 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-24kernel: device: Add write operationIan 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-22sysheaders: limits: Add SSIZE_MAXIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22libc: Add open()Ian 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-22sysheaders: Add sys/fcntl.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22sysheaders: Add sys/limits.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22sysheaders: cdefs: Add __BEGIN_DECLS/__END_DECLSIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-22build: Improve copying of headersIan Moffett
- Ensure headers are always copied - Ensure lib/libc/include/*.h are copied 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-18usr.sbin: Fix linker scriptIan Moffett
Fix issue with memory addresses of globals being zeroed 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-16kernel/amd64: trap: Set IPL_HIGH in trap_handler()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-16kernel/amd64: trap: Fix TRAPENTRY %CS offsetIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2024-07-16kernel/amd64: mp: Lock only around cpu_startup()Ian 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-15kernel: proc: Add missing includeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>