summaryrefslogtreecommitdiff
path: root/src/sys/os
AgeCommit message (Collapse)Author
21 hourskern: namei: Return -NOENT at function endIan Moffett
If we go through the entire function without getting a vnode, then there is no file to be found Signed-off-by: Ian Moffett <ian@osmora.org>
21 hourskern: vfs: Add vnode operation for readsIan Moffett
Introduces a read callback wrapper implementation for vnodes to simplify file reading Signed-off-by: Ian Moffett <ian@osmora.org>
21 hourskern: omar: Set vnode ops per looked up nodeIan Moffett
Everytime a look up is performed, we should set the vnode operations on the resulting vnode Signed-off-by: Ian Moffett <ian@osmora.org>
21 hourskern: filedesc: Don't stop searching without fdIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
22 hourskern: filedesc: Remove outdated commentIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
22 hourskern: vfs: Add NULL check for write vopIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
38 hourskern: Add initial DMS frameworkIan Moffett
DMS stands for Disk Management and Supervision, drivers can register themselves to DMS so that they can be looked up and operated on. Signed-off-by: Ian Moffett <ian@osmora.org>
42 hourskern: proc: Check argc after checking envblkIan Moffett
Fixes a crash with using this syscall Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: proc: Add NULL check for envblkIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: os: Remove extra newlineIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: proc: Add initial waitpid() syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: proc: Implement process sleeping and wakingIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: proc: Use seperate queue link for lookupsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
3 dayskern: init: Turn off console logs before userlandIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: proc: Add process lookups by PIDIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
5 dayskern: mac: Document the MAC border tableIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: proc: Add getargv system callIan Moffett
Introduce a getargv system call that allows one to fetch an argument string using an index into the argument vector. Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: systm: Add copyoutstr()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
6 dayskern: proc: Add initial penv block supportIan Moffett
This commit introduces the initial support for the process environment block and implements argv and argc. Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskern: iotap: Expose I/O taps to userlandIan Moffett
Expose I/O taps to userland using a tap message interface. An application may construct a tap message to send to the kernel requesting data from a specific tap, if there is data, the buffers will be safely populated, otherwise some error returned. An example is accessing the PS/2 keyboard tap: -- char name[] = "i8042.port.0"; char buf[2] = {0, 0}; struct iotap_msg msg = { .opcode = IOTAP_OPC_READ, .buf = buf, .len = len }; ... /* muxtap() may be used */ ... -- Signed-off-by: Ian Moffett <ian@osmora.org>
7 dayskern: security: Improve scalability of MAC checksIan Moffett
The concept of resource borders is mostly used for resources that can easily be mapped into memory, synced and contain attributes. However, some things (e.g., a network resource, keyboard input, etc) may not be great with raw memory mappings. This commit mitigates this problem. Signed-off-by: Ian Moffett <ian@osmora.org>
8 dayskern: iotap: Remove unused includeIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Add I/O tap frameworkIan Moffett
The I/O tap framework provides a way to bypass the typical device filesystem interface for applications where more direct access would be beneficial. Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Support up to 8 max namespacesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Write non standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Fix erroneous sizeof()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Add missing whitespaceIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Ignore unitialized vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: vfs: Add write vop to vnodesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: os: Verify access semantics in fd_write()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Duplicate FDs for standard streamsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Save the mode in fd_open()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 daysos: vnode: Add refcounts to vnodesIan Moffett
Keep track of how many referencing are on a vnode so one isn't freed early while another object is still using it. Signed-off-by: Ian Moffett <ian@osmora.org>
9 daysFix conflictsIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
9 dayskern: filedes: Add SYS_open system callIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: filedesc: Add fd_open() functionIan Moffett
Introduce the fd_open() function as apart of the kernel file descriptor API to open a file and get a file descriptor. Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: Add /dev/nullIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
10 dayskern: syscall: Add SYS_mount syscallIan Moffett
This commit introduces the system call for mounting filesystems. As of now, only the fstype and target params are supported Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: syscall: Add initial SYS_spawn syscallIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: proc: Add initial spawn functionIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: os: Add copyinstr()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
11 dayskern: ns: Increment object count upon entryIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-30kern: Add initial pirho compiler sourcesIan Moffett
The pirho compiler is a ring-0 compiler used to compile core parts of the kernel during updates and installs from the initramfs. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-30kern: vfs: Return vnode result in namei()Ian Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-29kern: init: Initialize namespaces before modulesIan Moffett
Some modules rely on the object namespace to keep track of state for them. So we need to initialize the namespace before we initialize those modules Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-29kern: ns: Extract true object data from entryIan Moffett
Before, the lookup was only returning the object and not the data behind the object itself. Now we extra the data from the object that exists within the hashmap entry. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-29kern: Add initial object namespace sourcesIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-28kern: Add safe copyin() and copyout()Ian Moffett
Introduce new routines that make it safer to transfer data between userland and the kernel. Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-28build: Use clang during early stateIan Moffett
Use clang during early state until we configure our own cross compiler for L5 Signed-off-by: Ian Moffett <ian@osmora.org>
2025-09-27kern: proc: Don't acquire maplist lock during initIan Moffett
Signed-off-by: Ian Moffett <ian@osmora.org>