summaryrefslogtreecommitdiff
path: root/9proc/README.md
diff options
context:
space:
mode:
Diffstat (limited to '9proc/README.md')
-rw-r--r--9proc/README.md9
1 files changed, 7 insertions, 2 deletions
diff --git a/9proc/README.md b/9proc/README.md
index 0fd3ddb..15177d7 100644
--- a/9proc/README.md
+++ b/9proc/README.md
@@ -9,7 +9,12 @@ panics.
The core (`core`, `vars`) is freestanding: no allocator, no OS, no threads,
caller-owned static `Storage`, fixed-capacity tables sized at comptime. It
-compiles for `riscv32-freestanding-none`. `scratch` (an in-memory read/write
+compiles for `riscv32-freestanding-none`. The tree is a backend of
+`cloud9.fs.Server`, the file-server engine every 9P server built on cloud9
+shares: the engine owns fids, walks, permissions and directory cursors;
+the core answers its requests from static nodes, exposed variables and
+providers, and a provider may answer a read later (`error.Again` parks it
+until a later step). `scratch` (an in-memory read/write
tree) takes an allocator; `linux` is the platform layer (listeners, a poll
loop on one background thread, threads/stacks/registers, memory, breakpoints
and panics via `std.debug`). [docs/LIBRARY.md](docs/LIBRARY.md) has the full
@@ -19,7 +24,7 @@ contract.
9proc/
build.zig fragment imported by cloud9's root build.zig (steps below)
src/root.zig pub const core, vars, scratch, linux; Config, Server(cfg), Provider
- src/core.zig Tree/Server engine on cloud9.Server: fids, walks, dir reads, providers
+ src/core.zig the tree (static nodes, vars, providers) as a backend of cloud9.fs.Server
src/vars.zig comptime value renderers (@typeInfo) for /vars
src/scratch.zig in-memory read/write tree provider (takes an Allocator)
src/freestanding_check.zig root for the riscv32-freestanding-none compile check