summaryrefslogtreecommitdiff
path: root/sys/inc
AgeCommit message (Collapse)Author
2025-11-21kern: vfs: Decouple mounting from initializationIan Moffett
Upon bootup, all filesystems are to be enumerated and initialized before they are mounted. Some filesystems may decide to mount themselves right away. However, it is crucial to keep mounting and initialization seperate. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: vfs: Add vnode lookup VOPIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: vfs: Add vnode VOP wrappersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: vop_read_args -> vop_buf_argsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: Move os/mount.h to kern/mount.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: vfs: Add initial namei() groundworkIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-21kern: vfs: Add initial mountpoint lookup helperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-20kern: Move vnode related files to kernIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-20kern: Add initial virtual file system sourcesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-20kern/amd64+sys: Add cacheline alignment macroIan Moffett
Cacheline alignment is a mitigation against false sharing imposed by locality of a shared resource. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-20kern: Introduce high-level spinlock interfaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-20kern: Add initial vnode initializationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: sched: Implement context switchingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern: sched: Add function to dequeue processesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern: sched: Add scheduler quantum defineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: lapic: Add EOI functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: mp: Load per-core GDT/IDTIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: Move GDT selector defines to gdt.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern: proc: Add enhanced processor arbitrationIan Moffett
Unlike the previouses systems where there was a global arbiter and a shared lock, rv7 derives a zero-based processor index by using the lower 8 bits of the pid MOD the core count. This significantly reduces contention. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern: mu: Add percpu queue for schedulingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: cpu: Add cpu_count() functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64+os: proc: Add process initializationIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64+mu: panic: Dump registers on panicIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-19kern/amd64: mp: Keep track of brought up coresIan Moffett
This commit implements storing of processor descriptors per application processors as well helpers to request a CPU descriptor by index and better serialization Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern: vm: Add serialized TLSF frontendIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern: vm: Add TLSF portIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: lapic: Add Local APIC timer interfaceIan Moffett
This commit adds an interface to perform a oneshot operation with the Local APIC timer as well as providing a stub interrupt service routine for it. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: idt: Make idt.h includable in ASMIan Moffett
This also moves the interrupt gate defines to the idt.h header so that they can be used within C code Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18sys: Add sys/atomic.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern: Add initial process definitionsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18sys: Add sys/queue.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: Add trapframe definitionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18sys: types: Add ID typesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18project: Correct malformed copyright headersIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: Add md/cpu.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18sys: Add sys/mman.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: mmu: Add function to map pagesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: Do low-level processor configurationIan Moffett
This commit seperates low-level processor configuration into the cpu_loinit() function. This is to be called for the BSP and per AP. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: msr: Make md/msr.h includable in asmIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-18kern/amd64: mmu: Add mu_pmap_forkvas() helperIan Moffett
The mu_pmap_forkvas() function copies the current virtual address with the user porition zeroed. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: mp: Sync MTRRs between APs and BSPIan Moffett
Section 11.11.8 of the Intel SDM states that all MTRRs in a multiprocessing system must be synced to prevent undefined behavior. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern: vm: Fix typo in VIRT_TO_PHYS()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: mp: Add multiprocessing groundworkIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17sys: cdefs: Add __section() macroIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: lapic: Add lapic_read_id() functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern: acpi: Add acpi_read_madt() helperIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern: dev: Add HPET timer driverIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: lapic: Add support for sending IPIsIan Moffett
This commit introduces an interface for sending inter-processor interrupts using the current Local APIC unit Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: lapic: Configure and calibrate timerIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-11-17kern/amd64: Expose IDT to C through idt.hIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>