From 8ee2bea27be08bf635afc9170fecb87b23d84eb8 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Sun, 8 Mar 2015 17:14:29 +0100 Subject: Add a lot of links --- overview.mdwn | 35 +++++++++++++++++++++++++++++------ 1 file changed, 29 insertions(+), 6 deletions(-) (limited to 'overview.mdwn') diff --git a/overview.mdwn b/overview.mdwn index 4878b08b..9bae360f 100644 --- a/overview.mdwn +++ b/overview.mdwn @@ -32,18 +32,25 @@ ext2fs is given as a parameter the name of the device of the root filesystem. It opens it through the GNU Mach disk driver, and mounts the filesystem found on it. When it is ready, it can start booting the system by starting the "startup", "proc", and "auth" servers. It does so by using the "exec" server already loaded -by GNU Mach: "exec" handles loading the binaries of the three new servers, just -like it will handle loading binaries in the GNU/Hurd system in general. We then -have a posixish environment, ext2fs gives hand to "startup". +by GNU Mach. We then have a posixish environment, ext2fs gives hand to +"startup". + +# exec + +"exec" handles loading binaries into processes. Details are available in +[[Thomas' overview|/hurd-paper#exec]]. # proc Proc knows about processes: what pid they have, passing signals, managing tty -sessions, etc. +sessions, etc. Details are available in [[Thomas' overview|/hurd-paper#proc]] +and [[Marcus' presentation|/hurd-talk#pro]]. # auth -Auth knows about identities: uid, gid, etc. +Auth knows about identities: uid, gid, etc. Details are available in +[[Thomas' overview|/hurd-paper#auth]] and +[[Marcus' presentation|/hurd-talk#aut]]. # startup @@ -62,6 +69,22 @@ Normal processes use glibc to interact with the system. Depending on the kind of call, glibc will perform RPCs with the various servers mentioned above: opening files will trigger RPCs with ext2fs, calling getpid() and such will trigger RPCs with proc, calling getuid() and such will trigger RPCs with auth, opening a -network socket will trigger RPCs with pfinet. +network socket will trigger RPCs with pfinet. Details are available in [[the RPC page|/hurd/rpc]] One can read the [[details how reading a file happens|hurd/io_path]]. + +# how translators get started + +There are three ways translators get started: + +* exec, startup, proc, auth are explictly started during the boot as explained +above. +* some file of the filesystem have a *passive translator* record, i.e. it is +recorded in the filesystem that when you open the file, it actually starts a +translator which provides the content. For instance, */dev/null* is actually a +translator which eats your data and produces no data. +* one can manually start a translator and bind it on a file of the +filesystem. It will stay there until getting killed or the system is +restarted. For instance, one may want to temporarily mount an ISO image. + +Details are available in [[Marcus' presentation|/hurd-talk#act]]. -- cgit v1.2.3