summaryrefslogtreecommitdiff
path: root/src/sys/os
AgeCommit message (Collapse)Author
2025-09-20kern: Initialize ACPI before cpu_conf() callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-20kern: syscall: Add initial write(2) stubIan Moffett
Here we add a write(2) stub and add it to the UNIX syscall interface. We also move the UNIX syscall numbers into compat/unix/syscall.h Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-20kern: proc: Add address checking routineIan Moffett
Add routine to check if an address is valid within a process's address space. More work will need to be done with this but this introduces a great starting point Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-20kern: proc: Move sys_exit() to sys/compat/unix/*Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: proc: Keep track of mapped areas with rangesIan Moffett
This commit adds a virtual memory range queue to the process descriptor in order to keep track of mapped pages and free their respective frames upon program exit. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: init: Initialize generic driversIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: vfs: Add namei() prototype functionIan Moffett
Introduce a namei() prototype function to build upon when implementing core namei() logic. The prototype simply implemenets the path parsing and mimicks a UNIX-like (shell) namei output. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: vfs: Add mountpoint lookup helperIan Moffett
Add helper function to lookup mountpoints such as '/' Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kernel: vfs: Add initial mount code + mount initrdIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kernel: mount: Add mountpoint allocationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kernel: vfs: Handle root path in vfs_cmt_cnt()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-19kern: vfs: Add path component counterIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-18kern: vfs: Add initial vfsops, and mount codeIan Moffett
This commit introduces the groundwork for mountpoints, filesystems and the VFS as a whole. OMAR is now initialized as its own filesystem by the VFS Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-18kern: vfs: Add vnode allocation / release routinesIan Moffett
Introduce routines to allocate (create) and deallocate (destroy) virtual file nodes. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-18build: Allow each subsystem to have their own confIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-18kern: Bump L5 version to v0.0.2Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-18kern: io: Add initial PCI CAM driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: Implement syscall domains and windowsIan Moffett
A syscall domain in the L5 kernel is a fixed list of "syscall windows", each syscall window represents a specific platform and/or syscall model. A platform latch within each domain determines which window / platform should be visible. Since syscall domains are per-process, these changes are local to their respective processes. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: Add syscall entry and SYS_exit syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: init: Add copyrightIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: proc: Add proc_kill() routineIan Moffett
Add a new function to kill processes and clean them up. They will then be marked as EXITING and it is up to the parent to do the rest. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: init: Load /usr/sbin/init after bootIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: sched: Write proc result in sched_deq()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern/amd64: cpu: Add process load balancingIan Moffett
This commit introduces load balancing of processes between cores by using a scalable "CPU arbiter" which decides how to fetch the next core descriptor. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: init: Add L5 bootup logoIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-17kern: Make memmap dump configurable via kconfIan Moffett
Use the OSMORA kernel configuration framework to add options for L5Lunos to parse during early startup. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kernel: elf: Load ELFs into memoryIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kernel: elf: Use memcpy() and remove memset() callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: elf: Fix frame calcs + style cleanupIan Moffett
Allocate more than one frame that exists and increment by one if zero. We also did some style fix ups, added an #undef and a break. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: elf: Default to PROT_READ | PROT_USERIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: elf: Don't load blank program headersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: Add initial ELF loader sourcesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-16kern: proc: Add initial proc init + PCB codeIan Moffett
This commit introduces the initial logic for putting process descriptors in an initialized state. This commit also introduces the process control block definition. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: os: Introduce support for OMAR initramfsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern/amd64: cpu: Add initial SMP startup codeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: Add initial scheduler skeletonIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kernel/amd64: Add task state segment logicIan Moffett
This commit implements the task state segment and splits up processor initialization into two seperate stages. The cpu_conf() function is apart of the first stage and sets up things that should be going by the time the kernel is started / early init. The cpu_init() function runs later functions that initialize further platform specific subsystems. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: os_init: Move boot message at topIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: Initialize ACPI early on during bootIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: Add initial ACPI implIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: os_init: Initialize console earlier onIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: cons: Finish string writing logicIan Moffett
- Wrap on X overflow - Wrap on Y overflow - Keep track of max console width and height - Add console enable/disable control Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: io: Implement initial console logicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-15kern: os: Add initial kalloc subsystemIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14project: Correct copyright authorIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14os: vm: Add physical memory managerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14os: Add early boot messageIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-14build: Do not have per subsystem libsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-13os: boot: Add boot variable informationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-13os: init: Panic at end of kernelIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>