Skip to main content

Module syscall

Module syscall 

Source
Expand description

Strat9-OS Syscall Interface

Implements the kernel-side syscall dispatcher and handlers for the Strat9-OS native ABI.

Syscall numbers are organized in blocks of 100:

  • 000-099 : Capabilities (handle management)
  • 100-199: memory
  • 200-299: IPC
  • 300-399: process/thread
  • 400-499: filesystem/VFS
  • 500-599: time/alarms
  • 600-699: debug/profiling

Re-exports§

pub use dispatcher::dispatch;
pub use exec::sys_execve;
pub use fcntl::sys_fcntl;
pub use fork::sys_fork;
pub use time::sys_clock_gettime;
pub use time::sys_nanosleep;

Modules§

chan
Typed MPMC sync-channel syscall handlers.
debug
Debug log syscall handler.
dispatcher
Strat9-OS syscall dispatcher
error
Syscall error codes for Strat9-OS.
exec
execve() syscall implementation. Replaces the current process image with a new one.
fcntl
fcntl() syscall implementation for file descriptor control.
fork
fork() syscall implementation with copy-on-write (COW).
futex
Futex (Fast Userspace Mutex) syscall handlers
ipc_port
IPC port syscall handlers.
ipc_ring
IPC ring-buffer syscall handlers.
mmap
Memory-management syscall handlers: mmap, munmap, brk.
net
Network syscall handlers.
numbers
pci
PCI syscall handlers.
poll
process
Process and thread management syscalls.
random
Random number generation syscalls: getrandom
robust_list
Robust list syscalls: set_robust_list, get_robust_list
semaphore
Semaphore syscall handlers.
signal
Signal-related syscall handlers for Strat9-OS.
time
Time-related syscalls: clock_gettime, nanosleep, clock_nanosleep
transport
Syscall handlers for the IPC transport layer (N1/N2/N3).
volume
Volume / block device syscall handlers.
wait
Wait-family syscall handlers: waitpid, getpid, getppid.

Structs§

SyscallFrame
Stack frame passed to the Rust syscall dispatcher.