summaryrefslogtreecommitdiff
path: root/hurd/translator.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/translator.mdwn')
-rw-r--r--hurd/translator.mdwn26
1 files changed, 26 insertions, 0 deletions
diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn
new file mode 100644
index 00000000..1e281b9d
--- /dev/null
+++ b/hurd/translator.mdwn
@@ -0,0 +1,26 @@
+A translator is simply a normal program acting as
+an object server and participating in the Hurd's
+distributed [[VirtualFileSystem]]. It is so-called
+because it typically exports a file system
+(although need not: cf. [[auth]], [[proc]]
+and [[pfinet]]) and thus translates object invocations
+into calls appropriate for the backing store
+(e.g., ext2 file system, nfs server, etc.).
+
+Translators do not require any special privilege
+to run. The privilege they require is simply
+that to access the indiviudal resources they use.
+This is primarily the backing store and the node
+they attach to. Typically, a translator can
+only be attached to a node by the node's owner.
+On Unix this is not possible because file systems
+and the virtual file system are implemented in the
+kernel and thus have absolute access to the machine.
+As the protocols do not require any special privilege
+to implement, this is not an issue on the Hurd.
+
+See [[Translators]] for a list of Hurd translators.
+
+To learn how to write a translator, read the code!
+It is well documented, in particular, the header files.
+The [[HurdHackingGuide]] also has a tutorial. \ No newline at end of file