timed is the time service daemon for EriX.
- Rust 100%
| .github | ||
| src | ||
| .editorconfig | ||
| .gitignore | ||
| ARCHITECTURE.md | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| linker.ld | ||
| README.md | ||
| ROADMAP.md | ||
| rustfmt.toml | ||
| SECURITY.md | ||
timed
timed is the time service daemon for EriX.
It provides deterministic time primitives to userspace over IPC and integrates with service discovery and system daemons.
Provided IPC operations
IPC_PHASE1_TIMED_OP_NOW_MONOTONIC(0x530)IPC_PHASE1_TIMED_OP_NOW_WALL(0x531)IPC_PHASE1_TIMED_OP_WAIT_UNTIL(0x532)
Time model
- Monotonic source: kernel control op
READ_MONOTONIC_CLOCK(op_id=13) - v1 frequency:
ticks_per_second = 1000 - Wall source: synthetic wall clock (
epoch_seconds = 0) derived from monotonic ticks - Wait model: one-shot blocking wait until deadline (
WAIT_FLAG_BLOCK)
Startup and discovery
- Validates standard root service startup envelope (
SERVICE_ROLE_TIMED) - Registers itself with
namedin discovery-enabled runtime modes - Uses deterministic startup failure on envelope or capability contract mismatch
Determinism and failure policy
- Invalid inputs return deterministic IPC result codes (
INVALID_ARGUMENT,INTERNAL, etc.) - No panic-path behavior for malformed runtime requests
- Single-threaded service loop with bounded static buffers
Build and test
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
cargo test --all-targets --all-features
Dependencies
lib-bootstraplib-capabilib-ipclib-serviceipc-syscall-x86_64
No external crates are used.