aboutsummaryrefslogtreecommitdiff
path: root/src/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* vfs: Check if path search is finished by using path parameter instead of ↵Himbeer2024-07-111-1/+1
| | | | incorrect it.last() value
* sysexchange: Make all non-zig errors valid Status valuesHimbeer2024-07-111-0/+156
|
* Revert "resources: Add initial process creation API"Himbeer2024-07-115-210/+9
| | | | This reverts commit 13da66a7d65c3ab7960bef7f8914c5a09ae2d5bd.
* resources: Add console (write-only) at /io/debugHimbeer2024-07-111-4/+37
|
* resources: Add initial process creation APIHimbeer2024-07-115-9/+213
|
* kernel: Provide userinit contents at /userinit in the VFS (untested)Himbeer2024-07-103-1/+110
|
* vfs: Support providing sub-resources of dirhooksHimbeer2024-07-102-2/+24
|
* vfs: Implement walking directory hooksHimbeer2024-07-102-64/+118
| | | | Directory hooks are now treated transparently like regular directories when it comes to looking up subresources by name.
* syscall: Support removing resources from directory hooksHimbeer2024-07-102-6/+9
|
* syscall: Implement removeHimbeer2024-07-102-6/+20
|
* syscall: Implement mkdirHimbeer2024-07-092-5/+9
|
* vfs: Provide drivers with secure copies of caller buffersHimbeer2024-07-084-26/+124
| | | | Fixes #45.
* vfs: Make call function accept process info instead of PIDHimbeer2024-07-081-6/+10
| | | | This makes it possible to interact with the newly created driver thread beforehand (to copy memory etc.)
* vfs: Prevent removing inodes that are in use from (regular) directoriesHimbeer2024-07-081-0/+2
| | | | | | Directory hooks are unfinished and are going to get a wrapper around their removeFn that performs the check and passes the inode to the driver for optimization opportunities. Fixes #37.
* syscall: Stop accepting parameters to mkdirHimbeer2024-07-082-8/+0
| | | | Fixes #39.
* interrupts: Update process info pc (program counter) to epc on syscallHimbeer2024-07-051-0/+1
| | | | Fixes #43, fixes #44.
* vfs: Use C ABI for callbacksHimbeer2024-07-041-10/+10
| | | | Fixes #40.
* sysexchange: Make Result(T) an extern structHimbeer2024-07-041-1/+1
|
* interrupts: Print PID for synchronous exceptionsHimbeer2024-07-041-11/+15
|
* vfs: Switch from returning model to callback model for driver callback handlingHimbeer2024-07-042-37/+61
|
* interrupts: Send the process being interrupted back into waiting stateHimbeer2024-07-041-1/+3
|
* process: Make termination hooks receive a *anyopaque contextHimbeer2024-07-041-8/+11
|
* process: Make call termHook optional and mark the call method noreturnHimbeer2024-07-041-1/+1
|
* process: Switch from returning model to callback model for driver callback ↵Himbeer2024-07-041-5/+11
| | | | handling
* syscall: Consult scheduler instead of returning into terminated processHimbeer2024-07-031-1/+6
|
* process: Fix latestThread not remembering the first thread of the PIDHimbeer2024-07-031-1/+1
| | | | The function no longer fails by always returning null.
* syscall: Supply VFS resource providing functions with provider PIDHimbeer2024-07-031-12/+12
|
* process: Make thread calling attempt to automatically convert arguments to usizeHimbeer2024-07-031-1/+13
|
* process: Fix compiler errors in threading and driver handler calling ↵Himbeer2024-07-031-4/+25
| | | | infrastructure
* process: Rename ProcessError => Error and Error => ScheduleErrorHimbeer2024-07-032-8/+8
| | | | These names represent their meanings much better.
* process: Add threading and driver handler calling infrastructureHimbeer2024-07-034-11/+122
|
* vfs: Fix provideResource adding the resource to a copy of its parent ↵Himbeer2024-07-021-1/+1
| | | | directory rather than the real inode
* vfs: Make root directory a regular nodeHimbeer2024-07-021-5/+5
|
* syscall: Temporarily enable user memory access where necessaryHimbeer2024-07-021-0/+27
|
* process: Handle ELF filesz and memsz mismatches by using the smaller valueHimbeer2024-07-021-2/+2
|
* mem: Fix page allocator allocating 4096 times the amount of memory necessaryHimbeer2024-07-021-1/+2
|
* syscall: Rename null-terminated / C path strings to path_cHimbeer2024-07-021-21/+21
|
* syscall: Make write() bytes parameter constHimbeer2024-07-021-3/+3
|
* syscall: Add read and write for stream resourcesHimbeer2024-07-023-0/+57
|
* syscall: Add close (destroy a resource descriptor using its handle number)Himbeer2024-07-013-11/+15
|
* syscall: Implement opening resourcesHimbeer2024-07-013-13/+60
|
* sysexchange: Split Result(T) returning and frameReturn wrapper creating itHimbeer2024-07-011-15/+26
| | | | Also introduces the unintentionally absent ability to return error sets via a trap frame.
* interrupts: Pass process info to syscall handlerHimbeer2024-07-011-1/+2
|
* vfs: Add resource descriptorsHimbeer2024-07-011-0/+18
|
* syscall: Add provideFile, provideHook and provideDirHook and mkdir stubHimbeer2024-07-012-7/+111
|
* syscall: Add provideStream (provide a VFS stream resource)Himbeer2024-06-303-50/+108
|
* vfs: Populate Stream structHimbeer2024-06-301-1/+7
|
* vfs: Add provideResourceZ C-string-compatible wrapper for provideResourceHimbeer2024-06-301-3/+9
|
* vfs: Fix missing type prefix of Error.NotFoundHimbeer2024-06-301-1/+1
|
* vfs: Add global, POSIX path based interaction with root TreeHimbeer2024-06-301-9/+51
|