Read overlay and persistent write routing

This figure documents the historical i386 source baseline. Current native x86-64/AArch64 qualification is recorded separately; this is not an ELF64 or native SMP implementation diagram.

Read overlay and persistent write routing Read-open checks the RAM overlay before SlFS. Creates in /tmp route to RAM; ordinary writes and creates outside /tmp route to SlFS. Appending a visible RAM file to the persistent route preserves its prefix before promotion. A successful persistent write-open removes the RAM shadow; an unresolved backing file is an error, not a silent durable-to-RAM fallback. open->write write->ram no · read or /tmp write->block yes ram->ramopen yes / RAM create ram->block miss block->promote persistent write block->fail unresolved promote->remove open sys_open(normalized absolute path) write Write / create outside /tmp? ram RAM overlay node exists? ramopen Open RAM file /tmp creates route here block Resolve / create SlFS inode promote Append to visible RAM file? copy prefix before promotion remove Successful persistent write-open removes shadowing RAM file fail No backing file / creation fails return error note Reads are RAM-first, then SlFS. Ordinary persistent writes do not silently fall back to RAM.
Read overlay and persistent write routing Read-open checks the RAM overlay before SlFS. Creates in /tmp route to RAM; ordinary writes and creates outside /tmp route to SlFS. Appending a visible RAM file to the persistent route preserves its prefix before promotion. A successful persistent write-open removes the RAM shadow; an unresolved backing file is an error, not a silent durable-to-RAM fallback. Reads: RAM first, then SlFS. Persistent writes never silently fall back to RAM. open->write write->ram no write:e->block:e yes ram->ramopen yes / RAM create ram:e->block:e miss block->promote block:e->fail:e not found promote->remove open Open normalized absolute path write Write / create outside /tmp? ram RAM overlay node exists? ramopen Open RAM file /tmp creates route here block Resolve / create SlFS inode promote Persistent append to RAM file: preserve prefix before promotion remove Successful persistent write-open: remove shadowing RAM file fail Unresolved file / failed creation: return error

RAM-first reads and path-directed writes are different policies.

Text equivalent and source references
  • Read-open checks the RAM overlay before SlFS. Creates in /tmp route to RAM; ordinary writes and creates outside /tmp route to SlFS.
  • Appending a visible RAM file to the persistent route preserves its prefix before promotion. A successful persistent write-open removes the RAM shadow; an unresolved backing file is an error, not a silent durable-to-RAM fallback.

Decision flow. Source paths refer to the atlas baseline; the kernel checkout is private.

  • include/fs_route.h · slos_route_for_write
  • kernel/core/syscall.c · SYS_OPEN