Skip to main content

Module data

Module data 

Source
Expand description

ABI data structures shared between kernel and userspace.

These types define the wire format for syscalls, IPC messages, and file system operations. Both kernel and userspace must agree on the exact memory layout (size, alignment, field ordering).

Macros§

assert_abi_struct 🔒

Structs§

AsyncRingLayout
Layout descriptor for async I/O ring buffers.
DirentHeader
Fixed-size header for each directory entry in the SYS_GETDENTS wire format.
FileStat
File status information (returned by SYS_FSTAT, SYS_STAT, SYS_FSTATAT).
HandleInfo
Information about a capability handle (returned by SYS_HANDLE_INFO).
IpcMessage
Fixed-size IPC message (256 bytes, 64-byte aligned).
Map
Memory mapping descriptor for SYS_MMAP.
MemoryRegionInfo
Information about an exported memory region (returned by SYS_MEM_REGION_INFO).
PciAddress
PCI device address (bus/device/function).
PciDeviceInfo
PCI device information returned by SYS_PCI_ENUM.
PciProbeCriteria
PCI device search criteria for SYS_PCI_ENUM.
SiloConfig
Silo configuration block passed from init to SYS_SILO_CREATE.
SiloMode
9-bit octal silo permission mode (3 control + 3 hardware + 3 registry).
Stat
Legacy stat structure (120 bytes). Prefer FileStat for new code.
StatVfs
Filesystem statistics (for SYS_STAT on directories).
TimeSpec
POSIX-style timestamp: seconds + nanoseconds.

Constants§

DT_BLK
Block device.
DT_CHR
Character device.
DT_DIR
Directory.
DT_FIFO
FIFO (named pipe).
DT_LNK
Symbolic link.
DT_REG
Regular file.
DT_SOCK
Unix domain socket.
DT_UNKNOWN
Unknown file type.
IPC_FILE_FLAG_APPEND
Directory entry flag: file is opened in append mode.
IPC_FILE_FLAG_CHUNK_READ
Directory entry flag: supports chunked reads.
IPC_FILE_FLAG_CHUNK_WRITE
Directory entry flag: supports chunked writes.
IPC_FILE_FLAG_DEVICE
Directory entry flag: this entry is a device file.
IPC_FILE_FLAG_DIRECTORY
Directory entry flag: this entry is a directory.
IPC_FILE_FLAG_PIPE
Directory entry flag: this entry is a pipe.
IPC_MESSAGE_ALIGN
Alignment requirement for IPC messages (64-byte aligned for cache line).
IPC_MESSAGE_HEADER_SIZE
Size of the IPC message header (sender + msg_type + flags).
IPC_MESSAGE_SIZE
Total size of an IPC message in bytes (including header and payload).
IPC_PAYLOAD_CAPACITY
Maximum payload size in an IPC message (256 - 16 = 240 bytes).
PCI_MATCH_CLASS_CODE
PCI match flag: match by class code.
PCI_MATCH_DEVICE_ID
PCI match flag: match by device ID.
PCI_MATCH_PROG_IF
PCI match flag: match by programming interface.
PCI_MATCH_SUBCLASS
PCI match flag: match by subclass.
PCI_MATCH_VENDOR_ID
PCI match flag: match by vendor ID.
SEEK_CUR
Seek relative to the current file position.
SEEK_END
Seek relative to the end of the file.
SEEK_SET
Seek relative to the beginning of the file.