summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hurd/virtualfilesystem.mdwn17
1 files changed, 17 insertions, 0 deletions
diff --git a/hurd/virtualfilesystem.mdwn b/hurd/virtualfilesystem.mdwn
new file mode 100644
index 00000000..054f0b04
--- /dev/null
+++ b/hurd/virtualfilesystem.mdwn
@@ -0,0 +1,17 @@
+Path names are resolved using a distributed protocol.
+No single entity is responsible for the resolution of
+path names. A file system server (a [[translator]])
+attaches to translators (fs.defs:file_set_translator).
+
+When a process resolves an aboslute path, it queries
+its root file system server by invoking the fs.defs:dir_lookup
+method in the capability in its root directory slot. The
+file system server resolves as much as it knows about locally
+and when it encounters a translator, it replies to the client
+indicating how much it resolved and where to continue its
+lookup. This continues until the name is fully resolved
+or an error occurs. The same happens for relative path
+names but a different capability is used.
+
+For a more detailed explanation of the protocol, look at the section
+2.2 of the [[HurdCritique]]. \ No newline at end of file