๐ฆ Modules โ
Xila is organized as composable modules with explicit contracts and concrete implementations. Most core modules expose a singleton manager (OnceLock + lock-protected state), then publish a typed API consumed by other modules and executables.
This section is an architecture map, grouped by system role.
Recommended reading order โ
- ๐๏ธ Virtual file system
- ๐ Task
- ๐ Network
- ๐ ABI
- ๐ Bindings (runtime integration path)
- Remaining modules and integrations: ๐ง Memory, ๐ฅ Users, ๐ Time, ๐ Log, ๐ผ๏ธ Graphics, ๐ฅ๏ธ Virtual machine
Foundation modules โ
- ๐ง Memory: Allocation contract (
ManagerTrait), global allocator bridge, capability flags, and cache/page helpers. - ๐ Task: Global task registry, executor/spawner integration, metadata inheritance, and signal delivery.
- ๐ฅ Users: In-memory user/group database and identifier/membership resolution.
- ๐ Time: Global time source abstraction over a direct character device.
- ๐ Log: Global logging bridge (
LoggerTrait) on top oflogecosystem integration.
Runtime modules โ
- ๐๏ธ Virtual file system: Path namespace, mount dispatch (file systems/devices/pipes), ownership/permission checks.
- ๐ Network:
smoltcpinterface stacks, runner tasks, control-device surface under/devices/network/*. - ๐ผ๏ธ Graphics: LVGL runtime management, display/input plumbing, window/event services.
Interop and runtime-integration pages โ
- ๐ ABI: C ABI surface split across declarations, symbol definitions, and per-task ABI context.
- ๐ Bindings: Module-adjacent runtime integration implemented in executable/WASM host paths for host-call dispatch and guest/host pointer translation.
- ๐ฅ๏ธ Virtual machine: Module-adjacent runtime integration implemented in executable/WASM host paths for WAMR execution, instantiation, and host callback wiring.