docs: the storage rationale lives with the architecture it justifies
storage-stack-discussion.md was misplaced at the docs root — that level is for track plans; this is the file-system domain's design record. Moved to file-system-development/storage-design-rationale.md, renamed to say what it is, cross-references updated.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
# The storage architecture: layers, boundaries, responsibilities
|
||||
|
||||
> **Status:** the layered model below is the settled design
|
||||
> ([storage-stack-discussion.md](../storage-stack-discussion.md) records how it
|
||||
> ([storage-design-rationale.md](storage-design-rationale.md) records how it
|
||||
> was reached and what the surveyed systems taught). The data path — vfs
|
||||
> protocol, kernel mount routing, the FAT service, the block protocol,
|
||||
> usb-storage — is **built**. The volume manager, the driver's range
|
||||
|
||||
+12
-8
@@ -1,12 +1,16 @@
|
||||
# The storage stack: block, volumes, filesystems — a discussion
|
||||
# The storage design rationale: why the stack is shaped this way
|
||||
|
||||
*2026-08-09. Design discussion, not a plan. The questions, verbatim: should the
|
||||
block protocol be separate from the VFS? how do channels work with these block
|
||||
devices? how should we wire up different filesystems? Grounded in a survey of how
|
||||
Minix 3, QNX Neutrino, Fuchsia, Redox, Plan 9, and Linux each answered the same
|
||||
questions, and in exactly where our own seams sit today. The layering rule this
|
||||
discussion serves: drivers are the lowest level (hardware only); VFS and the
|
||||
filesystems are higher layers; the protocol layer routes between them.*
|
||||
*2026-08-09. The design record behind
|
||||
[storage-architecture.md](storage-architecture.md): the survey, the
|
||||
trade-offs, and the decisions with their reasons — kept so future changes
|
||||
argue against the evidence rather than rediscovering it. The questions that
|
||||
drove it, verbatim: should the block protocol be separate from the VFS? how
|
||||
do channels work with these block devices? how should we wire up different
|
||||
filesystems? Grounded in how Minix 3, QNX Neutrino, Fuchsia, Redox, Plan 9,
|
||||
and Linux each answered the same questions, and in exactly where our own
|
||||
seams sat. The layering rule it serves: drivers are the lowest level
|
||||
(hardware only); VFS and the filesystems are higher layers; the protocol
|
||||
layer routes between them.*
|
||||
|
||||
## What the survey says, compressed
|
||||
|
||||
Reference in New Issue
Block a user