- Rust 99.4%
- Linker Script 0.6%
| .github | ||
| src | ||
| .editorconfig | ||
| .gitignore | ||
| .markdownlint-cli2.yaml | ||
| ARCHITECTURE.md | ||
| Cargo.toml | ||
| CODE_OF_CONDUCT.md | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| linker.ld | ||
| README.md | ||
| ROADMAP.md | ||
| rustfmt.toml | ||
| SECURITY.md | ||
ramfsd
ramfsd is the private in-memory filesystem provider used by vfsd for
volatile mounts.
EriX is a clean-room, capability-based microkernel operating system written entirely in Rust.
Technical requirements are tracked in the EriX requirements, conventions, and project documentation.
See:
- docs for design documents, specifications, and development plans.
- Related architecture repositories for kernel, services, libraries, drivers, and integration tooling.
Purpose of This Repository
This repository implements the EriX volatile memory filesystem provider. Its
purpose in EriX is to provide volatile filesystem state behind vfsd through
explicit IPC and startup authority.
Functionally, it implements the daemon runtime, state model, IPC handling, and validation tests. The repository keeps the implementation, interface contracts, tests, and documentation for that behavior in one reviewable ownership boundary.
The maintained responsibilities are:
- implement the volatile memory filesystem runtime and state model
- validate startup authority before accepting IPC requests
- handle bounded service operations through the assigned endpoint set
- keep service behavior, tests, and authority invariants documented
Clean-Room Policy
EriX follows a strict clean-room philosophy:
- No external source code may be copied.
- No external Rust crates are allowed.
- No code generation tools that embed third-party code.
- All code must be authored within the project.
Violations will result in rejection of the contribution.
License
All EriX repositories are licensed under the ISC License.
Development Model
EriX development is modular, deterministic, reproducible, authority-explicit, security-first, and self-hosting oriented.
This repository follows the project roadmap and the validation rules documented in its own roadmap.
Status
Implemented baseline for the volatile memory filesystem provider path:
- volatile mount-instance creation
- generic provider ABI compatibility for mount and file/directory operations
- directory and file mutation
- UTF-8 path and directory-entry names with unchanged v1 field sizes
- inline read/write I/O
- directory iteration, richer stat, rename, truncate, symlink/readlink, explicit hard-link denial, flagged metadata update, unlink, and rmdir
- unit coverage for startup validation, tree rules, dispatch, stateful I/O, and extended volatile-filesystem semantics
Validation
cargo fmtcargo clippy --all-targets --all-features -- -D warningscargo test --all-targets --all-features
Governance Principles
ramfsd governance is scoped to private volatile memory filesystem provider
behavior.
The scoped governance rules are:
- It serves in-memory filesystem state only through authorized startup endpoints.
- It preserves generic provider ABI behavior used by
vfsd. - It keeps file data bounded by process memory and rejects malformed path operations.
- It exposes no persistent storage or block-device authority.
Authority Boundaries
ramfsdoperates only through startup-assigned service capabilities.- New authority must be represented in bootstrap/capability validation and integration tests before use.
Contact
Development occurs in EriX organization and discussions happen in issues and design documents.
No decisions are considered valid without documented rationale.
Maintainers can be reached via email: admin@erikinkinen.fi.