From 342cc08ad50562f13ec16c52cb7b7579caf2ca47 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 3 Oct 2007 15:07:09 +0200 Subject: Begin listing existing translators and those being under development. Add a node about the storeio translator. --- hurd/translator/storeio.mdwn | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 hurd/translator/storeio.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn new file mode 100644 index 00000000..d8c6db6c --- /dev/null +++ b/hurd/translator/storeio.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl.txt]]."]] + +`storeio` is a *translator for devices and other stores*. + +It relies heavily on [[libstore]]. -- cgit v1.2.3 From cb158c34a866326658f54011e8fe77e0ef1bce23 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 3 Oct 2007 15:19:00 +0200 Subject: Move the examples from `hurd/libstore' into `hurd/translator/storeio' and apply formatting foo to all of the text. --- hurd/libstore.mdwn | 58 +++++++++++++++----------------------------- hurd/translator/storeio.mdwn | 17 +++++++++++++ 2 files changed, 36 insertions(+), 39 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index 9499caf9..87c6842e 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -10,42 +10,22 @@ is included in the section entitled [[GNU_Mach|microkernel/mach/gnumach]] devices (`hd0` for example) and the device node below `/dev`... -=== want to see some examples? - -* you can make a file's content available as some block device (where ''foo'' - is the name of the file to map): -{{{ - settrans -ca node /hurd/storeio -T file foo -}}} - -* you can even ungzip files on the fly (bunzip2 is available as well): -{{{ - settrans -ca node /hurd/storeio -T gunzip foo.gz -}}} - -* you can use the ''typed'' store, to create filter chains (of course this - example is kinda useless since you could use the ''gunzip'' store directly): -{{{ - settrans -ca node /hurd/storeio -T type gunzip:file:foo.gz -}}} - -=== available stores -|| device || raw device access (used for access to hd0, etc.) || -|| file || use a common file as some kind of block device || -|| zero || kinda empty block device || -|| task || mach task store backend (TODO: what's this) || -|| ileave || interleave store (striping) || -|| concat || concatenate stuff || -|| remap || remap stuff || -|| query || TODO: what's this || -|| copy || TODO: what's this good for || -|| gunzip || gunzip data on the fly || -|| bunzip2 || bunzip2 data on the fly || -|| nbd || network block device (linux compatible) || -|| url || typed store with url syntax || -|| typed || typed store (chainable stores thingy) || - - -=== even weirder stuff ... -at http://www.kataplop.net/pub/info/projets you can find some effort to make -some crypto store, I will try to make that running within shortly ... +# Available Stores + +* `device`: raw device access, used for access to `hd0`, etc. +* `file`: use a common file as some kind of block device. +* `zero`: kind of an empty block device. +* `task`: mach task store backend. TODO: what's this? +* `ileave`: interleave store (striping). +* `concat`: concatenate stuff. +* `remap`: remap stuff. +* `query`: TODO: what's this? +* `copy`: TODO: what's this good for? +* `gunzip`: `gunzip` data on the fly. +* `bunzip2`: `bunzip2` data on the fly. +* `nbd`: network block device (Linux-compatible). +* `url`: typed store with URL syntax. +* `typed`: typed store (chainable stores thingy). + +At you can find some effort to make +some crypto store. diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn index d8c6db6c..4493fad1 100644 --- a/hurd/translator/storeio.mdwn +++ b/hurd/translator/storeio.mdwn @@ -9,3 +9,20 @@ is included in the section entitled `storeio` is a *translator for devices and other stores*. It relies heavily on [[libstore]]. + + +# Examples + +You can make a file's content available as some block device (where `foo` is +the name of the file to map): + + settrans -ca node /hurd/storeio -T file foo + +You can even `ungzip` files on the fly (`bunzip2` is available as well): + + settrans -ca node /hurd/storeio -T gunzip foo.gz + +You can use the *typed store*, to create filter chains (of course this example +is kind of useless since you could use the `gunzip` store directly): + + settrans -ca node /hurd/storeio -T type gunzip:file:foo.gz -- cgit v1.2.3 From c3e8d3622155caefdb1b74a5161cc2e2c2035572 Mon Sep 17 00:00:00 2001 From: GNU Hurd wiki engine Date: Sun, 7 Oct 2007 20:55:18 +0000 Subject: web commit by stesie: new page. --- hurd/translator/pfinet/ipv6.mdwn | 52 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 hurd/translator/pfinet/ipv6.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn new file mode 100644 index 00000000..9999ff92 --- /dev/null +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -0,0 +1,52 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl.txt]]."]] + +[[Stefan_Siegl|stesie]] has contributed some patches, making the pfinet server IPv6 aware. Because IPv4 and IPv6 protocols are quite related to each other (think of mapped IPv4 addresses, etc.), there is no separate server for IPv6 but support for the latter has been incorporated into the common pfinet. Unfortunately it's a little bit clumsy now, to set the translator up, since it has to be bound to */servers/socket/2* (like before) as well as */servers/socket/26* (for IPv6). + +To achieve this, you can tell pfinet6 to install active translators on specified nodes, using **-4** and **-6** options. This is, you have to install a passive translator on /servers/socket/2 that also binds the IPv6 port and vice versa. + +# Examples + +Normal IPv4 network setup, address 192.168.7.23/24 and gateway 192.168.7.1. IPv6 address shall be assigned using IPv6 auto-configuration. + + settrans -fgp /servers/socket/2 /hurd/pfinet6 -6 /servers/socket/26 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 + settrans -fgp /servers/socket/26 /hurd/pfinet6 -4 /servers/socket/2 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 + +Quite the same, but with static IPv6 address assignment: + + settrans -fgp /servers/socket/2 /hurd/pfinet6 -6 /servers/socket/26 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 \ + -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 + settrans -fgp /servers/socket/26 /hurd/pfinet6 -4 /servers/socket/2 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 \ + -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 + +# Multicast reception +IPv6 heavily relies on multicasting (especially router and neighbour solicits and advertisements), however GNU Mach by default isn't configured to receive and handle those multicast packets. That is, that neighbour solicitations and thus the whole IPv6 thing won't work. To make your Mach kernel receive these packets, you've got to set the IFF_ALLMULTI flag in the network glue: + + RCS file: /sources/hurd/gnumach/linux/dev/glue/Attic/net.c,v + retrieving revision 1.1.4.7 + diff -u -r1.1.4.7 net.c + --- net.c 27 Mar 2007 22:47:11 -0000 1.1.4.7 + +++ net.c 7 Oct 2007 17:05:04 -0000 + @@ -398,8 +398,11 @@ + } + else + { + - dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING; + + dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING | LINUX_IFF_ALLMULTI; + skb_queue_head_init (&dev->buffs[0]); + + + + if (dev->set_multicast_list) + + dev->set_multicast_list (dev); + } + if (IP_VALID (reply_port)) + ds_device_open_reply (reply_port, reply_port_type, + +If you're using the Xen-version of GNU Mach you don't have to change anything, pfinet6 should work out of the box. + +# Binaries +For your convenience there are binaries of a patched GNU Mach kernel (including default driver set and debugging support) and a stripped pfinet6 at -- cgit v1.2.3 From f62be2ba1b2446e1d942904e99309c94de990406 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 8 Oct 2007 10:56:24 +0200 Subject: Introduce some more line breaks to avoid displaying difficulties due to too large lines. --- hurd/translator/pfinet/ipv6.mdwn | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 9999ff92..891ffde0 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -14,14 +14,22 @@ To achieve this, you can tell pfinet6 to install active translators on specified Normal IPv4 network setup, address 192.168.7.23/24 and gateway 192.168.7.1. IPv6 address shall be assigned using IPv6 auto-configuration. - settrans -fgp /servers/socket/2 /hurd/pfinet6 -6 /servers/socket/26 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 - settrans -fgp /servers/socket/26 /hurd/pfinet6 -4 /servers/socket/2 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 + settrans -fgp /servers/socket/2 ↩ + /hurd/pfinet6 -6 /servers/socket/26 ↩ + -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 + settrans -fgp /servers/socket/26 ↩ + /hurd/pfinet6 -4 /servers/socket/2 ↩ + -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 Quite the same, but with static IPv6 address assignment: - settrans -fgp /servers/socket/2 /hurd/pfinet6 -6 /servers/socket/26 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 \ + settrans -fgp /servers/socket/2 ↩ + /hurd/pfinet6 -6 /servers/socket/26 ↩ + -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 ↩ -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 - settrans -fgp /servers/socket/26 /hurd/pfinet6 -4 /servers/socket/2 -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 \ + settrans -fgp /servers/socket/26 ↩ + /hurd/pfinet6 -4 /servers/socket/2 ↩ + -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 ↩ -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 # Multicast reception -- cgit v1.2.3 From bb94777773a54e5cefe03aa309dcfec40745715f Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 8 Oct 2007 11:03:42 +0200 Subject: Some more links, wiki links and formatting. --- hurd/translator/pfinet/ipv6.mdwn | 39 ++++++++++++++++++++++++++++++++------- 1 file changed, 32 insertions(+), 7 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 891ffde0..892aff59 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -6,13 +6,25 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl.txt]]."]] -[[Stefan_Siegl|stesie]] has contributed some patches, making the pfinet server IPv6 aware. Because IPv4 and IPv6 protocols are quite related to each other (think of mapped IPv4 addresses, etc.), there is no separate server for IPv6 but support for the latter has been incorporated into the common pfinet. Unfortunately it's a little bit clumsy now, to set the translator up, since it has to be bound to */servers/socket/2* (like before) as well as */servers/socket/26* (for IPv6). +[[Stefan_Siegl|stesie]] has contributed some +[patches](http://lists.gnu.org/archive/html/bug-hurd/2007-10/msg00014.html), +making the pfinet server IPv6-aware. Because the IPv4 and IPv6 protocols are +quite related to each other (think of mapped IPv4 addresses, etc.), there is no +separate [[server|translator]] for IPv6 but support for the latter has been +incorporated into the common pfinet. Unfortunately it's a little bit clumsy +now to set the [[translator]] up, since it has to be bound to +*/servers/socket/2* (like before) as well as */servers/socket/26* (for IPv6). + +To achieve this, you can tell pfinet6 to install [[active_translators|active]] +on specified nodes, using **-4** and **-6** options. This is, you have to +install a [[passive_translator|passive]] on */servers/socket/2* that also binds +the IPv6 port and vice versa. -To achieve this, you can tell pfinet6 to install active translators on specified nodes, using **-4** and **-6** options. This is, you have to install a passive translator on /servers/socket/2 that also binds the IPv6 port and vice versa. # Examples -Normal IPv4 network setup, address 192.168.7.23/24 and gateway 192.168.7.1. IPv6 address shall be assigned using IPv6 auto-configuration. +Normal IPv4 network setup, address 192.168.7.23/24 and gateway 192.168.7.1. +IPv6 address shall be assigned using IPv6 auto-configuration. settrans -fgp /servers/socket/2 ↩ /hurd/pfinet6 -6 /servers/socket/26 ↩ @@ -32,8 +44,15 @@ Quite the same, but with static IPv6 address assignment: -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 ↩ -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 -# Multicast reception -IPv6 heavily relies on multicasting (especially router and neighbour solicits and advertisements), however GNU Mach by default isn't configured to receive and handle those multicast packets. That is, that neighbour solicitations and thus the whole IPv6 thing won't work. To make your Mach kernel receive these packets, you've got to set the IFF_ALLMULTI flag in the network glue: + +# Multicast Reception + +IPv6 heavily relies on multicasting (especially router and neighbour solicits +and advertisements), however [[GNU_Mach|microkernel/mach/gnumach]] by default +isn't configured to receive and handle those multicast packets. That is, that +neighbour solicitations and thus the whole IPv6 thing won't work. To make your +Mach kernel receive these packets, you've got to set the IFF_ALLMULTI flag in +the network glue: RCS file: /sources/hurd/gnumach/linux/dev/glue/Attic/net.c,v retrieving revision 1.1.4.7 @@ -54,7 +73,13 @@ IPv6 heavily relies on multicasting (especially router and neighbour solicits an if (IP_VALID (reply_port)) ds_device_open_reply (reply_port, reply_port_type, -If you're using the Xen-version of GNU Mach you don't have to change anything, pfinet6 should work out of the box. +If you're using the +[[Xen-version_of_GNU_Mach|microkernel/mach/gnumach/ports/xen]] you don't have +to change anything, pfinet6 should work out of the box. + # Binaries -For your convenience there are binaries of a patched GNU Mach kernel (including default driver set and debugging support) and a stripped pfinet6 at + +For your convenience there are binaries of a patched GNU Mach kernel (including +default driver set and debugging support) and a stripped pfinet6 at + -- cgit v1.2.3 From 0c1d6d85d207faf73608596d268547c4c7ed0672 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 8 Oct 2007 11:04:41 +0200 Subject: Stub page about pfinet. --- hurd/translator.mdwn | 1 + hurd/translator/pfinet.mdwn | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 hurd/translator/pfinet.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index b9e31bfd..d3d8c8ed 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -34,6 +34,7 @@ The [[Hurd_Hacking_Guide]] also has a tutorial. # Existing Translators +* [[pfinet]] * [[storeio]] * ... diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn new file mode 100644 index 00000000..c0bd1b28 --- /dev/null +++ b/hurd/translator/pfinet.mdwn @@ -0,0 +1,9 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl.txt]]."]] + +Notes about [[IPv6]]. -- cgit v1.2.3 From dcc3ddff7499aa9572f59646865cdf032e62a83c Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 9 Oct 2007 09:45:44 +0200 Subject: The patch for multicast reception has been applied to the gnumach-1-branch. --- hurd/translator/pfinet/ipv6.mdwn | 35 +---------------------------------- 1 file changed, 1 insertion(+), 34 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 892aff59..0478fc31 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -45,41 +45,8 @@ Quite the same, but with static IPv6 address assignment: -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 -# Multicast Reception - -IPv6 heavily relies on multicasting (especially router and neighbour solicits -and advertisements), however [[GNU_Mach|microkernel/mach/gnumach]] by default -isn't configured to receive and handle those multicast packets. That is, that -neighbour solicitations and thus the whole IPv6 thing won't work. To make your -Mach kernel receive these packets, you've got to set the IFF_ALLMULTI flag in -the network glue: - - RCS file: /sources/hurd/gnumach/linux/dev/glue/Attic/net.c,v - retrieving revision 1.1.4.7 - diff -u -r1.1.4.7 net.c - --- net.c 27 Mar 2007 22:47:11 -0000 1.1.4.7 - +++ net.c 7 Oct 2007 17:05:04 -0000 - @@ -398,8 +398,11 @@ - } - else - { - - dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING; - + dev->flags |= LINUX_IFF_UP | LINUX_IFF_RUNNING | LINUX_IFF_ALLMULTI; - skb_queue_head_init (&dev->buffs[0]); - + - + if (dev->set_multicast_list) - + dev->set_multicast_list (dev); - } - if (IP_VALID (reply_port)) - ds_device_open_reply (reply_port, reply_port_type, - -If you're using the -[[Xen-version_of_GNU_Mach|microkernel/mach/gnumach/ports/xen]] you don't have -to change anything, pfinet6 should work out of the box. - - # Binaries -For your convenience there are binaries of a patched GNU Mach kernel (including +For your convenience there are binaries of a patched (multicast reception) GNU Mach kernel (including default driver set and debugging support) and a stripped pfinet6 at -- cgit v1.2.3 From 34daa1c14ec24276e6387a4d89646708bd10dfe5 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 9 Oct 2007 10:14:10 +0200 Subject: Refactor, now that the work has been installed upstream. --- hurd/translator/pfinet/ipv6.mdwn | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 0478fc31..ca1132db 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -6,16 +6,20 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl.txt]]."]] -[[Stefan_Siegl|stesie]] has contributed some -[patches](http://lists.gnu.org/archive/html/bug-hurd/2007-10/msg00014.html), -making the pfinet server IPv6-aware. Because the IPv4 and IPv6 protocols are +[[Stefan_Siegl|stesie]] has added IPv6 support to the pfinet [[translator]]. +This was [Savannah task #5470](http://savannah.gnu.org/task/?5470). + + +# Implementation + +Because the IPv4 and IPv6 protocols are quite related to each other (think of mapped IPv4 addresses, etc.), there is no separate [[server|translator]] for IPv6 but support for the latter has been incorporated into the common pfinet. Unfortunately it's a little bit clumsy now to set the [[translator]] up, since it has to be bound to */servers/socket/2* (like before) as well as */servers/socket/26* (for IPv6). -To achieve this, you can tell pfinet6 to install [[active_translators|active]] +To achieve this, you can tell pfinet to install [[active_translators|active]] on specified nodes, using **-4** and **-6** options. This is, you have to install a [[passive_translator|passive]] on */servers/socket/2* that also binds the IPv6 port and vice versa. @@ -27,26 +31,28 @@ Normal IPv4 network setup, address 192.168.7.23/24 and gateway 192.168.7.1. IPv6 address shall be assigned using IPv6 auto-configuration. settrans -fgp /servers/socket/2 ↩ - /hurd/pfinet6 -6 /servers/socket/26 ↩ + /hurd/pfinet -6 /servers/socket/26 ↩ -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 settrans -fgp /servers/socket/26 ↩ - /hurd/pfinet6 -4 /servers/socket/2 ↩ + /hurd/pfinet -4 /servers/socket/2 ↩ -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 Quite the same, but with static IPv6 address assignment: settrans -fgp /servers/socket/2 ↩ - /hurd/pfinet6 -6 /servers/socket/26 ↩ + /hurd/pfinet -6 /servers/socket/26 ↩ -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 ↩ -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 settrans -fgp /servers/socket/26 ↩ - /hurd/pfinet6 -4 /servers/socket/2 ↩ + /hurd/pfinet -4 /servers/socket/2 ↩ -i eth0 -a 192.168.7.23 -m 255.255.255.0 -g 192.168.7.1 ↩ -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 # Binaries -For your convenience there are binaries of a patched (multicast reception) GNU Mach kernel (including -default driver set and debugging support) and a stripped pfinet6 at +For your convenience -- this work is not yet available in the Debian packages +-- binaries of a patched (multicast reception) GNU Mach kernel (including +default driver set and debugging support) and a stripped pfinet translator +(named `pfinet6` here) are being provided at -- cgit v1.2.3 From cbfdda1939077550ca90b3609b031c2fa111e610 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 29 Oct 2007 21:29:27 +0100 Subject: The quick and dirty way of getting /dev/{,u}random. --- hurd/translator/random.mdwn | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/random.mdwn b/hurd/translator/random.mdwn index 294531d1..afb76953 100644 --- a/hurd/translator/random.mdwn +++ b/hurd/translator/random.mdwn @@ -46,6 +46,11 @@ but they are not yet in the default installation. for GNU Mach](http://download.ibofobi.dk/hurd-entropy/gnumach-entropy.diff.bz2). +* Quick and dirty way: + + sudo cp /bin/bash /dev/random + sudo ln -s random /dev/urandom + --- # Setup Tips -- cgit v1.2.3 From d96e3c9217a6b8ac123720a9857400bafb138676 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 29 Oct 2007 21:31:01 +0100 Subject: Stub for fatfs. --- hurd/translator.mdwn | 1 + hurd/translator/fatfs.mdwn | 9 +++++++++ 2 files changed, 10 insertions(+) create mode 100644 hurd/translator/fatfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index d3d8c8ed..112693a6 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -36,6 +36,7 @@ The [[Hurd_Hacking_Guide]] also has a tutorial. * [[pfinet]] * [[storeio]] +* [[fatfs]] * ... diff --git a/hurd/translator/fatfs.mdwn b/hurd/translator/fatfs.mdwn new file mode 100644 index 00000000..436ecf99 --- /dev/null +++ b/hurd/translator/fatfs.mdwn @@ -0,0 +1,9 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl.txt]]."]] + +The current `fatfs` translator is read-only. -- cgit v1.2.3 From 592101a033b67b9f732d8938798ddf535d177d0f Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 29 Oct 2007 21:37:07 +0100 Subject: Stub for ext2fs. --- hurd/translator.mdwn | 1 + hurd/translator/ext2fs.mdwn | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 hurd/translator/ext2fs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 112693a6..afd9b647 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -36,6 +36,7 @@ The [[Hurd_Hacking_Guide]] also has a tutorial. * [[pfinet]] * [[storeio]] +* [[ext2fs]] * [[fatfs]] * ... diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn new file mode 100644 index 00000000..c644d0ca --- /dev/null +++ b/hurd/translator/ext2fs.mdwn @@ -0,0 +1,16 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl.txt]]."]] + +The `ext2fs` translator from the upstream Hurd code base can only handle file +systems with sizes of less than roughly 2 GiB. + +A patch exists to lift this limitation (and is being used in the +[[Debian_GNU/Hurd_distribution|running/debian]]), but it introduces another +incompatibility: `ext2fs` then only supports block sizes of 4096 bytes. +Smaller block sizes are commonly automatically selected by `mke2fs` when using +small backend stores, like floppy devices. -- cgit v1.2.3 From cd10b4a51603da6fb701b0997dcbf42f8f6c317d Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 9 Nov 2007 16:38:01 +0100 Subject: Get rid of the TXT version of the FDL and switch to using the Texinfo-rendered one instead. --- Hurd/HurdNames.mdwn | 2 +- Hurd/TheGnuHurd.mdwn | 2 +- abac.mdwn | 2 +- about_the_twiki_to_ikiwiki_conversion.mdwn | 2 +- asbestos.mdwn | 2 +- capability.mdwn | 2 +- community/facebook.mdwn | 2 +- community/meetings/stesie_2007-10-12.mdwn | 2 +- confused_deputy.mdwn | 2 +- designation.mdwn | 2 +- destructive_interference.mdwn | 2 +- empty_page.mdwn | 2 +- extensibility.mdwn | 2 +- fdl.txt | 397 --------------------- how_to_contribute_to_this_wiki.mdwn | 2 +- hurd/authentication.mdwn | 2 +- hurd/building/cross-compiling.mdwn | 2 +- hurd/concepts.mdwn | 2 +- hurd/contributing.mdwn | 2 +- hurd/critique.mdwn | 2 +- hurd/debugging.mdwn | 2 +- hurd/debugging/gdb.mdwn | 2 +- hurd/debugging/gdb/backtrace.mdwn | 2 +- hurd/debugging/gdb/noninvasive_debugging.mdwn | 2 +- hurd/debugging/hurd.mdwn | 2 +- hurd/debugging/rpctrace.mdwn | 2 +- hurd/gettinghelp.mdwn | 2 +- hurd/history.mdwn | 2 +- hurd/hurd_hacking_guide.mdwn | 2 +- hurd/libpager.mdwn | 2 +- hurd/libstore.mdwn | 2 +- hurd/logo.mdwn | 2 +- hurd/neighborhurd.mdwn | 2 +- hurd/ng/history.mdwn | 2 +- hurd/ng/position_paper.mdwn | 2 +- hurd/running.mdwn | 2 +- hurd/running/debian/DebianAptOffline.mdwn | 2 +- hurd/subhurd.mdwn | 2 +- hurd/translator.mdwn | 2 +- hurd/translator/ext2fs.mdwn | 2 +- hurd/translator/fatfs.mdwn | 2 +- hurd/translator/pfinet.mdwn | 2 +- hurd/translator/pfinet/ipv6.mdwn | 2 +- hurd/translator/storeio.mdwn | 2 +- hurd/virtual_file_system.mdwn | 2 +- ibac.mdwn | 2 +- idl.mdwn | 2 +- index/discussion.mdwn | 2 +- ipc.mdwn | 2 +- isolation.mdwn | 2 +- license.html | 2 +- liedtke.mdwn | 2 +- mechanism.mdwn | 2 +- microkernel.mdwn | 2 +- microkernel/for_beginners.mdwn | 2 +- microkernel/mach/documentation.mdwn | 2 +- microkernel/mach/external_pager_mechanism.mdwn | 2 +- microkernel/mach/gnumach.mdwn | 2 +- microkernel/mach/gnumach/boot_trace.mdwn | 2 +- microkernel/mach/gnumach/debugging.mdwn | 2 +- .../mach/gnumach/hardwarecompatibilitylist.mdwn | 2 +- microkernel/mach/gnumach/ports.mdwn | 2 +- microkernel/mach/ipc.mdwn | 2 +- microkernel/mach/ipc/sequence_numbering.mdwn | 2 +- microkernel/mach/port.mdwn | 2 +- microkernel/mach/rpc.mdwn | 2 +- naming_context.mdwn | 2 +- persistency.mdwn | 2 +- policy.mdwn | 2 +- principal.mdwn | 2 +- rpc.mdwn | 2 +- sfi.mdwn | 2 +- sidebar.mdwn | 2 +- tcb.mdwn | 2 +- trust.mdwn | 2 +- 75 files changed, 74 insertions(+), 471 deletions(-) delete mode 100644 fdl.txt (limited to 'hurd/translator') diff --git a/Hurd/HurdNames.mdwn b/Hurd/HurdNames.mdwn index 1730c7bc..07d5ebd9 100644 --- a/Hurd/HurdNames.mdwn +++ b/Hurd/HurdNames.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[toc ]] diff --git a/Hurd/TheGnuHurd.mdwn b/Hurd/TheGnuHurd.mdwn index bcae817c..f14a6939 100644 --- a/Hurd/TheGnuHurd.mdwn +++ b/Hurd/TheGnuHurd.mdwn @@ -5,7 +5,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The Hurd is GNU's replacement for the various UNIX and Linux kernels. diff --git a/abac.mdwn b/abac.mdwn index e4486c10..1a0db406 100644 --- a/abac.mdwn +++ b/abac.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] ABAC stands for authorization-based access control. In this model, access is not granted based on the diff --git a/about_the_twiki_to_ikiwiki_conversion.mdwn b/about_the_twiki_to_ikiwiki_conversion.mdwn index bf8fb1fa..01f284e3 100644 --- a/about_the_twiki_to_ikiwiki_conversion.mdwn +++ b/about_the_twiki_to_ikiwiki_conversion.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # Some Quick Notes About the *TWiki to ikiwiki* Conversion diff --git a/asbestos.mdwn b/asbestos.mdwn index f3c8d94a..838dfd0d 100644 --- a/asbestos.mdwn +++ b/asbestos.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Asbestos is an operating system developed at MIT, Stanford and UCLA to explore information flow control policies. The motivation diff --git a/capability.mdwn b/capability.mdwn index 0e06a6d6..bb849cae 100644 --- a/capability.mdwn +++ b/capability.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A capability is a protected reference. It is a reference in that it designates an object; it is protected in that in cannot be diff --git a/community/facebook.mdwn b/community/facebook.mdwn index 07e6eaf9..a6e9e558 100644 --- a/community/facebook.mdwn +++ b/community/facebook.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] There is [a Facebook group for the Hurd](http://www.facebook.com/group.php?gid=5141429597). If you're on Facebook, join it and say hello. diff --git a/community/meetings/stesie_2007-10-12.mdwn b/community/meetings/stesie_2007-10-12.mdwn index 60b6a1cf..d34bf045 100644 --- a/community/meetings/stesie_2007-10-12.mdwn +++ b/community/meetings/stesie_2007-10-12.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] On the weekend 2007-10-12 to 14 [[Stefan_Siegl|stesie]] invited Hurd people. Colin Leitner and [[Thomas_Schwinge|tschwinge]] came, as well as novice diff --git a/confused_deputy.mdwn b/confused_deputy.mdwn index 01c3513a..ac4a9ede 100644 --- a/confused_deputy.mdwn +++ b/confused_deputy.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [The confused deputy](http://www.cis.upenn.edu/~KeyKOS/ConfusedDeputy.html) problem was articulated by Norm Hardy. It is a possible consequence diff --git a/designation.mdwn b/designation.mdwn index 55037939..c9c7c166 100644 --- a/designation.mdwn +++ b/designation.mdwn @@ -4,6 +4,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] To designate is to name. diff --git a/destructive_interference.mdwn b/destructive_interference.mdwn index 44e0855e..2ace1a33 100644 --- a/destructive_interference.mdwn +++ b/destructive_interference.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Interference can be destructive or non-destructive. When a [[principal]] invokes an object (thereby requesting a service) and the implementation diff --git a/empty_page.mdwn b/empty_page.mdwn index 47464167..200ed59e 100644 --- a/empty_page.mdwn +++ b/empty_page.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] HERE STARTS YOUR NEW CONTENT -- remove everything from here on, including this line. diff --git a/extensibility.mdwn b/extensibility.mdwn index edfd78d2..ba7359a0 100644 --- a/extensibility.mdwn +++ b/extensibility.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] An extensible system is one that enables extensibility. Enabling extensibility means providing non-privileged mechanisms to extend existing objects and to diff --git a/fdl.txt b/fdl.txt deleted file mode 100644 index 4a0fe1c8..00000000 --- a/fdl.txt +++ /dev/null @@ -1,397 +0,0 @@ - GNU Free Documentation License - Version 1.2, November 2002 - - - Copyright (C) 2000,2001,2002 Free Software Foundation, Inc. - 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - -0. PREAMBLE - -The purpose of this License is to make a manual, textbook, or other -functional and useful document "free" in the sense of freedom: to -assure everyone the effective freedom to copy and redistribute it, -with or without modifying it, either commercially or noncommercially. -Secondarily, this License preserves for the author and publisher a way -to get credit for their work, while not being considered responsible -for modifications made by others. - -This License is a kind of "copyleft", which means that derivative -works of the document must themselves be free in the same sense. It -complements the GNU General Public License, which is a copyleft -license designed for free software. - -We have designed this License in order to use it for manuals for free -software, because free software needs free documentation: a free -program should come with manuals providing the same freedoms that the -software does. But this License is not limited to software manuals; -it can be used for any textual work, regardless of subject matter or -whether it is published as a printed book. We recommend this License -principally for works whose purpose is instruction or reference. - - -1. APPLICABILITY AND DEFINITIONS - -This License applies to any manual or other work, in any medium, that -contains a notice placed by the copyright holder saying it can be -distributed under the terms of this License. Such a notice grants a -world-wide, royalty-free license, unlimited in duration, to use that -work under the conditions stated herein. The "Document", below, -refers to any such manual or work. Any member of the public is a -licensee, and is addressed as "you". You accept the license if you -copy, modify or distribute the work in a way requiring permission -under copyright law. - -A "Modified Version" of the Document means any work containing the -Document or a portion of it, either copied verbatim, or with -modifications and/or translated into another language. - -A "Secondary Section" is a named appendix or a front-matter section of -the Document that deals exclusively with the relationship of the -publishers or authors of the Document to the Document's overall subject -(or to related matters) and contains nothing that could fall directly -within that overall subject. (Thus, if the Document is in part a -textbook of mathematics, a Secondary Section may not explain any -mathematics.) The relationship could be a matter of historical -connection with the subject or with related matters, or of legal, -commercial, philosophical, ethical or political position regarding -them. - -The "Invariant Sections" are certain Secondary Sections whose titles -are designated, as being those of Invariant Sections, in the notice -that says that the Document is released under this License. If a -section does not fit the above definition of Secondary then it is not -allowed to be designated as Invariant. The Document may contain zero -Invariant Sections. If the Document does not identify any Invariant -Sections then there are none. - -The "Cover Texts" are certain short passages of text that are listed, -as Front-Cover Texts or Back-Cover Texts, in the notice that says that -the Document is released under this License. A Front-Cover Text may -be at most 5 words, and a Back-Cover Text may be at most 25 words. - -A "Transparent" copy of the Document means a machine-readable copy, -represented in a format whose specification is available to the -general public, that is suitable for revising the document -straightforwardly with generic text editors or (for images composed of -pixels) generic paint programs or (for drawings) some widely available -drawing editor, and that is suitable for input to text formatters or -for automatic translation to a variety of formats suitable for input -to text formatters. A copy made in an otherwise Transparent file -format whose markup, or absence of markup, has been arranged to thwart -or discourage subsequent modification by readers is not Transparent. -An image format is not Transparent if used for any substantial amount -of text. A copy that is not "Transparent" is called "Opaque". - -Examples of suitable formats for Transparent copies include plain -ASCII without markup, Texinfo input format, LaTeX input format, SGML -or XML using a publicly available DTD, and standard-conforming simple -HTML, PostScript or PDF designed for human modification. Examples of -transparent image formats include PNG, XCF and JPG. Opaque formats -include proprietary formats that can be read and edited only by -proprietary word processors, SGML or XML for which the DTD and/or -processing tools are not generally available, and the -machine-generated HTML, PostScript or PDF produced by some word -processors for output purposes only. - -The "Title Page" means, for a printed book, the title page itself, -plus such following pages as are needed to hold, legibly, the material -this License requires to appear in the title page. For works in -formats which do not have any title page as such, "Title Page" means -the text near the most prominent appearance of the work's title, -preceding the beginning of the body of the text. - -A section "Entitled XYZ" means a named subunit of the Document whose -title either is precisely XYZ or contains XYZ in parentheses following -text that translates XYZ in another language. (Here XYZ stands for a -specific section name mentioned below, such as "Acknowledgements", -"Dedications", "Endorsements", or "History".) To "Preserve the Title" -of such a section when you modify the Document means that it remains a -section "Entitled XYZ" according to this definition. - -The Document may include Warranty Disclaimers next to the notice which -states that this License applies to the Document. These Warranty -Disclaimers are considered to be included by reference in this -License, but only as regards disclaiming warranties: any other -implication that these Warranty Disclaimers may have is void and has -no effect on the meaning of this License. - - -2. VERBATIM COPYING - -You may copy and distribute the Document in any medium, either -commercially or noncommercially, provided that this License, the -copyright notices, and the license notice saying this License applies -to the Document are reproduced in all copies, and that you add no other -conditions whatsoever to those of this License. You may not use -technical measures to obstruct or control the reading or further -copying of the copies you make or distribute. However, you may accept -compensation in exchange for copies. If you distribute a large enough -number of copies you must also follow the conditions in section 3. - -You may also lend copies, under the same conditions stated above, and -you may publicly display copies. - - -3. COPYING IN QUANTITY - -If you publish printed copies (or copies in media that commonly have -printed covers) of the Document, numbering more than 100, and the -Document's license notice requires Cover Texts, you must enclose the -copies in covers that carry, clearly and legibly, all these Cover -Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on -the back cover. Both covers must also clearly and legibly identify -you as the publisher of these copies. The front cover must present -the full title with all words of the title equally prominent and -visible. You may add other material on the covers in addition. -Copying with changes limited to the covers, as long as they preserve -the title of the Document and satisfy these conditions, can be treated -as verbatim copying in other respects. - -If the required texts for either cover are too voluminous to fit -legibly, you should put the first ones listed (as many as fit -reasonably) on the actual cover, and continue the rest onto adjacent -pages. - -If you publish or distribute Opaque copies of the Document numbering -more than 100, you must either include a machine-readable Transparent -copy along with each Opaque copy, or state in or with each Opaque copy -a computer-network location from which the general network-using -public has access to download using public-standard network protocols -a complete Transparent copy of the Document, free of added material. -If you use the latter option, you must take reasonably prudent steps, -when you begin distribution of Opaque copies in quantity, to ensure -that this Transparent copy will remain thus accessible at the stated -location until at least one year after the last time you distribute an -Opaque copy (directly or through your agents or retailers) of that -edition to the public. - -It is requested, but not required, that you contact the authors of the -Document well before redistributing any large number of copies, to give -them a chance to provide you with an updated version of the Document. - - -4. MODIFICATIONS - -You may copy and distribute a Modified Version of the Document under -the conditions of sections 2 and 3 above, provided that you release -the Modified Version under precisely this License, with the Modified -Version filling the role of the Document, thus licensing distribution -and modification of the Modified Version to whoever possesses a copy -of it. In addition, you must do these things in the Modified Version: - -A. Use in the Title Page (and on the covers, if any) a title distinct - from that of the Document, and from those of previous versions - (which should, if there were any, be listed in the History section - of the Document). You may use the same title as a previous version - if the original publisher of that version gives permission. -B. List on the Title Page, as authors, one or more persons or entities - responsible for authorship of the modifications in the Modified - Version, together with at least five of the principal authors of the - Document (all of its principal authors, if it has fewer than five), - unless they release you from this requirement. -C. State on the Title page the name of the publisher of the - Modified Version, as the publisher. -D. Preserve all the copyright notices of the Document. -E. Add an appropriate copyright notice for your modifications - adjacent to the other copyright notices. -F. Include, immediately after the copyright notices, a license notice - giving the public permission to use the Modified Version under the - terms of this License, in the form shown in the Addendum below. -G. Preserve in that license notice the full lists of Invariant Sections - and required Cover Texts given in the Document's license notice. -H. Include an unaltered copy of this License. -I. Preserve the section Entitled "History", Preserve its Title, and add - to it an item stating at least the title, year, new authors, and - publisher of the Modified Version as given on the Title Page. If - there is no section Entitled "History" in the Document, create one - stating the title, year, authors, and publisher of the Document as - given on its Title Page, then add an item describing the Modified - Version as stated in the previous sentence. -J. Preserve the network location, if any, given in the Document for - public access to a Transparent copy of the Document, and likewise - the network locations given in the Document for previous versions - it was based on. These may be placed in the "History" section. - You may omit a network location for a work that was published at - least four years before the Document itself, or if the original - publisher of the version it refers to gives permission. -K. For any section Entitled "Acknowledgements" or "Dedications", - Preserve the Title of the section, and preserve in the section all - the substance and tone of each of the contributor acknowledgements - and/or dedications given therein. -L. Preserve all the Invariant Sections of the Document, - unaltered in their text and in their titles. Section numbers - or the equivalent are not considered part of the section titles. -M. Delete any section Entitled "Endorsements". Such a section - may not be included in the Modified Version. -N. Do not retitle any existing section to be Entitled "Endorsements" - or to conflict in title with any Invariant Section. -O. Preserve any Warranty Disclaimers. - -If the Modified Version includes new front-matter sections or -appendices that qualify as Secondary Sections and contain no material -copied from the Document, you may at your option designate some or all -of these sections as invariant. To do this, add their titles to the -list of Invariant Sections in the Modified Version's license notice. -These titles must be distinct from any other section titles. - -You may add a section Entitled "Endorsements", provided it contains -nothing but endorsements of your Modified Version by various -parties--for example, statements of peer review or that the text has -been approved by an organization as the authoritative definition of a -standard. - -You may add a passage of up to five words as a Front-Cover Text, and a -passage of up to 25 words as a Back-Cover Text, to the end of the list -of Cover Texts in the Modified Version. Only one passage of -Front-Cover Text and one of Back-Cover Text may be added by (or -through arrangements made by) any one entity. If the Document already -includes a cover text for the same cover, previously added by you or -by arrangement made by the same entity you are acting on behalf of, -you may not add another; but you may replace the old one, on explicit -permission from the previous publisher that added the old one. - -The author(s) and publisher(s) of the Document do not by this License -give permission to use their names for publicity for or to assert or -imply endorsement of any Modified Version. - - -5. COMBINING DOCUMENTS - -You may combine the Document with other documents released under this -License, under the terms defined in section 4 above for modified -versions, provided that you include in the combination all of the -Invariant Sections of all of the original documents, unmodified, and -list them all as Invariant Sections of your combined work in its -license notice, and that you preserve all their Warranty Disclaimers. - -The combined work need only contain one copy of this License, and -multiple identical Invariant Sections may be replaced with a single -copy. If there are multiple Invariant Sections with the same name but -different contents, make the title of each such section unique by -adding at the end of it, in parentheses, the name of the original -author or publisher of that section if known, or else a unique number. -Make the same adjustment to the section titles in the list of -Invariant Sections in the license notice of the combined work. - -In the combination, you must combine any sections Entitled "History" -in the various original documents, forming one section Entitled -"History"; likewise combine any sections Entitled "Acknowledgements", -and any sections Entitled "Dedications". You must delete all sections -Entitled "Endorsements". - - -6. COLLECTIONS OF DOCUMENTS - -You may make a collection consisting of the Document and other documents -released under this License, and replace the individual copies of this -License in the various documents with a single copy that is included in -the collection, provided that you follow the rules of this License for -verbatim copying of each of the documents in all other respects. - -You may extract a single document from such a collection, and distribute -it individually under this License, provided you insert a copy of this -License into the extracted document, and follow this License in all -other respects regarding verbatim copying of that document. - - -7. AGGREGATION WITH INDEPENDENT WORKS - -A compilation of the Document or its derivatives with other separate -and independent documents or works, in or on a volume of a storage or -distribution medium, is called an "aggregate" if the copyright -resulting from the compilation is not used to limit the legal rights -of the compilation's users beyond what the individual works permit. -When the Document is included in an aggregate, this License does not -apply to the other works in the aggregate which are not themselves -derivative works of the Document. - -If the Cover Text requirement of section 3 is applicable to these -copies of the Document, then if the Document is less than one half of -the entire aggregate, the Document's Cover Texts may be placed on -covers that bracket the Document within the aggregate, or the -electronic equivalent of covers if the Document is in electronic form. -Otherwise they must appear on printed covers that bracket the whole -aggregate. - - -8. TRANSLATION - -Translation is considered a kind of modification, so you may -distribute translations of the Document under the terms of section 4. -Replacing Invariant Sections with translations requires special -permission from their copyright holders, but you may include -translations of some or all Invariant Sections in addition to the -original versions of these Invariant Sections. You may include a -translation of this License, and all the license notices in the -Document, and any Warranty Disclaimers, provided that you also include -the original English version of this License and the original versions -of those notices and disclaimers. In case of a disagreement between -the translation and the original version of this License or a notice -or disclaimer, the original version will prevail. - -If a section in the Document is Entitled "Acknowledgements", -"Dedications", or "History", the requirement (section 4) to Preserve -its Title (section 1) will typically require changing the actual -title. - - -9. TERMINATION - -You may not copy, modify, sublicense, or distribute the Document except -as expressly provided for under this License. Any other attempt to -copy, modify, sublicense or distribute the Document is void, and will -automatically terminate your rights under this License. However, -parties who have received copies, or rights, from you under this -License will not have their licenses terminated so long as such -parties remain in full compliance. - - -10. FUTURE REVISIONS OF THIS LICENSE - -The Free Software Foundation may publish new, revised versions -of the GNU Free Documentation License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. See -http://www.gnu.org/copyleft/. - -Each version of the License is given a distinguishing version number. -If the Document specifies that a particular numbered version of this -License "or any later version" applies to it, you have the option of -following the terms and conditions either of that specified version or -of any later version that has been published (not as a draft) by the -Free Software Foundation. If the Document does not specify a version -number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. - - -ADDENDUM: How to use this License for your documents - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and -license notices just after the title page: - - Copyright (c) YEAR YOUR NAME. - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.2 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. - A copy of the license is included in the section entitled "GNU - Free Documentation License". - -If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the "with...Texts." line with this: - - with the Invariant Sections being LIST THEIR TITLES, with the - Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. - -If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - -If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of -free software license, such as the GNU General Public License, -to permit their use in free software. diff --git a/how_to_contribute_to_this_wiki.mdwn b/how_to_contribute_to_this_wiki.mdwn index 3ee9a782..43d5b23e 100644 --- a/how_to_contribute_to_this_wiki.mdwn +++ b/how_to_contribute_to_this_wiki.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] (!) Some general hints first; they may sound very familiar from other software projects: diff --git a/hurd/authentication.mdwn b/hurd/authentication.mdwn index 7502aa7d..54dc8de2 100644 --- a/hurd/authentication.mdwn +++ b/hurd/authentication.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] UIDs on the Hurd are separate from processes. A process has [[capabilities|capability]] designating so-called UID vectors that diff --git a/hurd/building/cross-compiling.mdwn b/hurd/building/cross-compiling.mdwn index 16a26284..dd8edd0d 100644 --- a/hurd/building/cross-compiling.mdwn +++ b/hurd/building/cross-compiling.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[Thomas_Schwinge|tschwinge]] has written a shell script for building a complete cross-build environment for GNU/Hurd systems. diff --git a/hurd/concepts.mdwn b/hurd/concepts.mdwn index f56af8f0..1158d357 100644 --- a/hurd/concepts.mdwn +++ b/hurd/concepts.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] * [[Translator]] * [[Virtual_File_System]] diff --git a/hurd/contributing.mdwn b/hurd/contributing.mdwn index 9d07e740..132894ce 100644 --- a/hurd/contributing.mdwn +++ b/hurd/contributing.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # Porting Applications diff --git a/hurd/critique.mdwn b/hurd/critique.mdwn index 24f43198..4db8726f 100644 --- a/hurd/critique.mdwn +++ b/hurd/critique.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*A Critique of the GNU Hurd Multi-Server Operating diff --git a/hurd/debugging.mdwn b/hurd/debugging.mdwn index 5f4184e3..f2f5dcd6 100644 --- a/hurd/debugging.mdwn +++ b/hurd/debugging.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # Strategies diff --git a/hurd/debugging/gdb.mdwn b/hurd/debugging/gdb.mdwn index d9d6de02..f01a5461 100644 --- a/hurd/debugging/gdb.mdwn +++ b/hurd/debugging/gdb.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The [GNU debugger *GDB*](http://www.gnu.org/software/gdb/) works on GNU/Hurd systems as it does on other system, but has some additional [hurd-specific diff --git a/hurd/debugging/gdb/backtrace.mdwn b/hurd/debugging/gdb/backtrace.mdwn index 62067392..158031c4 100644 --- a/hurd/debugging/gdb/backtrace.mdwn +++ b/hurd/debugging/gdb/backtrace.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] When someone asks you to supply a backtrace (from a [[segmentation_fault]], for example), here is roughly what you have to do. diff --git a/hurd/debugging/gdb/noninvasive_debugging.mdwn b/hurd/debugging/gdb/noninvasive_debugging.mdwn index 63e970e2..18355c8c 100644 --- a/hurd/debugging/gdb/noninvasive_debugging.mdwn +++ b/hurd/debugging/gdb/noninvasive_debugging.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Sometimes using [[GDB]] on a system server can result in a [[deadlock]]. You can however still use GDB by using the [`set diff --git a/hurd/debugging/hurd.mdwn b/hurd/debugging/hurd.mdwn index f5c8bd34..2f758920 100644 --- a/hurd/debugging/hurd.mdwn +++ b/hurd/debugging/hurd.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Say you want to try running file system server (*[[translator/ext2fs]]*, *[[translator/jfs]]*, ...) against a modified version of *[[libpager]]* and diff --git a/hurd/debugging/rpctrace.mdwn b/hurd/debugging/rpctrace.mdwn index de85a8b7..05003fab 100644 --- a/hurd/debugging/rpctrace.mdwn +++ b/hurd/debugging/rpctrace.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] *rpctrace* is -- roughly -- an equivavlent to Linux's *strace* or Solaris' or BSD's *truss*. It is used to trace [[remote_procedure_call|rpc]]s a process is diff --git a/hurd/gettinghelp.mdwn b/hurd/gettinghelp.mdwn index d7f96323..704dcc07 100644 --- a/hurd/gettinghelp.mdwn +++ b/hurd/gettinghelp.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # Essential Documentation diff --git a/hurd/history.mdwn b/hurd/history.mdwn index 9f442b93..d556b5d5 100644 --- a/hurd/history.mdwn +++ b/hurd/history.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] History 1997-2003
Personal view of Marcus Brinkmann about Hurd development in 1997-2003. diff --git a/hurd/hurd_hacking_guide.mdwn b/hurd/hurd_hacking_guide.mdwn index c7bdb135..b277fb5e 100644 --- a/hurd/hurd_hacking_guide.mdwn +++ b/hurd/hurd_hacking_guide.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Originally written by Wolfgang Jährling, the [Hurd Hacking Guide](http://www.gnu.org/software/hurd/hacking-guide/hhg.html) contains an overview of some of the Hurd's features. diff --git a/hurd/libpager.mdwn b/hurd/libpager.mdwn index b51b9efd..f59d9a74 100644 --- a/hurd/libpager.mdwn +++ b/hurd/libpager.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Mach's [[microkernel/mach/external_pager_mechanism]]. diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index 87c6842e..b484accb 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] `libstore` is more than just a thin layer between [[GNU_Mach|microkernel/mach/gnumach]] devices (`hd0` for example) and the diff --git a/hurd/logo.mdwn b/hurd/logo.mdwn index 345b443e..b39a1525 100644 --- a/hurd/logo.mdwn +++ b/hurd/logo.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The famous *Hurd Boxes* logo is available at . diff --git a/hurd/neighborhurd.mdwn b/hurd/neighborhurd.mdwn index ac2939ec..9228d6ca 100644 --- a/hurd/neighborhurd.mdwn +++ b/hurd/neighborhurd.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] It is possible to run multiple instances of the Hurd in parallel, on a single instance of Mach. Other than diff --git a/hurd/ng/history.mdwn b/hurd/ng/history.mdwn index b9f083f3..0df6dc8e 100644 --- a/hurd/ng/history.mdwn +++ b/hurd/ng/history.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The idea of using [[microkernel/L4]] as a [[microkernel]] for a [[Hurd_system|hurd]] was initially voiced in the [[Hurd_community|community]] diff --git a/hurd/ng/position_paper.mdwn b/hurd/ng/position_paper.mdwn index b163aea7..901aae1a 100644 --- a/hurd/ng/position_paper.mdwn +++ b/hurd/ng/position_paper.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*Improving Usability via Access Decomposition and Policy diff --git a/hurd/running.mdwn b/hurd/running.mdwn index 82b11b53..28b9b241 100644 --- a/hurd/running.mdwn +++ b/hurd/running.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] * [[Distrib]] - Distributions based on the Hurd * [[microkernel/mach/gnumach/ports/Xen]] - In Xen diff --git a/hurd/running/debian/DebianAptOffline.mdwn b/hurd/running/debian/DebianAptOffline.mdwn index 6d03be5a..ad4fa9af 100644 --- a/hurd/running/debian/DebianAptOffline.mdwn +++ b/hurd/running/debian/DebianAptOffline.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # How to Installing Packages without a Network Connection from your Hurd Installation diff --git a/hurd/subhurd.mdwn b/hurd/subhurd.mdwn index e976a5ff..8751b459 100644 --- a/hurd/subhurd.mdwn +++ b/hurd/subhurd.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A sub-Hurd is like a [[neighbor_Hurd|neighborhurd]], however, makes use of some resources provided by another Hurd. For instance, backing store and the diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index afd9b647..9e72d108 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A translator is simply a normal program acting as an object server and participating in the Hurd's diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn index c644d0ca..9a5a9106 100644 --- a/hurd/translator/ext2fs.mdwn +++ b/hurd/translator/ext2fs.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The `ext2fs` translator from the upstream Hurd code base can only handle file systems with sizes of less than roughly 2 GiB. diff --git a/hurd/translator/fatfs.mdwn b/hurd/translator/fatfs.mdwn index 436ecf99..d1a4b69c 100644 --- a/hurd/translator/fatfs.mdwn +++ b/hurd/translator/fatfs.mdwn @@ -4,6 +4,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The current `fatfs` translator is read-only. diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn index c0bd1b28..2790c601 100644 --- a/hurd/translator/pfinet.mdwn +++ b/hurd/translator/pfinet.mdwn @@ -4,6 +4,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Notes about [[IPv6]]. diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index ca1132db..739fd47c 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[Stefan_Siegl|stesie]] has added IPv6 support to the pfinet [[translator]]. This was [Savannah task #5470](http://savannah.gnu.org/task/?5470). diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn index 4493fad1..58834ef1 100644 --- a/hurd/translator/storeio.mdwn +++ b/hurd/translator/storeio.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] `storeio` is a *translator for devices and other stores*. diff --git a/hurd/virtual_file_system.mdwn b/hurd/virtual_file_system.mdwn index e39c7705..f3c2faaf 100644 --- a/hurd/virtual_file_system.mdwn +++ b/hurd/virtual_file_system.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Path names are resolved using a distributed protocol. No single entity is responsible for the resolution of diff --git a/ibac.mdwn b/ibac.mdwn index 91bd5274..3e860a0c 100644 --- a/ibac.mdwn +++ b/ibac.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] IBAC stands for identity-based access control. In this access control scheme, access to a resource diff --git a/idl.mdwn b/idl.mdwn index bcaacdec..67c69830 100644 --- a/idl.mdwn +++ b/idl.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] An IDL is an interface definition language. The most well-known is CORBA. An IDL compiler takes a specification and generates stubs diff --git a/index/discussion.mdwn b/index/discussion.mdwn index 4d6b53f7..c9a7517c 100644 --- a/index/discussion.mdwn +++ b/index/discussion.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # TODO diff --git a/ipc.mdwn b/ipc.mdwn index 09d8499c..8047970d 100644 --- a/ipc.mdwn +++ b/ipc.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] IPC stands for interprocess communication. diff --git a/isolation.mdwn b/isolation.mdwn index cd6c0eea..0e3e41c0 100644 --- a/isolation.mdwn +++ b/isolation.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] When two [[principal]]s cannot affect each other, they are said to be isolated from one another. Strictly speaking, if two principals diff --git a/license.html b/license.html index a626f556..9b2ddd4f 100644 --- a/license.html +++ b/license.html @@ -2,4 +2,4 @@ Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included -in the section entitled [[GNU_Free_Documentation_License|/fdl.txt]]. +in the section entitled [[GNU_Free_Documentation_License|/fdl]]. diff --git a/liedtke.mdwn b/liedtke.mdwn index 927b1d1e..95dacdcb 100644 --- a/liedtke.mdwn +++ b/liedtke.mdwn @@ -4,6 +4,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Liedtke is the father of [[microkernel/L4]]. diff --git a/mechanism.mdwn b/mechanism.mdwn index e991a8b2..959ac003 100644 --- a/mechanism.mdwn +++ b/mechanism.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The Collaborative International Dictionary of English v.0.48 defines a mechanism as: diff --git a/microkernel.mdwn b/microkernel.mdwn index 21a826dc..944169ab 100644 --- a/microkernel.mdwn +++ b/microkernel.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[Liedtke]] explains in [On Microkernel Construction](http://l4ka.org/publications/paper.php?docid=642) that a microkernel attempts to minimize the mandatory part of the operating diff --git a/microkernel/for_beginners.mdwn b/microkernel/for_beginners.mdwn index f31111a7..bf9920e3 100644 --- a/microkernel/for_beginners.mdwn +++ b/microkernel/for_beginners.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # Concepts diff --git a/microkernel/mach/documentation.mdwn b/microkernel/mach/documentation.mdwn index ac9dd6ec..6c72d951 100644 --- a/microkernel/mach/documentation.mdwn +++ b/microkernel/mach/documentation.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] - OSF's [Kernel Interface](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps) - OSF's [Kernel Principles](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps) diff --git a/microkernel/mach/external_pager_mechanism.mdwn b/microkernel/mach/external_pager_mechanism.mdwn index 2c917ff6..09a9919b 100644 --- a/microkernel/mach/external_pager_mechanism.mdwn +++ b/microkernel/mach/external_pager_mechanism.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Mach provides a so-called external pager [[mechanism]]. This mechanism serves to separate *managing memory* from *managing diff --git a/microkernel/mach/gnumach.mdwn b/microkernel/mach/gnumach.mdwn index 5ad50f73..3a46ea82 100644 --- a/microkernel/mach/gnumach.mdwn +++ b/microkernel/mach/gnumach.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] GNU Mach is currently used by the GNU [[Hurd]]. diff --git a/microkernel/mach/gnumach/boot_trace.mdwn b/microkernel/mach/gnumach/boot_trace.mdwn index 495dfbf4..668a5977 100644 --- a/microkernel/mach/gnumach/boot_trace.mdwn +++ b/microkernel/mach/gnumach/boot_trace.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] `if NCPUS > 1` stuff is not being considered so far. diff --git a/microkernel/mach/gnumach/debugging.mdwn b/microkernel/mach/gnumach/debugging.mdwn index 94fdb461..0f550dcd 100644 --- a/microkernel/mach/gnumach/debugging.mdwn +++ b/microkernel/mach/gnumach/debugging.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Mach has a built-in kernel debugger. [Manual](http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html). diff --git a/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn b/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn index aa30189e..67cd9a38 100644 --- a/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn +++ b/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] # CPU Architecture diff --git a/microkernel/mach/gnumach/ports.mdwn b/microkernel/mach/gnumach/ports.mdwn index 47967d65..6bed775f 100644 --- a/microkernel/mach/gnumach/ports.mdwn +++ b/microkernel/mach/gnumach/ports.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] * [PowerPC](http://www.pjbruin.dds.nl/hurd/). Is not in a usable state. * Alpha. Was once started, but isn't in a usable state either. diff --git a/microkernel/mach/ipc.mdwn b/microkernel/mach/ipc.mdwn index a6aef7c7..abe536a1 100644 --- a/microkernel/mach/ipc.mdwn +++ b/microkernel/mach/ipc.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[General_information|/ipc]] about IPC. diff --git a/microkernel/mach/ipc/sequence_numbering.mdwn b/microkernel/mach/ipc/sequence_numbering.mdwn index 78a49c1a..602280f7 100644 --- a/microkernel/mach/ipc/sequence_numbering.mdwn +++ b/microkernel/mach/ipc/sequence_numbering.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Mach's [[IPC]] mechanism allows for getting access to a message's sequence number. diff --git a/microkernel/mach/port.mdwn b/microkernel/mach/port.mdwn index c572cfbb..df4420ab 100644 --- a/microkernel/mach/port.mdwn +++ b/microkernel/mach/port.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Mach ports are [[capabilities|capability]]. diff --git a/microkernel/mach/rpc.mdwn b/microkernel/mach/rpc.mdwn index b2e04908..9db99e74 100644 --- a/microkernel/mach/rpc.mdwn +++ b/microkernel/mach/rpc.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[General_information|/rpc]] about RPC. diff --git a/naming_context.mdwn b/naming_context.mdwn index 5c2badb9..14a9d9a0 100644 --- a/naming_context.mdwn +++ b/naming_context.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] Names are bindings to objects, however, to find an object given a name, the relation must be looked up in a diff --git a/persistency.mdwn b/persistency.mdwn index 370cbadf..1df99bc2 100644 --- a/persistency.mdwn +++ b/persistency.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A persistent object is an object that survives reboot. On Unix, files and directories are persistent but diff --git a/policy.mdwn b/policy.mdwn index e11720a5..6111e077 100644 --- a/policy.mdwn +++ b/policy.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A policy is a rule that define what may or may not happens, not how it happens. The latter is referred to as [[mechanism]]. diff --git a/principal.mdwn b/principal.mdwn index 6092f967..891c3224 100644 --- a/principal.mdwn +++ b/principal.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] A principal is an accountable entity. A principal may be a user. On some computer systems, users are represented by their diff --git a/rpc.mdwn b/rpc.mdwn index 4da79eb9..0878ac52 100644 --- a/rpc.mdwn +++ b/rpc.mdwn @@ -4,6 +4,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] RPC stands for remote procedure call. diff --git a/sfi.mdwn b/sfi.mdwn index a3a78832..8384b55c 100644 --- a/sfi.mdwn +++ b/sfi.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] SFI stands for Software-Based Fault Isolation. SFI is an [[isolation]] technique described by Wahbe et al. in their 1993 paper [Effcient diff --git a/sidebar.mdwn b/sidebar.mdwn index 21d24b7a..266b5f44 100644 --- a/sidebar.mdwn +++ b/sidebar.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] [[img hurd/logo/boxes-redrawn.png link=/hurd/logo]] diff --git a/tcb.mdwn b/tcb.mdwn index 0dc4d2fb..7eba1fc1 100644 --- a/tcb.mdwn +++ b/tcb.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] TCB stands for trusted computed base. Unqualified, the trusted computing base referrers to the set of components programs diff --git a/trust.mdwn b/trust.mdwn index d96f702f..341e394b 100644 --- a/trust.mdwn +++ b/trust.mdwn @@ -4,7 +4,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl.txt]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]] The word trust is used in a number of contexts with different technical meanings. Sometimes it is used to confuse, for instance trusted computing is rarely about -- cgit v1.2.3 From 1bea92e3838ac9a413544f6f22683185cde08d74 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 12 Nov 2007 19:05:14 +0100 Subject: Reintegrate [[Hurd/HostmuxTranslator]] as [[hurd/translator/hostmux.mdwn]]. --- Hurd/HostmuxTranslator.mdwn | 31 ------------------------------- hurd/translator.mdwn | 1 + hurd/translator/hostmux.mdwn | 31 +++++++++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 31 deletions(-) delete mode 100644 Hurd/HostmuxTranslator.mdwn create mode 100644 hurd/translator/hostmux.mdwn (limited to 'hurd/translator') diff --git a/Hurd/HostmuxTranslator.mdwn b/Hurd/HostmuxTranslator.mdwn deleted file mode 100644 index 5fab2dc5..00000000 --- a/Hurd/HostmuxTranslator.mdwn +++ /dev/null @@ -1,31 +0,0 @@ -Multiplexes arbitrary host names, making access to many differnt host fast and easy. - -For each host accessed via a directory an new translator is started with the hostname as option. Say, /hostmuxdemo should let you access your favourite host with your translator mytranslatorfs. - -**ls /hostmuxdemo/mybox/** would give the result of mytranslatorfs applied to host mybox. - -## Usage - -Hostmux takes translator options as argument and (in the easiest case ) starts the translator with the given arguments and the hostname as the last argument. - -### ftpfs - -ftpfs is a good example, that is even very usefull. With hostmux and ftpfs you can access anonymous ftp via the filesystem, sparing out complicate use of a ftp client. - -We assume you want to access the ftp root at all servers. The example host is ftp.yourbox.com. - -Usermux is called via **settrans -fgap /ftp /hurd/hostmux /hurd/ftpfs /** . - -* **-fg** makes settrans try hard to remove an existing old translator from **/ftp** -* **ap** sets an active translator (starts the translator) and a passive translator (stores translator information in the filesystem with which an active translator can be started on access of this node) -* **/ftp** is where we want to set the translator -* **/hurd/hostmux** is obviously our hostmux translator that will be started at **/ftp** and handle filesystem operations on **/ftp** and everything below (like **/ftp/ftp.yourbox.com/pub/**) -* **/hurd/ftpfs /** is the argument to hostmux. - -When **/ftp** is accessed, the first directory is interpreted as hostname and a new translator is set up with the **hostmux** arguments: - -**ls /ftp/ftp.yourhost.com/pub/** lets hostmux start a new traslator **/hurd/ftpfs / ftp.yourhost.com** and serve it via **/ftp/ftp.yourhos t.com/** as directory. Subsequent the directory **pub/** on **/ftp.yourhost.com/** can be accessed via the new created translator. - -You can see the new created translator in the process list: **ps ax | grep ftpsfs** . You shoud see **/hurd/ftpfs / ftp.yourhost.com** . - --- [[Main/PatrickStrasser]] - 13 Jul 2004 diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 9e72d108..f09b5398 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -35,6 +35,7 @@ The [[Hurd_Hacking_Guide]] also has a tutorial. # Existing Translators * [[pfinet]] +* [[hostmux]] * [[storeio]] * [[ext2fs]] * [[fatfs]] diff --git a/hurd/translator/hostmux.mdwn b/hurd/translator/hostmux.mdwn new file mode 100644 index 00000000..5fab2dc5 --- /dev/null +++ b/hurd/translator/hostmux.mdwn @@ -0,0 +1,31 @@ +Multiplexes arbitrary host names, making access to many differnt host fast and easy. + +For each host accessed via a directory an new translator is started with the hostname as option. Say, /hostmuxdemo should let you access your favourite host with your translator mytranslatorfs. + +**ls /hostmuxdemo/mybox/** would give the result of mytranslatorfs applied to host mybox. + +## Usage + +Hostmux takes translator options as argument and (in the easiest case ) starts the translator with the given arguments and the hostname as the last argument. + +### ftpfs + +ftpfs is a good example, that is even very usefull. With hostmux and ftpfs you can access anonymous ftp via the filesystem, sparing out complicate use of a ftp client. + +We assume you want to access the ftp root at all servers. The example host is ftp.yourbox.com. + +Usermux is called via **settrans -fgap /ftp /hurd/hostmux /hurd/ftpfs /** . + +* **-fg** makes settrans try hard to remove an existing old translator from **/ftp** +* **ap** sets an active translator (starts the translator) and a passive translator (stores translator information in the filesystem with which an active translator can be started on access of this node) +* **/ftp** is where we want to set the translator +* **/hurd/hostmux** is obviously our hostmux translator that will be started at **/ftp** and handle filesystem operations on **/ftp** and everything below (like **/ftp/ftp.yourbox.com/pub/**) +* **/hurd/ftpfs /** is the argument to hostmux. + +When **/ftp** is accessed, the first directory is interpreted as hostname and a new translator is set up with the **hostmux** arguments: + +**ls /ftp/ftp.yourhost.com/pub/** lets hostmux start a new traslator **/hurd/ftpfs / ftp.yourhost.com** and serve it via **/ftp/ftp.yourhos t.com/** as directory. Subsequent the directory **pub/** on **/ftp.yourhost.com/** can be accessed via the new created translator. + +You can see the new created translator in the process list: **ps ax | grep ftpsfs** . You shoud see **/hurd/ftpfs / ftp.yourhost.com** . + +-- [[Main/PatrickStrasser]] - 13 Jul 2004 -- cgit v1.2.3 From fb23e34680b509fa7cf772e20f8e8249f242b4da Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 13 Nov 2007 17:21:13 +0100 Subject: Move to a suitable place. --- emailfs.mdwn | 285 ------------------------------------------- hurd.mdwn | 2 - hurd/translator.mdwn | 1 + hurd/translator/emailfs.mdwn | 285 +++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 286 insertions(+), 287 deletions(-) delete mode 100644 emailfs.mdwn create mode 100644 hurd/translator/emailfs.mdwn (limited to 'hurd/translator') diff --git a/emailfs.mdwn b/emailfs.mdwn deleted file mode 100644 index dc05887c..00000000 --- a/emailfs.mdwn +++ /dev/null @@ -1,285 +0,0 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] - -# How cool it would be if the email becomes similar to snail mail? - -## Let see how the snail mail works - -* You write the letter with a pen and paper -* You write the "To" address -* Post it -> Put it in a Post Box - -## How Email works - -* You have your email client (and there comes the limitation, you can't use - your favourite editor) -* Fill in destination email address -* Send it (May be a send button or a keyboard shortcut) - -## What are the problems - -If you want to use a wordprocessor for sending email, it should implement a -feature like mail merge, suppose it doesn't have such a feature then? You copy -and paste it to your email client and if it doesn't support HTML? Well you have -work arounds for all these, but how cool it would be if you have something like -this: - -* You create a file, use any wordprocessor or text editor. -* Right click and see the properties -* Set the "To" field -* Drag it to the Post Box icon on your panel next to Trash - -## How can we implement it? - -An SMTP translator which uses extended atributes - -## Comments - -IRC Logs about the discussion on #hurd - - - ->>>>>>> 5384ccd0a47e900fbdae993143110538248517a2:emailfs.mdwn - - j4v4m4n: isn't the HHG a good enough libtrivfs tutorial? - the problem I have with mail, blog, ..., translators is that you want to save mails before sending them, so you can't edit directly into the translator - manuel, may be we want a simpler one, all of us are beginners except AB - they're not stream-based so unless you save it into memory and wait for "sync" to send mails, it doesn't seem well suited - who's AB? - manuel, create any file with your favourite editor and copy it to the directory where SMTP translator is sitting - manuel, Anand Babu - sure, but how is that better than sending it via the "mail" command then? - except it's less hype, of course. - manuel, http://savannah.gnu.org/users/ab - manuel, it would be cool :-) - still not convinced :) - * schlesix (n=thomas@xdsl-81-173-230-219.netcologne.de) has joined #hurd - manuel, set up SMTP translator on the desktop and may be add it next to the Trash :-) - manuel, have a nice postbox icon - manuel, drag your files to it - manuel, it would be closer to the real world and snail mail - j4v4m4n: To whom do they go? - bvk: the file must be preformatted, probably - bvk, in snail mail you will write to address on top of the envelop, right? - j4v4m4n: yeah well, it could make sense in a desktop envronment - bvk, here we can have it as the first line of the file - not sure - j4v4m4n: i never used snail :( - manuel, that is what I have in mind - * j4v4m4n like snail mail that email - bvk: you never sent a mail via snail mail?! :) - * j4v4m4n like snail mail more than email - manuel: nope :( whats that btw? - manuel, or why not have it as the file property itself?? - manuel: you know its first time i hear it *snail mail* :(( - bvk, the normal mails which a postman delivers :-) - manuel, you create a file text, open document or whatver format - j4v4m4n: I'm quite sure it'd make things more complicated in the end, using file properties, dragging files etc. - manuel, righ click and see properties and set the to field - Oh, these english words... :X - manuel, we can use the xtended atributes - manuel, which really showcase the power of hurd - manuel, it becomes closer to the real world - actually, is X working on hurd? - bvk, well it used to work and the new Xorg release has som - bvk, well it used to work and the new Xorg release has some broken packages - bvk, if you use an old snapshot repository it will work (xorg 6.9) - * marco_g (n=marco@gnu/the-hurd/marco) has joined #hurd - hi - marco_g, hi - * bvk watching MIT lecture video on 'structure and interpretation of computer programs' - bvk: yeah, X was ported on GNU/Hurd five-six years ago or so - manuel, see http://hurd.in/bin/view/Main/EmailFS - manuel, add your comments, if you like - j4v4m4n: how would you convert the .odt to a mail? - manuel, attachment - with an empty mail? - that won't get through *most* spam filters :) - manuel, or may be convert it to HTML - well converting it to text or HTML would require a set of rules to convert from any format to text/HTML, like a2ps has (some sort of mailcap file) - manuel, it can be flexible, a parameter to the translator as to what should be done with each formats - and there's no convenient way to convert ODT to text AFAIK, you need to use ooffice with a batch program, which you need to provide too - well that's really complex - manuel, well how will you send me a CD by post? - manuel, or say a bed? - manuel, courier or parcel, right? so attachment is fine - sure but you'll add a note saying "this is a bed from Praveen" - why not add a note to such a mail - you could even move multiple files simultaneously to the mail translator - hm - so how is the translator supposed to know that all the files I move are to be sent in a single mail and not on separate mails? - and how'll you be able to add a note to such a mail? I mean, of course you can set it on the xattr but that's quite strange (the attachment is supposed to be an attr of the mail, not the other way) and not convenient at all - I'm quite sure using a MUA is still easier - you could move a complete directory to the mail trans - (and the desktop icon can do this transparently) - hmm so you have to create a directory, write a text file on it (with a special filename, I guess, since you could also have text files as attachments) and add the attachments to the directory - and then drag & drop it - * manuel thinks things are getting more and more complicated :) - the special file name or attribute thing is right - but you not necisirily need to create a dir - s/necisirily/necessarily/ - you just drag 'n' drop multiple files to the icon - and how is the translator supposed to know they are dragged at the same time and not one after the other? - I do not know if it is viable - * antrik (n=olaf@port-212-202-210-130.dynamic.qsc.de) has joined #hurd - AFACS, dragging multiple files just make the desktop issue multiple rename() - manuel: however the desktop handles that - it would be a rather easy thing to fix, i guess. - * schlesix has quit (Remote closed the connection) - moritz: how is the desktop supposed to handle that? - if this mail translator approach, is primarily to be used in desktop environments, one could implement the whole thing on the desktop environment layer, not with Hurd translators. - manuel: i think it would be rather easy for the desktop to distinguish between actions like "ONE file is dragged" and "MULTIPLE files are dragged". - * schlesix (n=schlesix@xdsl-81-173-230-219.netcologne.de) has joined #hurd - oh yeah, but then you loose the transparency, and there's no point in making it a translator. I think we agree on that :) - i see rather little point in making it a translator anyway, since only god knows wether we have similar concept to translators in hurd-ng. - yeah sure, but praveen wasn't planning it for HurdNG AIUI - in that case it would probably be toy project. fine. - i need to do some maths. see you. - hmm well, you can't write anything else than toy projects, then - moritz: you shouldn't be too sure about success of ngHurg - it is an experiment - sdschulze: ping - * antrik has quit (Remote closed the connection) - * antrik (n=olaf@port-212-202-210-130.dynamic.qsc.de) has joined #hurd - * bddebian (n=bdefrees@71.224.172.103) has joined #hurd - manuel, This is a lot of input, let me sink these all first :-) - Heya folks - heya bddebian! - it is ofcoures a "nice to have" feature. - These are quite intersting inputs as well - Hi schlesix - manual in the real wprld how will you send multiple things, say you want to send a CD and a bed - manuel, you will package it (files) and then one parcel containing all these things (folder) - j4v4m4n: well you want to make sending emails easier than sending real mails :-) - manuel, it won't substitute MUAs - manuel, we need it as the backend - geekoe: You asked about GFS yesterday; well, glibc compiled. :) I've not done much more after that. - regarding mail translator: take a look at Plan9, they have been doing it for years - manuel, sorry not MUA I meant MTA - * syamajala (n=syamajal@c-24-147-61-120.hsd1.ma.comcast.net) has joined #hurd - ah yes sure, but MUA will still be easier to use afaics - manuel, people who are used to Windows say GNU/Linux is tough to use - manuel, but when they start with GNOME or KDE they don't have any issues - antrik, that is a great info I will look into it - manuel, sorry not MUA I meant MTA - * syamajala (n=syamajal@c-24-147-61-120.hsd1.ma.comcast.net) has joined #hurd - ah yes sure, but MUA will still be easier to use afaics - manuel, people who are used to Windows say GNU/Linux is tough to use - manuel, but when they start with GNOME or KDE they don't have any issues - antrik, that is a great info I will look into it - j4v4m4n: they do it quite differently - this doesn't answer to the basic question: how is it better than what we have now - manuel, it is different, better is always debatable - manuel, GNOME might work for but some doesn't use X at all - manuel, whether it is good will be depending on the implemetation - people who used to GNU/Linux say Windows is tough to use - +are - GNU/Linux is at least tougher to say - no, people have less experience with GNU/Linux - "to say", Jeroen - manuel, better and easier are always relative - manuel, there a lot of people still using mutt when you have thunderbird - well because they have reasons to say mutt is easier than thunderbird - the only thing is that you've to learn a few shortcuts when you want to use mutt, you can't just click around - manuel, exactly - manuel, consider this, you want to send a document across to someone - * Blackmore has quit (Read error: 104 (Connection reset by peer)) - * koollman has quit (Remote closed the connection) - manuel, now you open a MUA add the attachment send it - * koollman (n=samson_t@gsv95-1-82-233-13-27.fbx.proxad.net) has joined #hurd - manuel, if you just have to drag it to an icon, would that be easier? - * Casanova (n=prash@unaffiliated/casanova) has joined #hurd - manuel, chmod +to:manuel@somehost doc.pdf ; cp doc.pdf postbox/ - yeah - chmod is for setting permissions... - manuel, I am not sure how to set xattr - well, setfattr - well - manuel, ok - how do you type your subject? - and there message itself? - s/there/the/ - how do you encrypt+sign it with pgp? - j4v4m4n: well the problem is still the same you know. OK for to/subject : they'd be extended attributes. but how do you type the message itself? - I don't think using xattr for such stuff is a good idea - after all, it's not a property of the document - antrik, we can use it only on a particular directory on which our translator sit - manuel, create a folder - that'd mean mkdir message; ln -s doc.pdf message/; cat >message/message < the reason why having translators for such stuff is that this way you have a generic service for sending mail, whether you use it through a special UI (MUA), directly with file commands, from a script, or from some other program that just sends mails as a side functionality - * mheath has quit (Connection reset by peer) - manuel, that looks scary :-( - not sure it's easier than "mutt; m; mmenal@hurdfr.org; document; >typing the message<; a; doc.pdf; y" - manuel: it is easier in some situations - (and again, I would not use xattr for such stuff) - manuel, now how do you use mutt on GNOME? - in fact, Plan9 explicitely does *not* have any xattr and stuff - antrik: well xattr on the directory that represents the message is not illogical - * mheath (n=mheath@c-67-182-231-23.hsd1.co.comcast.net) has joined #hurd - antrik, may be we can think of some other way if you don't wanna xattr - j4v4m4n: well I just used the CLI because it's easier to describe, but try to explain the steps in a GUI and you'll see it's the same problem - manuel, right click on desktop -> create folder -> drag the files to the folder -> set attributes to the folder-> drag it to postbox - manuel, it is quite logical step - sure, but how is it easier than click on the MUA icon -> create mail -> drag the files to the mail window ; type the attrbutes + contents ; click on send mail - looks quite similar to me :-) - manuel, or if you already have the folder just drag it - a POP or IMAP translator would be more useful IMHO (but well, I didn't read all the backlog, so I may be off topic) - manuel, you don't have a MUA here :-) just files and folders - to read mails, I mean - kilobug, that is even easier IMAP->mabox and then mboxfs - j4v4m4n: well you have a MUA : that's the translator - kilobug, mboxfs is already available - kilobug, I think someone already wrote IMAP to mbox as well but couldn't find it - j4v4m4n: well, imapfs could work both way, writing changes on the imap server too ;) - manuel: the difference is not how it is used; the difference is how it is implemented - manuel: if you have a generic mail translator, you have most functionality already there with the file manager; all you need to add is some scripts for better comfort - j4v4m4n: the way I would do it (and I guess Plan9 does, though I haven't checked) is either having a file in the mail directory with the headers, or a subdirectory with a single file for each header (probably the latter) - antrik, that would make it too complicated IMHO, it would be close to how it is for snail mail - j4v4m4n: I don't see how this would be more complicated than xattr - manuel, you can write your own scripts to automate it for whatver way you want - * azor (n=azor@62-43-135-201.user.ono.com) has joined #hurd - antrik: having the functionality in the filesystem is useful because programs can use this functionality without patching; the protocol to use the mail translator is so specific that you either need to be a real user (but then a MUA is a lot more useful) or have a patched program (but then you could use a lib) - antrik, right clicking a file and setting u p to and subject seems easier that creating more files - j4v4m4n: I don't think so. maybe it is in gnome, but than I'd consider it a shortcoming of gnome - j4v4m4n: in shell "cat foo@example.invalid headers/to" is about as simple as you can get - > - erm... I mean echo - and >, yes - sorry - * yoj (n=jao@200.163.8.72) has joined #hurd - "echo foo@example.invalid > headers/to" is not easier than "setfattr -n to -v foo@example.invalid" AFAICS. - echo foo@example.invalid >headers/to - * yoj (n=jao@200.163.8.72) has left #hurd - * yoj (n=jao@200.163.8.72) has joined #hurd - manuel: it is a tiny bit if your "foo@example.invalid" is the output of a command, mycomplexcommand > headers/to is a bit easier than setfattr -n to -v `mycomplexcommand` - manuel: but it's the same for a value you type directly - manuel: objectively it is not simpler, but it uses a generic mechanism users now well, instead of obscure xattr stuff - know well - antrik, ok we can think of that, but how about a desktop user? - abeaumont andar antrik arnau azeem azor - antrik, he has to use more clicks and more head aches - antrik, just right click and add to address and subject just you write on the envelop - j4v4m4n: that's good ! it makes him buy more medicine, drug corporations will sponsor you then ! - * kilobug runs away - * j4v4m4n chases kilobug - kilobug, better way would be making outlook run on GNU :-) - Or GNU on outlook \o/ - * yoj (n=jao@200.163.8.72) has left #hurd - this channel is becoming insnae :p - kilobug, or is it the members ?? :-) - I agree with kilobug, we should stop those weirdos here :-/ - * whr` (i=whr@acy238.neoplus.adsl.tpnet.pl) has joined #hurd - hm... anyone have the marcus quote at hand? - i got to go as well - bye - bye j4v4m4n - -## Interesting?? - -Join the project -- Add yourself to the list below - -* [[Praveen A]] diff --git a/hurd.mdwn b/hurd.mdwn index b168f268..6406d252 100644 --- a/hurd.mdwn +++ b/hurd.mdwn @@ -66,7 +66,5 @@ # Hurd hacking projects -* Email as a filesystem - * [[emailfs]] * Universal package manager and archiver for GNU * [[universalpackagemanager]] \ No newline at end of file diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 2ed7946f..1fe4cf9a 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -45,6 +45,7 @@ The [[Hurd_Hacking_Guide]] also has a tutorial. # Translators Being Under Development * [[random]] +* [[emailfs]] -- email as a filesystem * ... # Translator wishlist diff --git a/hurd/translator/emailfs.mdwn b/hurd/translator/emailfs.mdwn new file mode 100644 index 00000000..dc05887c --- /dev/null +++ b/hurd/translator/emailfs.mdwn @@ -0,0 +1,285 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +# How cool it would be if the email becomes similar to snail mail? + +## Let see how the snail mail works + +* You write the letter with a pen and paper +* You write the "To" address +* Post it -> Put it in a Post Box + +## How Email works + +* You have your email client (and there comes the limitation, you can't use + your favourite editor) +* Fill in destination email address +* Send it (May be a send button or a keyboard shortcut) + +## What are the problems + +If you want to use a wordprocessor for sending email, it should implement a +feature like mail merge, suppose it doesn't have such a feature then? You copy +and paste it to your email client and if it doesn't support HTML? Well you have +work arounds for all these, but how cool it would be if you have something like +this: + +* You create a file, use any wordprocessor or text editor. +* Right click and see the properties +* Set the "To" field +* Drag it to the Post Box icon on your panel next to Trash + +## How can we implement it? + +An SMTP translator which uses extended atributes + +## Comments + +IRC Logs about the discussion on #hurd + + + +>>>>>>> 5384ccd0a47e900fbdae993143110538248517a2:emailfs.mdwn + + j4v4m4n: isn't the HHG a good enough libtrivfs tutorial? + the problem I have with mail, blog, ..., translators is that you want to save mails before sending them, so you can't edit directly into the translator + manuel, may be we want a simpler one, all of us are beginners except AB + they're not stream-based so unless you save it into memory and wait for "sync" to send mails, it doesn't seem well suited + who's AB? + manuel, create any file with your favourite editor and copy it to the directory where SMTP translator is sitting + manuel, Anand Babu + sure, but how is that better than sending it via the "mail" command then? + except it's less hype, of course. + manuel, http://savannah.gnu.org/users/ab + manuel, it would be cool :-) + still not convinced :) + * schlesix (n=thomas@xdsl-81-173-230-219.netcologne.de) has joined #hurd + manuel, set up SMTP translator on the desktop and may be add it next to the Trash :-) + manuel, have a nice postbox icon + manuel, drag your files to it + manuel, it would be closer to the real world and snail mail + j4v4m4n: To whom do they go? + bvk: the file must be preformatted, probably + bvk, in snail mail you will write to address on top of the envelop, right? + j4v4m4n: yeah well, it could make sense in a desktop envronment + bvk, here we can have it as the first line of the file + not sure + j4v4m4n: i never used snail :( + manuel, that is what I have in mind + * j4v4m4n like snail mail that email + bvk: you never sent a mail via snail mail?! :) + * j4v4m4n like snail mail more than email + manuel: nope :( whats that btw? + manuel, or why not have it as the file property itself?? + manuel: you know its first time i hear it *snail mail* :(( + bvk, the normal mails which a postman delivers :-) + manuel, you create a file text, open document or whatver format + j4v4m4n: I'm quite sure it'd make things more complicated in the end, using file properties, dragging files etc. + manuel, righ click and see properties and set the to field + Oh, these english words... :X + manuel, we can use the xtended atributes + manuel, which really showcase the power of hurd + manuel, it becomes closer to the real world + actually, is X working on hurd? + bvk, well it used to work and the new Xorg release has som + bvk, well it used to work and the new Xorg release has some broken packages + bvk, if you use an old snapshot repository it will work (xorg 6.9) + * marco_g (n=marco@gnu/the-hurd/marco) has joined #hurd + hi + marco_g, hi + * bvk watching MIT lecture video on 'structure and interpretation of computer programs' + bvk: yeah, X was ported on GNU/Hurd five-six years ago or so + manuel, see http://hurd.in/bin/view/Main/EmailFS + manuel, add your comments, if you like + j4v4m4n: how would you convert the .odt to a mail? + manuel, attachment + with an empty mail? + that won't get through *most* spam filters :) + manuel, or may be convert it to HTML + well converting it to text or HTML would require a set of rules to convert from any format to text/HTML, like a2ps has (some sort of mailcap file) + manuel, it can be flexible, a parameter to the translator as to what should be done with each formats + and there's no convenient way to convert ODT to text AFAIK, you need to use ooffice with a batch program, which you need to provide too + well that's really complex + manuel, well how will you send me a CD by post? + manuel, or say a bed? + manuel, courier or parcel, right? so attachment is fine + sure but you'll add a note saying "this is a bed from Praveen" + why not add a note to such a mail + you could even move multiple files simultaneously to the mail translator + hm + so how is the translator supposed to know that all the files I move are to be sent in a single mail and not on separate mails? + and how'll you be able to add a note to such a mail? I mean, of course you can set it on the xattr but that's quite strange (the attachment is supposed to be an attr of the mail, not the other way) and not convenient at all + I'm quite sure using a MUA is still easier + you could move a complete directory to the mail trans + (and the desktop icon can do this transparently) + hmm so you have to create a directory, write a text file on it (with a special filename, I guess, since you could also have text files as attachments) and add the attachments to the directory + and then drag & drop it + * manuel thinks things are getting more and more complicated :) + the special file name or attribute thing is right + but you not necisirily need to create a dir + s/necisirily/necessarily/ + you just drag 'n' drop multiple files to the icon + and how is the translator supposed to know they are dragged at the same time and not one after the other? + I do not know if it is viable + * antrik (n=olaf@port-212-202-210-130.dynamic.qsc.de) has joined #hurd + AFACS, dragging multiple files just make the desktop issue multiple rename() + manuel: however the desktop handles that - it would be a rather easy thing to fix, i guess. + * schlesix has quit (Remote closed the connection) + moritz: how is the desktop supposed to handle that? + if this mail translator approach, is primarily to be used in desktop environments, one could implement the whole thing on the desktop environment layer, not with Hurd translators. + manuel: i think it would be rather easy for the desktop to distinguish between actions like "ONE file is dragged" and "MULTIPLE files are dragged". + * schlesix (n=schlesix@xdsl-81-173-230-219.netcologne.de) has joined #hurd + oh yeah, but then you loose the transparency, and there's no point in making it a translator. I think we agree on that :) + i see rather little point in making it a translator anyway, since only god knows wether we have similar concept to translators in hurd-ng. + yeah sure, but praveen wasn't planning it for HurdNG AIUI + in that case it would probably be toy project. fine. + i need to do some maths. see you. + hmm well, you can't write anything else than toy projects, then + moritz: you shouldn't be too sure about success of ngHurg + it is an experiment + sdschulze: ping + * antrik has quit (Remote closed the connection) + * antrik (n=olaf@port-212-202-210-130.dynamic.qsc.de) has joined #hurd + * bddebian (n=bdefrees@71.224.172.103) has joined #hurd + manuel, This is a lot of input, let me sink these all first :-) + Heya folks + heya bddebian! + it is ofcoures a "nice to have" feature. + These are quite intersting inputs as well + Hi schlesix + manual in the real wprld how will you send multiple things, say you want to send a CD and a bed + manuel, you will package it (files) and then one parcel containing all these things (folder) + j4v4m4n: well you want to make sending emails easier than sending real mails :-) + manuel, it won't substitute MUAs + manuel, we need it as the backend + geekoe: You asked about GFS yesterday; well, glibc compiled. :) I've not done much more after that. + regarding mail translator: take a look at Plan9, they have been doing it for years + manuel, sorry not MUA I meant MTA + * syamajala (n=syamajal@c-24-147-61-120.hsd1.ma.comcast.net) has joined #hurd + ah yes sure, but MUA will still be easier to use afaics + manuel, people who are used to Windows say GNU/Linux is tough to use + manuel, but when they start with GNOME or KDE they don't have any issues + antrik, that is a great info I will look into it + manuel, sorry not MUA I meant MTA + * syamajala (n=syamajal@c-24-147-61-120.hsd1.ma.comcast.net) has joined #hurd + ah yes sure, but MUA will still be easier to use afaics + manuel, people who are used to Windows say GNU/Linux is tough to use + manuel, but when they start with GNOME or KDE they don't have any issues + antrik, that is a great info I will look into it + j4v4m4n: they do it quite differently + this doesn't answer to the basic question: how is it better than what we have now + manuel, it is different, better is always debatable + manuel, GNOME might work for but some doesn't use X at all + manuel, whether it is good will be depending on the implemetation + people who used to GNU/Linux say Windows is tough to use + +are + GNU/Linux is at least tougher to say + no, people have less experience with GNU/Linux + "to say", Jeroen + manuel, better and easier are always relative + manuel, there a lot of people still using mutt when you have thunderbird + well because they have reasons to say mutt is easier than thunderbird + the only thing is that you've to learn a few shortcuts when you want to use mutt, you can't just click around + manuel, exactly + manuel, consider this, you want to send a document across to someone + * Blackmore has quit (Read error: 104 (Connection reset by peer)) + * koollman has quit (Remote closed the connection) + manuel, now you open a MUA add the attachment send it + * koollman (n=samson_t@gsv95-1-82-233-13-27.fbx.proxad.net) has joined #hurd + manuel, if you just have to drag it to an icon, would that be easier? + * Casanova (n=prash@unaffiliated/casanova) has joined #hurd + manuel, chmod +to:manuel@somehost doc.pdf ; cp doc.pdf postbox/ + yeah + chmod is for setting permissions... + manuel, I am not sure how to set xattr + well, setfattr + well + manuel, ok + how do you type your subject? + and there message itself? + s/there/the/ + how do you encrypt+sign it with pgp? + j4v4m4n: well the problem is still the same you know. OK for to/subject : they'd be extended attributes. but how do you type the message itself? + I don't think using xattr for such stuff is a good idea + after all, it's not a property of the document + antrik, we can use it only on a particular directory on which our translator sit + manuel, create a folder + that'd mean mkdir message; ln -s doc.pdf message/; cat >message/message < the reason why having translators for such stuff is that this way you have a generic service for sending mail, whether you use it through a special UI (MUA), directly with file commands, from a script, or from some other program that just sends mails as a side functionality + * mheath has quit (Connection reset by peer) + manuel, that looks scary :-( + not sure it's easier than "mutt; m; mmenal@hurdfr.org; document; >typing the message<; a; doc.pdf; y" + manuel: it is easier in some situations + (and again, I would not use xattr for such stuff) + manuel, now how do you use mutt on GNOME? + in fact, Plan9 explicitely does *not* have any xattr and stuff + antrik: well xattr on the directory that represents the message is not illogical + * mheath (n=mheath@c-67-182-231-23.hsd1.co.comcast.net) has joined #hurd + antrik, may be we can think of some other way if you don't wanna xattr + j4v4m4n: well I just used the CLI because it's easier to describe, but try to explain the steps in a GUI and you'll see it's the same problem + manuel, right click on desktop -> create folder -> drag the files to the folder -> set attributes to the folder-> drag it to postbox + manuel, it is quite logical step + sure, but how is it easier than click on the MUA icon -> create mail -> drag the files to the mail window ; type the attrbutes + contents ; click on send mail + looks quite similar to me :-) + manuel, or if you already have the folder just drag it + a POP or IMAP translator would be more useful IMHO (but well, I didn't read all the backlog, so I may be off topic) + manuel, you don't have a MUA here :-) just files and folders + to read mails, I mean + kilobug, that is even easier IMAP->mabox and then mboxfs + j4v4m4n: well you have a MUA : that's the translator + kilobug, mboxfs is already available + kilobug, I think someone already wrote IMAP to mbox as well but couldn't find it + j4v4m4n: well, imapfs could work both way, writing changes on the imap server too ;) + manuel: the difference is not how it is used; the difference is how it is implemented + manuel: if you have a generic mail translator, you have most functionality already there with the file manager; all you need to add is some scripts for better comfort + j4v4m4n: the way I would do it (and I guess Plan9 does, though I haven't checked) is either having a file in the mail directory with the headers, or a subdirectory with a single file for each header (probably the latter) + antrik, that would make it too complicated IMHO, it would be close to how it is for snail mail + j4v4m4n: I don't see how this would be more complicated than xattr + manuel, you can write your own scripts to automate it for whatver way you want + * azor (n=azor@62-43-135-201.user.ono.com) has joined #hurd + antrik: having the functionality in the filesystem is useful because programs can use this functionality without patching; the protocol to use the mail translator is so specific that you either need to be a real user (but then a MUA is a lot more useful) or have a patched program (but then you could use a lib) + antrik, right clicking a file and setting u p to and subject seems easier that creating more files + j4v4m4n: I don't think so. maybe it is in gnome, but than I'd consider it a shortcoming of gnome + j4v4m4n: in shell "cat foo@example.invalid headers/to" is about as simple as you can get + > + erm... I mean echo + and >, yes + sorry + * yoj (n=jao@200.163.8.72) has joined #hurd + "echo foo@example.invalid > headers/to" is not easier than "setfattr -n to -v foo@example.invalid" AFAICS. + echo foo@example.invalid >headers/to + * yoj (n=jao@200.163.8.72) has left #hurd + * yoj (n=jao@200.163.8.72) has joined #hurd + manuel: it is a tiny bit if your "foo@example.invalid" is the output of a command, mycomplexcommand > headers/to is a bit easier than setfattr -n to -v `mycomplexcommand` + manuel: but it's the same for a value you type directly + manuel: objectively it is not simpler, but it uses a generic mechanism users now well, instead of obscure xattr stuff + know well + antrik, ok we can think of that, but how about a desktop user? + abeaumont andar antrik arnau azeem azor + antrik, he has to use more clicks and more head aches + antrik, just right click and add to address and subject just you write on the envelop + j4v4m4n: that's good ! it makes him buy more medicine, drug corporations will sponsor you then ! + * kilobug runs away + * j4v4m4n chases kilobug + kilobug, better way would be making outlook run on GNU :-) + Or GNU on outlook \o/ + * yoj (n=jao@200.163.8.72) has left #hurd + this channel is becoming insnae :p + kilobug, or is it the members ?? :-) + I agree with kilobug, we should stop those weirdos here :-/ + * whr` (i=whr@acy238.neoplus.adsl.tpnet.pl) has joined #hurd + hm... anyone have the marcus quote at hand? + i got to go as well + bye + bye j4v4m4n + +## Interesting?? + +Join the project -- Add yourself to the list below + +* [[Praveen A]] -- cgit v1.2.3 From baecaca1378c5ff3de9794a95ea5dc09c51450ea Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 13 Nov 2007 17:52:00 +0100 Subject: Move to a suitable place. --- howtos.mdwn | 2 +- hurd/running/gnu/universal_package_manager.mdwn | 2 +- hurd/translator/examples.mdwn | 91 +++++++++++++++++++++++++ settransexamples.mdwn | 91 ------------------------- 4 files changed, 93 insertions(+), 93 deletions(-) create mode 100644 hurd/translator/examples.mdwn delete mode 100644 settransexamples.mdwn (limited to 'hurd/translator') diff --git a/howtos.mdwn b/howtos.mdwn index 70b963a5..85e53bc8 100644 --- a/howtos.mdwn +++ b/howtos.mdwn @@ -13,7 +13,7 @@ is included in the section entitled * [[HurdOnQemuOnWindows]] Setting up a GNU/Hurd system on Qemu on a Micorsoft Windows machine * [[HurdOnVMware]] Setting up Debian GNU/Hurd on VMware * [[QemuNetworkForHurd]] Setting up Hurd Networking on Qemu - * [[SettransExamples]] Setting up translators - some examples + * Setting up translators -- [[some_examples|hurd/translator/examples]] * [[QemuFileSharingWithHost]] File sharing between GNU on Qemu and the Host OS * [[Setupcvsfs]]Setting up cvsfs from HurdExtras * [[HurdTranslatorExample]] Hurd translator example diff --git a/hurd/running/gnu/universal_package_manager.mdwn b/hurd/running/gnu/universal_package_manager.mdwn index bd6f8835..6f3c2f57 100644 --- a/hurd/running/gnu/universal_package_manager.mdwn +++ b/hurd/running/gnu/universal_package_manager.mdwn @@ -129,7 +129,7 @@ ii. Read about GNU Design iii. Read about translators -iv. Try out these cool translators [[SettransExamples]] +iv. Try out these cool [[translator_examples|translator/examples]] v. Add your name below and give a shout in the list. diff --git a/hurd/translator/examples.mdwn b/hurd/translator/examples.mdwn new file mode 100644 index 00000000..dc4f9a81 --- /dev/null +++ b/hurd/translator/examples.mdwn @@ -0,0 +1,91 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +## Setting up translators - HowTo + +Translators can be got from hurd-extras + + cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/hurdextras co + +* httpfs translator + + + + $ settrans -a tmp/ /hurd/httpfs www.hurd-project.com/ + +or + + $ settrans -a tmp/ /hurd/httpfs www.hurd-project.com/ --proxy= --port= + $ cd tmp/ + $ ls -l + +* ftpfs translator + + + + $ settrans -cgap ftp /hurd/hostmux /hurd/ftpfs / + $ cd ftp + ftp$ ls + ftp$ cd ftp.fr.debian.org + ftp/ftp.fr.debian.org $ ls + +* tarfs translator + +You can use tarfs to mount (almost) any tar file: + + $ settrans -ca a /hurd/tarfs -z myfile.tar.gz + $ settrans -ca b /hurd/tarfs -y myfile.tar.bz2 + $ settrans -ca c /hurd/tarfs myfile.tar + +You can even use it to create new tar files: + + $ settrans -ca new /hurd/tarfs -cz newfile.tar.gz + $ cp -r all my files new/ + $ syncfs new + +This is not as fast as `tar czvf newfile.tar.gz all my files` but at least, it's more original. ;) + +* cvsfs translator + + + + $ settrans -ac cvsfs_testing /hurd/cvsfs cvs.savannah.nongnu.org /sources/hurdextras + $ cd cvsfs_testing + +* pfinet translator -- configuring your network interface + + + + $ settrans -fgca /servers/socket/2 /hurd/pfinet -i -a -m -g + +* Console translator -- setting up virtual consoles + + + + $ console -d vga -d pc_mouse -d pc_kbd -d generic_speaker /dev/vcs + +* iso9660fs translator -- 'mounting' your cdrom + + + + $ settrans -ac /cdrom /hurd/iso9660fs /dev/ + +* ext2fs translator -- 'mounting' an ext2fs partition + + + + $ settrans -ac /linux /hurd/ext2fs /dev/ + +* unionfs translator + +To join "foo/" "bar/" and "baz/" in the directory "quux/", just do: + + $ settrans -capfg quux/ /hurd/unionfs foo/ bar/ baz/ + +If you want to join even quux/ contents in the union itself, add -u as a translator argument. +You can add filesystems at run-time with the fsysopts command. diff --git a/settransexamples.mdwn b/settransexamples.mdwn deleted file mode 100644 index dc4f9a81..00000000 --- a/settransexamples.mdwn +++ /dev/null @@ -1,91 +0,0 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] - -## Setting up translators - HowTo - -Translators can be got from hurd-extras - - cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/hurdextras co - -* httpfs translator - - - - $ settrans -a tmp/ /hurd/httpfs www.hurd-project.com/ - -or - - $ settrans -a tmp/ /hurd/httpfs www.hurd-project.com/ --proxy= --port= - $ cd tmp/ - $ ls -l - -* ftpfs translator - - - - $ settrans -cgap ftp /hurd/hostmux /hurd/ftpfs / - $ cd ftp - ftp$ ls - ftp$ cd ftp.fr.debian.org - ftp/ftp.fr.debian.org $ ls - -* tarfs translator - -You can use tarfs to mount (almost) any tar file: - - $ settrans -ca a /hurd/tarfs -z myfile.tar.gz - $ settrans -ca b /hurd/tarfs -y myfile.tar.bz2 - $ settrans -ca c /hurd/tarfs myfile.tar - -You can even use it to create new tar files: - - $ settrans -ca new /hurd/tarfs -cz newfile.tar.gz - $ cp -r all my files new/ - $ syncfs new - -This is not as fast as `tar czvf newfile.tar.gz all my files` but at least, it's more original. ;) - -* cvsfs translator - - - - $ settrans -ac cvsfs_testing /hurd/cvsfs cvs.savannah.nongnu.org /sources/hurdextras - $ cd cvsfs_testing - -* pfinet translator -- configuring your network interface - - - - $ settrans -fgca /servers/socket/2 /hurd/pfinet -i -a -m -g - -* Console translator -- setting up virtual consoles - - - - $ console -d vga -d pc_mouse -d pc_kbd -d generic_speaker /dev/vcs - -* iso9660fs translator -- 'mounting' your cdrom - - - - $ settrans -ac /cdrom /hurd/iso9660fs /dev/ - -* ext2fs translator -- 'mounting' an ext2fs partition - - - - $ settrans -ac /linux /hurd/ext2fs /dev/ - -* unionfs translator - -To join "foo/" "bar/" and "baz/" in the directory "quux/", just do: - - $ settrans -capfg quux/ /hurd/unionfs foo/ bar/ baz/ - -If you want to join even quux/ contents in the union itself, add -u as a translator argument. -You can add filesystems at run-time with the fsysopts command. -- cgit v1.2.3 From 26914f95a7f8bd868d8808f00fd90f90926f690a Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 13 Nov 2007 19:34:40 +0100 Subject: Move to a suitable place. --- howtos.mdwn | 3 +- hurd/translator.mdwn | 2 + hurd/translator/writing/example.mdwn | 301 +++++++++++++++++++++++++++++++++++ hurdtranslatorexample.mdwn | 301 ----------------------------------- 4 files changed, 305 insertions(+), 302 deletions(-) create mode 100644 hurd/translator/writing/example.mdwn delete mode 100644 hurdtranslatorexample.mdwn (limited to 'hurd/translator') diff --git a/howtos.mdwn b/howtos.mdwn index 8cd3ed2c..7d893c68 100644 --- a/howtos.mdwn +++ b/howtos.mdwn @@ -17,7 +17,8 @@ is included in the section entitled * Setting up translators -- [[some_examples|hurd/translator/examples]] * [[QemuFileSharingWithHost]] File sharing between GNU on Qemu and the Host OS * [[Setupcvsfs]]Setting up cvsfs from HurdExtras - * [[HurdTranslatorExample]] Hurd translator example + * [[hurd/translator/writing/Example]] about how to write a simple Hurd + translator * [[hurd/libhello_example]] -- Hurd library example ## Compilation diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 63812e0d..202f6ff1 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -31,6 +31,8 @@ To learn how to write a translator, read the code! It is well documented, in particular, the header files. The [[Hurd_Hacking_Guide]] also has a tutorial. +Also there is an [[writing/example]] about how to write a simple translator. + # Existing Translators diff --git a/hurd/translator/writing/example.mdwn b/hurd/translator/writing/example.mdwn new file mode 100644 index 00000000..83ac7da1 --- /dev/null +++ b/hurd/translator/writing/example.mdwn @@ -0,0 +1,301 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +## Data User-Server Translator Example + +The code examples were written by Anand Babu. + +We have a data.h header file, a data.defs file, a data-user.c, data-server.c +sources files and a Makefile. + +data.h: +------- + + #ifndef _data_user_ + #define _data_user_ + + /* Module data */ + + #include + #include + #include + + #include + #include + #include + #include + #include + #include + #include + #include + #include + #include + + /* Routine data_set_value */ + #ifdef mig_external + mig_external + #else + extern + #endif + kern_return_t S_data_set_value + #if defined(LINTLIBRARY) + (data_port, value) + mach_port_t data_port; + int value; + { return S_data_set_value(data_port, value); } + #else + ( + mach_port_t data_port, + int value + ); + #endif + + /* Routine data_get_value */ + #ifdef mig_external + mig_external + #else + extern + #endif + kern_return_t S_data_get_value + #if defined(LINTLIBRARY) + (data_port, value) + mach_port_t data_port; + int *value; + { return S_data_get_value(data_port, value); } + #else + ( + mach_port_t data_port, + int *value + ); + #endif + + #endif /* not defined(_data_user_) */ + +data.defs: +---------- + + /* Definitions for data interface + + This file is part of the GNU Hurd. + + The GNU Hurd is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + The GNU Hurd is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the GNU Hurd; see the file COPYING. If not, write to + the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ + + subsystem data 45000; + + #include + + #ifdef STACK_IMPORTS + STACK_IMPORTS + #endif + + /* intr-rpc.defs defines the INTR_INTERFACE macro to make the generated RPC + stubs send-interruptible, and to prefix them with `hurd_intr_rpc_'. */ + INTR_INTERFACE + + /* set integer value to data */ + routine data_set_value ( + data_port: mach_port_t; + value: int); + + /* get integer value from data */ + routine data_get_value ( + data_port: mach_port_t; + out value: int); + +data-user.c: +------------ + + #include + #include + #include + #include "data.h" + + #ifndef _GNU_SOURCE + #define _GNU_SOURCE + #endif + + int + main(int argc, char *argv[]) + { + int value=0; + mach_port_t data_server_port; + + data_server_port = file_name_lookup ("/tmp/trans", 0, 0); + printf ("data_server_port [%u]\n", data_server_port); + S_data_set_value (data_server_port, 99); + S_data_get_value (data_server_port, &value); + printf ("data->get_value: [%d]\n", value); + + return 0; + } + +data-server.c: +-------------- + + #ifndef _GNU_SOURCE + #define _GNU_SOURCE + #endif + + #include + #include + #include + #include + #include + + #include + #include + #include + + #include "data.h" + + extern boolean_t S_data_server + (mach_msg_header_t *InHeadP, mach_msg_header_t *OutHeadP); + + int trivfs_fstype = FSTYPE_MISC; + int trivfs_fsid = 0; + int trivfs_support_read = 0; + int trivfs_support_write = 0; + int trivfs_support_exec = 0; + int trivfs_allow_open = 0x00; + int trivfs_protid_nportclasses = 0; + int trivfs_cntl_nportclasses = 0; + + int data_value; + + int demuxer (mach_msg_header_t *inp, mach_msg_header_t *outp) + { + return (S_data_server(inp,outp)||trivfs_demuxer(inp,outp)); + } + + void trivfs_modify_stat (struct trivfs_protid *cred, io_statbuf_t *st) + { + } + error_t trivfs_goaway (struct trivfs_control *fsys, int flags) + { + exit (0); + } + + kern_return_t S_data_set_value (mach_port_t data_port, int value) + { + data_value = value; + return 0; + } + + kern_return_t S_data_get_value (mach_port_t data_port, int *value) + { + *value = data_value; + return 0; + } + + int + main(int argc, char *argv[]) + { + int err; + mach_port_t bootstrap; + struct trivfs_control *fsys; + + if (argc > 1) + { + fprintf(stderr, "Usage: settrans [opts] node %s\n", program_invocation_name); + exit (1); + } + + task_get_bootstrap_port (mach_task_self (), &bootstrap); + if (bootstrap == MACH_PORT_NULL) + error(2, 0, "Must be started as a translator"); + + /* Reply to our parent */ + err = trivfs_startup (bootstrap, 0, 0, 0, 0, 0,&fsys); + mach_port_deallocate (mach_task_self (), bootstrap); + if (err) { + return (0); + } + + ports_manage_port_operations_one_thread (fsys->pi.bucket, demuxer, 0); + + return 0; + } + +Makefile: +--------- + + CC = gcc + MIG = mig + CFLAGS = -Wall -g -D_GNU_SOURCE + LDFLAGS = -lthreads -lports -ltrivfs -lfshelp -lshouldbeinlibc + INCLUDES = -I. + LCHDRS = + MIGCOMSFLAGS = -prefix S_ + OBJS = $(SRCS:.c=.o) + TAGS = etags.emacs21 + + all: data-server data-user + tags: + $(TAGS) $(SRCS) $(LCHDRS) + + stubs: data.defs + $(MIG) $(MIGCOMSFLAGS) -server dataServer.c -user dataUser.c $^ + data-server: data-server.c dataServer.c + $(CC) $^ $(CFLAGS) $(INCLUDES) $(LDFLAGS) -o $@ + data-user: data-user.c dataUser.c + $(CC) $^ $(CFLAGS) $(INCLUDES) -o $@ + clean: + rm -f *.o data-server data-user + + start: data-server data-user + settrans -ac /tmp/trans data-server + ps -x | grep data-server + end: + settrans -fg /tmp/trans + +Building +-------- + +Do + + make stubs + +to create the dataUser.c and dataServer.c files generated by mig. Create the +executables using: + + make all + +Testing +------- + +Start the data-server translator using: + + settrans -ac /tmp/trans data-server + +You can check if it is running using + + ps -x | grep data-server + +Run the data-user executable to get the resultant output. + +You can remove the translator using: + + settrans -fg /tmp/trans + +To remove the built files use: + + make clean + +Happy Hacking! diff --git a/hurdtranslatorexample.mdwn b/hurdtranslatorexample.mdwn deleted file mode 100644 index 83ac7da1..00000000 --- a/hurdtranslatorexample.mdwn +++ /dev/null @@ -1,301 +0,0 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] - -## Data User-Server Translator Example - -The code examples were written by Anand Babu. - -We have a data.h header file, a data.defs file, a data-user.c, data-server.c -sources files and a Makefile. - -data.h: -------- - - #ifndef _data_user_ - #define _data_user_ - - /* Module data */ - - #include - #include - #include - - #include - #include - #include - #include - #include - #include - #include - #include - #include - #include - - /* Routine data_set_value */ - #ifdef mig_external - mig_external - #else - extern - #endif - kern_return_t S_data_set_value - #if defined(LINTLIBRARY) - (data_port, value) - mach_port_t data_port; - int value; - { return S_data_set_value(data_port, value); } - #else - ( - mach_port_t data_port, - int value - ); - #endif - - /* Routine data_get_value */ - #ifdef mig_external - mig_external - #else - extern - #endif - kern_return_t S_data_get_value - #if defined(LINTLIBRARY) - (data_port, value) - mach_port_t data_port; - int *value; - { return S_data_get_value(data_port, value); } - #else - ( - mach_port_t data_port, - int *value - ); - #endif - - #endif /* not defined(_data_user_) */ - -data.defs: ----------- - - /* Definitions for data interface - - This file is part of the GNU Hurd. - - The GNU Hurd is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - The GNU Hurd is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with the GNU Hurd; see the file COPYING. If not, write to - the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ - - subsystem data 45000; - - #include - - #ifdef STACK_IMPORTS - STACK_IMPORTS - #endif - - /* intr-rpc.defs defines the INTR_INTERFACE macro to make the generated RPC - stubs send-interruptible, and to prefix them with `hurd_intr_rpc_'. */ - INTR_INTERFACE - - /* set integer value to data */ - routine data_set_value ( - data_port: mach_port_t; - value: int); - - /* get integer value from data */ - routine data_get_value ( - data_port: mach_port_t; - out value: int); - -data-user.c: ------------- - - #include - #include - #include - #include "data.h" - - #ifndef _GNU_SOURCE - #define _GNU_SOURCE - #endif - - int - main(int argc, char *argv[]) - { - int value=0; - mach_port_t data_server_port; - - data_server_port = file_name_lookup ("/tmp/trans", 0, 0); - printf ("data_server_port [%u]\n", data_server_port); - S_data_set_value (data_server_port, 99); - S_data_get_value (data_server_port, &value); - printf ("data->get_value: [%d]\n", value); - - return 0; - } - -data-server.c: --------------- - - #ifndef _GNU_SOURCE - #define _GNU_SOURCE - #endif - - #include - #include - #include - #include - #include - - #include - #include - #include - - #include "data.h" - - extern boolean_t S_data_server - (mach_msg_header_t *InHeadP, mach_msg_header_t *OutHeadP); - - int trivfs_fstype = FSTYPE_MISC; - int trivfs_fsid = 0; - int trivfs_support_read = 0; - int trivfs_support_write = 0; - int trivfs_support_exec = 0; - int trivfs_allow_open = 0x00; - int trivfs_protid_nportclasses = 0; - int trivfs_cntl_nportclasses = 0; - - int data_value; - - int demuxer (mach_msg_header_t *inp, mach_msg_header_t *outp) - { - return (S_data_server(inp,outp)||trivfs_demuxer(inp,outp)); - } - - void trivfs_modify_stat (struct trivfs_protid *cred, io_statbuf_t *st) - { - } - error_t trivfs_goaway (struct trivfs_control *fsys, int flags) - { - exit (0); - } - - kern_return_t S_data_set_value (mach_port_t data_port, int value) - { - data_value = value; - return 0; - } - - kern_return_t S_data_get_value (mach_port_t data_port, int *value) - { - *value = data_value; - return 0; - } - - int - main(int argc, char *argv[]) - { - int err; - mach_port_t bootstrap; - struct trivfs_control *fsys; - - if (argc > 1) - { - fprintf(stderr, "Usage: settrans [opts] node %s\n", program_invocation_name); - exit (1); - } - - task_get_bootstrap_port (mach_task_self (), &bootstrap); - if (bootstrap == MACH_PORT_NULL) - error(2, 0, "Must be started as a translator"); - - /* Reply to our parent */ - err = trivfs_startup (bootstrap, 0, 0, 0, 0, 0,&fsys); - mach_port_deallocate (mach_task_self (), bootstrap); - if (err) { - return (0); - } - - ports_manage_port_operations_one_thread (fsys->pi.bucket, demuxer, 0); - - return 0; - } - -Makefile: ---------- - - CC = gcc - MIG = mig - CFLAGS = -Wall -g -D_GNU_SOURCE - LDFLAGS = -lthreads -lports -ltrivfs -lfshelp -lshouldbeinlibc - INCLUDES = -I. - LCHDRS = - MIGCOMSFLAGS = -prefix S_ - OBJS = $(SRCS:.c=.o) - TAGS = etags.emacs21 - - all: data-server data-user - tags: - $(TAGS) $(SRCS) $(LCHDRS) - - stubs: data.defs - $(MIG) $(MIGCOMSFLAGS) -server dataServer.c -user dataUser.c $^ - data-server: data-server.c dataServer.c - $(CC) $^ $(CFLAGS) $(INCLUDES) $(LDFLAGS) -o $@ - data-user: data-user.c dataUser.c - $(CC) $^ $(CFLAGS) $(INCLUDES) -o $@ - clean: - rm -f *.o data-server data-user - - start: data-server data-user - settrans -ac /tmp/trans data-server - ps -x | grep data-server - end: - settrans -fg /tmp/trans - -Building --------- - -Do - - make stubs - -to create the dataUser.c and dataServer.c files generated by mig. Create the -executables using: - - make all - -Testing -------- - -Start the data-server translator using: - - settrans -ac /tmp/trans data-server - -You can check if it is running using - - ps -x | grep data-server - -Run the data-user executable to get the resultant output. - -You can remove the translator using: - - settrans -fg /tmp/trans - -To remove the built files use: - - make clean - -Happy Hacking! -- cgit v1.2.3 From 21e5bc713b8ecefae137463fb04bbbda97ab0a09 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 13 Nov 2007 19:42:11 +0100 Subject: Move to a suitable place. --- howtos.mdwn | 1 - hurd/translator.mdwn | 3 ++- hurd/translator/cvsfs.mdwn | 50 ++++++++++++++++++++++++++++++++++++++++++++++ setupcvsfs.mdwn | 50 ---------------------------------------------- 4 files changed, 52 insertions(+), 52 deletions(-) create mode 100644 hurd/translator/cvsfs.mdwn delete mode 100644 setupcvsfs.mdwn (limited to 'hurd/translator') diff --git a/howtos.mdwn b/howtos.mdwn index 7d893c68..95f77eb9 100644 --- a/howtos.mdwn +++ b/howtos.mdwn @@ -16,7 +16,6 @@ is included in the section entitled * [[QemuNetworkForHurd]] Setting up Hurd Networking on Qemu * Setting up translators -- [[some_examples|hurd/translator/examples]] * [[QemuFileSharingWithHost]] File sharing between GNU on Qemu and the Host OS - * [[Setupcvsfs]]Setting up cvsfs from HurdExtras * [[hurd/translator/writing/Example]] about how to write a simple Hurd translator * [[hurd/libhello_example]] -- Hurd library example diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 202f6ff1..80cbd5da 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -48,6 +48,7 @@ Also there is an [[writing/example]] about how to write a simple translator. * [[random]] * [[emailfs]] -- email as a filesystem +* [[cvsfs]] * ... @@ -93,7 +94,7 @@ Also there is an [[writing/example]] about how to write a simple translator. * The advantage is any save to the spreadsheet will update the report.. not just from one software. * SVN (Subversion suite) - * like CVS.. /svndir/version/version-no should automatically have subversion + * like [[cvsfs]]. /svndir/version/version-no should automatically have subversion * I think it is nice to write a generalised version control system framework library which will help in writing version control translators and other tools easily. * Flexi-acls diff --git a/hurd/translator/cvsfs.mdwn b/hurd/translator/cvsfs.mdwn new file mode 100644 index 00000000..2f72b90e --- /dev/null +++ b/hurd/translator/cvsfs.mdwn @@ -0,0 +1,50 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +## Setting up cvsfs on GNU/Hurd - A step by step process + +### Description of cvsfs + +cvsfs is a virtual ([[libnetfs]] based) filesystem allowing you to mount +remotely located CVS modules into your local filesystem. The version +controlled files will appear to you just like regular ones. If you just want +to view one file (or a small bunch) you furthermore save a lot of network +bandwidth since only these files will be downloaded. The usual way to do so +would be to check out the whole tree and deleting it after using. + +## Step by Step process in installing cvsfs + +Download and prepare the source files from the CVS repositiory and build them. + + $ cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/hurdextras co cvsfs + $ cd cvsfs/ + $ autoreconf -i + $ ./configure + $ make + $ make install + +Set up the translator and start grazing. + + $ mkdir -p cvsfs_test + $ settrans -a cvsfs_test /hurd/cvsfs cvs.sourceforge.net /cvsroot/projectname modulename + +Example to mount the cvsfs module on hurdextras to a local directory. + + $ mkdir cvs.d + $ settrans -ac cvs.d/cvsfs /hurd/cvsfs cvs.savannah.nongnu.org sources/hurdextras cvsfs + +Now change to that directory and start using ls, emacs, and whatever you feel +like. :-) + +Happy Hacking. + + +## References + + * + * diff --git a/setupcvsfs.mdwn b/setupcvsfs.mdwn deleted file mode 100644 index 2f72b90e..00000000 --- a/setupcvsfs.mdwn +++ /dev/null @@ -1,50 +0,0 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] - -## Setting up cvsfs on GNU/Hurd - A step by step process - -### Description of cvsfs - -cvsfs is a virtual ([[libnetfs]] based) filesystem allowing you to mount -remotely located CVS modules into your local filesystem. The version -controlled files will appear to you just like regular ones. If you just want -to view one file (or a small bunch) you furthermore save a lot of network -bandwidth since only these files will be downloaded. The usual way to do so -would be to check out the whole tree and deleting it after using. - -## Step by Step process in installing cvsfs - -Download and prepare the source files from the CVS repositiory and build them. - - $ cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/hurdextras co cvsfs - $ cd cvsfs/ - $ autoreconf -i - $ ./configure - $ make - $ make install - -Set up the translator and start grazing. - - $ mkdir -p cvsfs_test - $ settrans -a cvsfs_test /hurd/cvsfs cvs.sourceforge.net /cvsroot/projectname modulename - -Example to mount the cvsfs module on hurdextras to a local directory. - - $ mkdir cvs.d - $ settrans -ac cvs.d/cvsfs /hurd/cvsfs cvs.savannah.nongnu.org sources/hurdextras cvsfs - -Now change to that directory and start using ls, emacs, and whatever you feel -like. :-) - -Happy Hacking. - - -## References - - * - * -- cgit v1.2.3 From 97722240331041d963caf811be8ec8fb5ddebca4 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sun, 16 Dec 2007 01:05:20 +0100 Subject: Hurd/MagicTranslator -> hurd/translator/magic. --- Hurd/MagicTranslator.mdwn | 17 ----------------- Hurd/TranslatorPages.mdwn | 2 +- hurd/translator.mdwn | 1 + hurd/translator/magic.mdwn | 17 +++++++++++++++++ 4 files changed, 19 insertions(+), 18 deletions(-) delete mode 100644 Hurd/MagicTranslator.mdwn create mode 100644 hurd/translator/magic.mdwn (limited to 'hurd/translator') diff --git a/Hurd/MagicTranslator.mdwn b/Hurd/MagicTranslator.mdwn deleted file mode 100644 index 6e649569..00000000 --- a/Hurd/MagicTranslator.mdwn +++ /dev/null @@ -1,17 +0,0 @@ -[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] - -The magic translator provides /dev/fd. - - $ showtrans /dev/fd - /hurd/magic --directory fd - -The /dev/fd directory holds the open file descriptors for your current process. You can't see them with \`ls -l /dev/fd/' but you can see them individually like this: - - $ ls -l /dev/fd/0 - crw--w---- 1 bing tty 0, 0 Nov 19 18:00 /dev/fd/0 diff --git a/Hurd/TranslatorPages.mdwn b/Hurd/TranslatorPages.mdwn index a8e9b720..8e954521 100644 --- a/Hurd/TranslatorPages.mdwn +++ b/Hurd/TranslatorPages.mdwn @@ -26,7 +26,7 @@ Here are the translators that currently exist: * [[IsofsTranslator]] * [[KbdTranslator]] * [[MachdefpagerTranslator]] - (actually named mach-defpager) -* [[MagicTranslator]] +* [[hurd/translator/magic]] * [[MouseTranslator]] * [[NfsTranslator]] * [[NullTranslator]] diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 3e7230b3..4b25bdcf 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -43,6 +43,7 @@ See some [[examples]] about how to use translators. * [[storeio]] * [[ext2fs]] * [[fatfs]] +* [[magic]] * ... diff --git a/hurd/translator/magic.mdwn b/hurd/translator/magic.mdwn new file mode 100644 index 00000000..6e649569 --- /dev/null +++ b/hurd/translator/magic.mdwn @@ -0,0 +1,17 @@ +[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +The magic translator provides /dev/fd. + + $ showtrans /dev/fd + /hurd/magic --directory fd + +The /dev/fd directory holds the open file descriptors for your current process. You can't see them with \`ls -l /dev/fd/' but you can see them individually like this: + + $ ls -l /dev/fd/0 + crw--w---- 1 bing tty 0, 0 Nov 19 18:00 /dev/fd/0 -- cgit v1.2.3 From 1d695c7c71fc5056885a69ae0be1b6e75674c412 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sun, 16 Dec 2007 01:06:57 +0100 Subject: hurd/translator/magic: Markdown syntax. --- hurd/translator/magic.mdwn | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/magic.mdwn b/hurd/translator/magic.mdwn index 6e649569..d8539d6a 100644 --- a/hurd/translator/magic.mdwn +++ b/hurd/translator/magic.mdwn @@ -6,12 +6,14 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]] -The magic translator provides /dev/fd. +The magic translator provides `/dev/fd`. $ showtrans /dev/fd /hurd/magic --directory fd -The /dev/fd directory holds the open file descriptors for your current process. You can't see them with \`ls -l /dev/fd/' but you can see them individually like this: +The `/dev/fd` directory holds the open file descriptors for your current +process. You can't see them with `ls -l /dev/fd/` but you can see them +individually like this: $ ls -l /dev/fd/0 crw--w---- 1 bing tty 0, 0 Nov 19 18:00 /dev/fd/0 -- cgit v1.2.3 From bf1f2cac7b761bd888786232e26d4989917f982c Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:05:15 +0100 Subject: hurd/translator/tmpfs: New. --- hurd/translator.mdwn | 1 + hurd/translator/tmpfs.mdwn | 14 ++++++++++++++ 2 files changed, 15 insertions(+) create mode 100644 hurd/translator/tmpfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 4b25bdcf..2d60ecd3 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -52,6 +52,7 @@ See some [[examples]] about how to use translators. * [[random]] * [[emailfs]] -- email as a filesystem * [[cvsfs]] +* [[tmpfs]] * ... diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn new file mode 100644 index 00000000..6e063664 --- /dev/null +++ b/hurd/translator/tmpfs.mdwn @@ -0,0 +1,14 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + +`tmpfs` is a file system server for temporary data storage without using a real +(permanent) [[backing_store]]. + +It is based on `[[libdiskfs]]`. + +It's not working correctly at the moment. -- cgit v1.2.3 From 77a64a11077c0754f7916c626777b22b425c5ed4 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:16:59 +0100 Subject: hurd/translator/tmpfs/notes_bing: New; retrieved from . --- hurd/translator/tmpfs/notes_bing.mdwn | 82 +++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 hurd/translator/tmpfs/notes_bing.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn new file mode 100644 index 00000000..b28611f2 --- /dev/null +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -0,0 +1,82 @@ +1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. +$ sudo chmod ugo+x /servers/default-pager + +Then I get this error: +tmpfs: /build/mbanck/hurd-20060825/build-tree/hurd/tmpfs/dir.c:62: diskfs_get_directs: Assertion `__builtin_offsetof (struct tmpfs_dirent, name) >= __builtin_offsetof (struct dirent, d_name)' failed. + +2. i rearranged the struct tempfs_dirent in tmpfs.h to line up with the struct dirent. now the assert passes at line 62 of dir.c passes. + struct tmpfs_dirent + { + struct tmpfs_dirent *next; + struct disknode *dn; ++ char padding[3]; + uint8_t namelen; + char name[0]; + }; + +now ls works on an empty directory. +you can touch files, and run `ls' on them. +mkdir, rmdir works too. +fsysopts works +df works + +3. creating a symlink fails. + +old patch to get symlinks working: +http://www.mail-archive.com/bug-hurd@gnu.org/msg11844.html +--- node.c.orig 2005-07-24 09:56:39.000000000 -0400 ++++ node.c 2005-07-24 09:55:46.000000000 -0400 +@@ -330,6 +330,7 @@ + create_symlink_hook (struct node *np, const char *target) + { + assert (np->dn->u.lnk == 0); ++ np->dn_stat.st_size = strlen (target); + if (np->dn_stat.st_size > 0) + { + const size_t size = np->dn_stat.st_size + 1; +@@ -337,6 +338,7 @@ + if (np->dn->u.lnk == 0) + return ENOSPC; + memcpy (np->dn->u.lnk, target, size); ++ np->dn->type = DT_LNK; + adjust_used (size); + recompute_blocks (np); + } +@@ -380,8 +382,6 @@ + error_t + diskfs_truncate (struct node *np, off_t size) + { +- if (np->allocsize <= size) +- return 0; + + if (np->dn->type == DT_LNK) + { +@@ -392,6 +392,9 @@ + return 0; + } + ++ if (np->allocsize <= size) ++ return 0; ++ + assert (np->dn->type == DT_REG); + + if (default_pager == MACH_PORT_NULL) + +now symlinks work. + +4. can't write data to a file + + +-- +miscellaneous notes: + +diskfs_disk_name could be NULL, but it is "swap" + +using default_pager_object_set_size (np->dn->u.reg.memobj, size); to truncate and grow. + +why are our blocks 512? shouldn't it something else? or at least settable? +or does libdiskfs demand this? + +diskfs_get_filemap_pager_struct (struct node *np) returns null. +shouldn't it return default_pager? +--- -- cgit v1.2.3 From 129a744a3a30553aa5aaa22475ba30fdc2cd1867 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:18:12 +0100 Subject: hurd/translator/tmpfs/notes_bing: Copyright is assigned to the FSF. This was written by Ben Asselstine. --- hurd/translator/tmpfs/notes_bing.mdwn | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn index b28611f2..8aa48b44 100644 --- a/hurd/translator/tmpfs/notes_bing.mdwn +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -1,3 +1,11 @@ +[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + 1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. $ sudo chmod ugo+x /servers/default-pager -- cgit v1.2.3 From ec6c76c41e257a0745f4bd9ea0458c98c55866c3 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:23:37 +0100 Subject: hurd/translator/tmpfs/notes_bing: Markdown syntax. --- hurd/translator/tmpfs/notes_bing.mdwn | 144 ++++++++++++++++++---------------- 1 file changed, 75 insertions(+), 69 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn index 8aa48b44..312c3342 100644 --- a/hurd/translator/tmpfs/notes_bing.mdwn +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -6,85 +6,91 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]] -1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. -$ sudo chmod ugo+x /servers/default-pager - -Then I get this error: -tmpfs: /build/mbanck/hurd-20060825/build-tree/hurd/tmpfs/dir.c:62: diskfs_get_directs: Assertion `__builtin_offsetof (struct tmpfs_dirent, name) >= __builtin_offsetof (struct dirent, d_name)' failed. - -2. i rearranged the struct tempfs_dirent in tmpfs.h to line up with the struct dirent. now the assert passes at line 62 of dir.c passes. - struct tmpfs_dirent - { - struct tmpfs_dirent *next; - struct disknode *dn; -+ char padding[3]; - uint8_t namelen; - char name[0]; - }; - -now ls works on an empty directory. -you can touch files, and run `ls' on them. -mkdir, rmdir works too. -fsysopts works -df works +1. to run tmpfs as a regular user, /servers/default-pager must be executable by + that user. by default it seems to be set to read/write. + + $ sudo chmod ugo+x /servers/default-pager + + Then I get this error: + + tmpfs: /build/mbanck/hurd-20060825/build-tree/hurd/tmpfs/dir.c:62: diskfs_get_directs: Assertion `__builtin_offsetof (struct tmpfs_dirent, name) >= __builtin_offsetof (struct dirent, d_name)' failed. + +2. i rearranged the struct tempfs_dirent in tmpfs.h to line up with the struct + dirent. now the assert passes at line 62 of dir.c passes. + + struct tmpfs_dirent + { + struct tmpfs_dirent *next; + struct disknode *dn; + + char padding[3]; + uint8_t namelen; + char name[0]; + }; + + now ls works on an empty directory. + you can touch files, and run `ls' on them. + mkdir, rmdir works too. + fsysopts works + df works 3. creating a symlink fails. -old patch to get symlinks working: -http://www.mail-archive.com/bug-hurd@gnu.org/msg11844.html ---- node.c.orig 2005-07-24 09:56:39.000000000 -0400 -+++ node.c 2005-07-24 09:55:46.000000000 -0400 -@@ -330,6 +330,7 @@ - create_symlink_hook (struct node *np, const char *target) - { - assert (np->dn->u.lnk == 0); -+ np->dn_stat.st_size = strlen (target); - if (np->dn_stat.st_size > 0) - { - const size_t size = np->dn_stat.st_size + 1; -@@ -337,6 +338,7 @@ - if (np->dn->u.lnk == 0) - return ENOSPC; - memcpy (np->dn->u.lnk, target, size); -+ np->dn->type = DT_LNK; - adjust_used (size); - recompute_blocks (np); - } -@@ -380,8 +382,6 @@ - error_t - diskfs_truncate (struct node *np, off_t size) - { -- if (np->allocsize <= size) -- return 0; - - if (np->dn->type == DT_LNK) - { -@@ -392,6 +392,9 @@ - return 0; - } - -+ if (np->allocsize <= size) -+ return 0; -+ - assert (np->dn->type == DT_REG); - - if (default_pager == MACH_PORT_NULL) - -now symlinks work. + old patch to get symlinks working: + + http://www.mail-archive.com/bug-hurd@gnu.org/msg11844.html + --- node.c.orig 2005-07-24 09:56:39.000000000 -0400 + +++ node.c 2005-07-24 09:55:46.000000000 -0400 + @@ -330,6 +330,7 @@ + create_symlink_hook (struct node *np, const char *target) + { + assert (np->dn->u.lnk == 0); + + np->dn_stat.st_size = strlen (target); + if (np->dn_stat.st_size > 0) + { + const size_t size = np->dn_stat.st_size + 1; + @@ -337,6 +338,7 @@ + if (np->dn->u.lnk == 0) + return ENOSPC; + memcpy (np->dn->u.lnk, target, size); + + np->dn->type = DT_LNK; + adjust_used (size); + recompute_blocks (np); + } + @@ -380,8 +382,6 @@ + error_t + diskfs_truncate (struct node *np, off_t size) + { + - if (np->allocsize <= size) + - return 0; + + if (np->dn->type == DT_LNK) + { + @@ -392,6 +392,9 @@ + return 0; + } + + + if (np->allocsize <= size) + + return 0; + + + assert (np->dn->type == DT_REG); + + if (default_pager == MACH_PORT_NULL) + + now symlinks work. 4. can't write data to a file --- +--- + miscellaneous notes: -diskfs_disk_name could be NULL, but it is "swap" +`diskfs_disk_name` could be `NULL`, but it is `"swap"` -using default_pager_object_set_size (np->dn->u.reg.memobj, size); to truncate and grow. +using `default_pager_object_set_size (np->dn->u.reg.memobj, size);` to truncate and grow. why are our blocks 512? shouldn't it something else? or at least settable? -or does libdiskfs demand this? +or does [[libdiskfs]] demand this? -diskfs_get_filemap_pager_struct (struct node *np) returns null. -shouldn't it return default_pager? ---- +`diskfs_get_filemap_pager_struct (struct node *np)` returns null. +shouldn't it return `default_pager`? -- cgit v1.2.3 From c3319f15a7b5343e38f2143cd5bdfef88ad5638b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:34:55 +0100 Subject: hurd/translator/tmpfs/notes_various: New. Assembled from IRC logs. --- hurd/translator/tmpfs/notes_various.mdwn | 201 +++++++++++++++++++++++++++++++ 1 file changed, 201 insertions(+) create mode 100644 hurd/translator/tmpfs/notes_various.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn new file mode 100644 index 00000000..e323a890 --- /dev/null +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -0,0 +1,201 @@ + hde: what's the status on tmpfs? + Broke + k0ro traced the errors like the assert show above to a pager problem. + See the pager cannot handle request from multiple ports and tmpfs sends + request using two differ ports, so to fix it the pager needs to be hacked + to support multiple requests. + You can enable debugging in the pager by changing a line from dprintf + to ddprintf I can tell you how if you want. + and changing tmpfs to use a single port isn't possible?... + antrik, I am not sure. + IIRC k0ro was saying it cannot be changed and I cannot recall his + reasons why. + antrik: Doing it the quick&dirty way, I'd just use an N-ary + tree for representing the directory structure and mmap one new page (or + more) for each file. + sdschulze, What are you talking about? + hde: about how I would implement tmpfs + O + sdschulze: you don't need to reimplement it, just fix it :) + azeem: Well, it seems a bit more difficult than I considered. + I had assumed it was implemented the way I described. + O and the assert above gets triggered if you don't have a + default-pager setup on /servers/default-pager + the dir.c:62 assert that is. + hde: you sure? I think I have one + I am almost sure. + mbanck@beethoven:~$ showtrans /servers/default-pager + /hurd/proxy-defpager + isn't that enough? + It is suppose to be. + Try it as root + I was experiecing alot of bugs as a normal user, but according to + marcus it is suppose to work as root, but I was getting alot of hangs. + hde: same issue, sudo doesn't work + sucky, well then there are alot of bugs. =) + eh, no + I still get the dir.c assert + me too + Without it, I already get an error message trying to set tmpfs + as an active translator. + +--- + + I think I found the colprit. + default_pager_object_set_size --> This is were tmpfs is hanging. + mmm Hangs on the message to the default-pager. + +--- + + Well it looks like tmpfs is sending a message to the default-pager, + the default-pager then receives the message and, checks the seqno. I + checked the mig gen code and noticed that the seqno is the reply port, it + this does not check out then the default pager is put into a what it + seems infinte condition_wait hoping to get the correct seqno. + Now I am figuring out how to fix it, and debugging some more. + +--- + + hde: Still working on tmpfs? + Yea + Did you fix a lot already? + No, just trying to narrow down the reason why we cannot write file + greater then 4.5K. + ahh + What did you figure out so far? + I used the quick marcus fix for the reading assert. + reading assert? + Yea you know ls asserted. + oh? :) + Because, the offsets changed in sturct dirent in libc. + They added 64 bit checks. + So marcus suggested a while ago on bug-hurd to just add some padding + arrays to the struct tmpfs_dirent. + And low and behold it works. + Oh, that fix. + Yup + marco_g, I have figured out that tmpfs sends a message to the + default-pager, the default-pager does receive the message, but then + checks the seqno(The reply port) and if it is not the same as the + default-pagers structure->seqno then she waits hoping to get the correct + one. Unfortantly it puts the pager into a infinite lock and never come + out of it. + hde: That sucks... + But at least you know what the problem is. + marco_g, Yea, now I am figuring out how to fix it. + Which requires more debugging lol. + There is also another bug, default_pager_object_set_size in + mach-defpager does never return when called and makes tmpfs hang. I + will have a closer look at this later this week. + +--- + + Cool, now that I have two pagers running, hopefully I will have less + system crashes. + running more than one pager sounds like trouble to me, but maybe + hde means something different than I think + Well the other pager is only for tmpfs to use. + So I can debug the pager without messing with the entire system. + marcus, I am trying ti figure out why diskfs_object_set_size waits + forever. This way when the pager becomes locked forever I can turn it + off and restart it. When I was doing this with only one mach-defpager + running the system would crash. + hde: how were you able to start two default pagers?? + Well you most likely will not think my way of doing it was correct, + and I am also not sure if it is lol. I made my hacked version not stop + working if one is alreay started. + +--- + + See, the default-pager has a function called + default_pager_object_set_size this sets the size for a memory object, + well it checks the seqno for each object if it is wrong it goes into a + condition_wait, and waits for another thread to give it a correct seqno, + well this never happens. + Thus, you get a hung tmpfs and default-pager. + pager_memcpy (pager=0x0, memobj=33, offset=4096, other=0x20740, + size=0x129df54, prot=3) at pager-memcpy.c:43 + bddebian, See the problem? + pager=0x0? + Yup + Now wtf is the deal, I must debug. + -- Function: struct pager * diskfs_get_filemap_pager_struct + (struct node *NP) + Return a `struct pager *' that refers to the pager returned by + diskfs_get_filemap for locked node NP, suitable for use as an + argument to `pager_memcpy'. + That is failing. + If it is not one thing it is another. + All of Mach fails ;-) + It is alot of work to make a test program that uses libdiskfs. + +--- + + to run tmpfs as a regular user, /servers/default-pager must be + executable by that user. by default it seems to be set to read/write. + $ sudo chmod ugo+x /servers/default-pager + you can see the O_EXEC in tmpfs.c + maybe this is just a debian packaging problem + it's probably a fix to native-install i'd guess + +--- + + tmpfs is failing on default_pager_object_create with -308, which + means server died + i'm running it as a regular user, so it gets it's pager from + /servers/default-pager + and showtrans /servers/default-pager shows /hurd/proxy-defpager + so i'm guessing that's the server that died + +--- + + this is about /hurd/tmpfs + a filesystem in memory + such that each file is it's own memory object + what does that mean exactly? it differs from a "ramdisk"? + instead of the whole fs being a memory object + it only allocates memory as needed? + each file is it's own + andar: yeah + it's not ext2 or anything + yea + it's tmpfs :-) + first off, echo "this" > that + fails + with a hang + on default_pager_object_create + so writing to the memory object fails + well, it's on the create + ah + and it returns -308 + which is server died + in mig-speak + but if i run it as root + things behave differently + it gets passed the create + but then i don't know what + i want to make it work for the regular user + it doesn't work as root either, it hangs elsewhere + but it at least creates the memory object + that's the braindump + but it's great for symlinks! + do you know if it creates it? + i could do stowfs in it + +--- + + bing: k0ro (I think) analized the tmpfs problem some two years ago + or so, remember?... + it turns out that it broke due to some change in other stuff + (glibc I think) + problem was something like getting RPCs to same port from two + different sources or so + and the fix to that is non-trivial + I don't remember in what situations it broke exactly, maybe when + writing larger files? + antrik: yeah i never understood the explanation + antrik: right now it doesn't write any files + the change in glibc was to struct dirent + seems something more broke in the meantime :-( + ah, right... but I the main problem was some other change + (or maybe it never really worked, not sure anymore) -- cgit v1.2.3 From d803581b0017f72575e37a26180a35d31c28c7ed Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:38:59 +0100 Subject: hurd/translator/tmpfs/notes_various: Copyright is assigned to the FSF. People with substantial text contributions have Copyright papers on file at the FSF for the GNU Hurd: hde -- Harley D. Eades III; bing -- Ben Asselstine. --- hurd/translator/tmpfs/notes_various.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index e323a890..8a73d9bf 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -1,3 +1,12 @@ +[[meta copyright="Copyright © 2005, 2006, 2007 + Free Software Foundation, Inc."]] +[[meta license="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]] + hde: what's the status on tmpfs? Broke k0ro traced the errors like the assert show above to a pager problem. -- cgit v1.2.3 From 88e34c49b3318676b0adadf24e71a0f4a2c8a94e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 19 Dec 2007 23:48:29 +0100 Subject: hurd/translator/tmpfs: Inline subpages. --- hurd/translator/tmpfs.mdwn | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index 6e063664..5952b051 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -12,3 +12,9 @@ is included in the section entitled It is based on `[[libdiskfs]]`. It's not working correctly at the moment. + +[[inline +pages="hurd/translator/tmpfs/*" +show=0 +actions=yes +rootpage="hurd/translator/tmpfs" postformtext="Add a new item titled:"]] -- cgit v1.2.3 From 0db5ace8ecb75e79dfbd46d3079dc54a642d4cd5 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 22 Dec 2007 12:45:18 +0100 Subject: hurd/translator/tmpfs: Work around ikiwiki deficiency. --- hurd/translator/tmpfs.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index 5952b051..6215ca1a 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -9,7 +9,7 @@ is included in the section entitled `tmpfs` is a file system server for temporary data storage without using a real (permanent) [[backing_store]]. -It is based on `[[libdiskfs]]`. +It is based on [[libdiskfs]]. It's not working correctly at the moment. -- cgit v1.2.3 From a3b32e924ccb0f6cc31c36ce7d3ea695bcc360ad Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 18 Jan 2008 17:28:28 +0100 Subject: Make the GFDL 1.2+ licensing text toggleable. --- Hurd/GNUHurdStatus.mdwn | 8 +++++--- Hurd/HurdNames.mdwn | 8 +++++--- Hurd/TheGnuHurd.mdwn | 8 +++++--- abac.mdwn | 8 +++++--- about_the_twiki_to_ikiwiki_conversion.mdwn | 8 +++++--- asbestos.mdwn | 8 +++++--- binutils.mdwn | 8 +++++--- capability.mdwn | 8 +++++--- community.mdwn | 6 ++++-- community/facebook.mdwn | 8 +++++--- community/meetings.mdwn | 6 ++++-- community/meetings/fosdem_2005.mdwn | 6 ++++-- community/meetings/fosdem_2006.mdwn | 6 ++++-- community/meetings/fosdem_2007.mdwn | 6 ++++-- community/meetings/fosdem_2008.mdwn | 6 ++++-- community/meetings/rmll_2006.mdwn | 6 ++++-- community/meetings/stesie_2007-10-12.mdwn | 8 +++++--- config_edittemplate.mdwn | 8 +++++--- config_edittemplate/regular_page.mdwn | 6 ++++-- confused_deputy.mdwn | 8 +++++--- contributing.mdwn | 8 +++++--- contributing/questionnaire.mdwn | 8 +++++--- contributing/wiki.mdwn | 8 +++++--- designation.mdwn | 8 +++++--- destructive_interference.mdwn | 8 +++++--- donate.mdwn | 6 ++++-- extensibility.mdwn | 8 +++++--- gcc.mdwn | 8 +++++--- gdb.mdwn | 8 +++++--- gdb/backtrace.mdwn | 8 +++++--- glibc.mdwn | 8 +++++--- how_to_contribute_to_this_wiki.mdwn | 8 +++++--- hurd/authentication.mdwn | 8 +++++--- hurd/binutils.mdwn | 8 +++++--- hurd/building/cross-compiling.mdwn | 8 +++++--- hurd/building/cross-compiling/discussion.mdwn | 8 +++++--- hurd/building/example.mdwn | 8 +++++--- hurd/concepts.mdwn | 8 +++++--- hurd/contributing.mdwn | 8 +++++--- hurd/critique.mdwn | 8 +++++--- hurd/debugging.mdwn | 8 +++++--- hurd/debugging/gdb.mdwn | 8 +++++--- hurd/debugging/gdb/noninvasive_debugging.mdwn | 8 +++++--- hurd/debugging/hurd.mdwn | 8 +++++--- hurd/debugging/rpctrace.mdwn | 8 +++++--- hurd/gcc.mdwn | 8 +++++--- hurd/getting_help.mdwn | 8 +++++--- hurd/gettinghelp.mdwn | 8 +++++--- hurd/glibc.mdwn | 8 +++++--- hurd/glibc/hurd-specific_api.mdwn | 8 +++++--- hurd/history.mdwn | 8 +++++--- hurd/hurd_hacking_guide.mdwn | 8 +++++--- hurd/libhello_example.mdwn | 8 +++++--- hurd/libpager.mdwn | 8 +++++--- hurd/libstore.mdwn | 8 +++++--- hurd/logo.mdwn | 8 +++++--- hurd/neighborhurd.mdwn | 8 +++++--- hurd/ng/history.mdwn | 8 +++++--- hurd/ng/position_paper.mdwn | 8 +++++--- hurd/running.mdwn | 8 +++++--- hurd/running/debian/DebianAptOffline.mdwn | 8 +++++--- hurd/running/debian/faq/2_gib_partition_limit.mdwn | 8 +++++--- hurd/running/debian/faq/512_mib_ram_limit.mdwn | 8 +++++--- hurd/running/debian/faq/apt_umount.mdwn | 8 +++++--- hurd/running/debian/faq/bad_hypermeta_data.mdwn | 8 +++++--- hurd/running/debian/faq/debugging_inside_glibc.mdwn | 8 +++++--- hurd/running/debian/faq/debugging_translators.mdwn | 8 +++++--- hurd/running/debian/faq/dev_random.mdwn | 8 +++++--- hurd/running/debian/faq/df.mdwn | 8 +++++--- hurd/running/debian/faq/free_memory.mdwn | 8 +++++--- hurd/running/debian/faq/hurd_console.mdwn | 8 +++++--- hurd/running/debian/faq/kernel_logs.mdwn | 8 +++++--- hurd/running/debian/faq/other_repositories.mdwn | 8 +++++--- hurd/running/debian/faq/ps_hangs.mdwn | 8 +++++--- hurd/running/debian/faq/reporting_bugs.mdwn | 8 +++++--- hurd/running/debian/faq/sshd.mdwn | 8 +++++--- hurd/running/debian/faq/xserver-common.mdwn | 8 +++++--- hurd/running/debian/patch_submission.mdwn | 6 ++++-- hurd/running/gnu/create_an_image.mdwn | 8 +++++--- hurd/running/gnu/setup.mdwn | 8 +++++--- hurd/running/gnu/universal_package_manager.mdwn | 8 +++++--- hurd/running/qemu/microsoft_windows.mdwn | 8 +++++--- hurd/running/qemu/networking.mdwn | 8 +++++--- hurd/running/qemu/networking/sharing_files.mdwn | 8 +++++--- hurd/running/vmware.mdwn | 8 +++++--- hurd/running/vmware/discussion.mdwn | 8 +++++--- hurd/status.mdwn | 8 +++++--- hurd/subhurd.mdwn | 8 +++++--- hurd/toolchain.mdwn | 8 +++++--- hurd/translator.mdwn | 8 +++++--- hurd/translator/cvsfs.mdwn | 8 +++++--- hurd/translator/emailfs.mdwn | 8 +++++--- hurd/translator/examples.mdwn | 8 +++++--- hurd/translator/ext2fs.mdwn | 8 +++++--- hurd/translator/fatfs.mdwn | 8 +++++--- hurd/translator/magic.mdwn | 8 +++++--- hurd/translator/pfinet.mdwn | 8 +++++--- hurd/translator/pfinet/ipv6.mdwn | 8 +++++--- hurd/translator/storeio.mdwn | 8 +++++--- hurd/translator/tmpfs.mdwn | 8 +++++--- hurd/translator/tmpfs/notes_bing.mdwn | 8 +++++--- hurd/translator/tmpfs/notes_various.mdwn | 8 +++++--- hurd/translator/writing/example.mdwn | 8 +++++--- hurd/virtual_file_system.mdwn | 8 +++++--- hurd/virtualization.mdwn | 8 +++++--- ibac.mdwn | 8 +++++--- idl.mdwn | 8 +++++--- index/discussion.mdwn | 8 +++++--- ipc.mdwn | 8 +++++--- isolation.mdwn | 8 +++++--- liedtke.mdwn | 8 +++++--- mailing_lists/bug-hurd.mdwn | 8 +++++--- mailing_lists/debian-hurd.mdwn | 8 +++++--- mailing_lists/gnu-system-discuss.mdwn | 8 +++++--- mailing_lists/help-hurd.mdwn | 8 +++++--- mailing_lists/hurd-devel-readers.mdwn | 8 +++++--- mailing_lists/hurd-devel.mdwn | 8 +++++--- mailing_lists/l4-hurd.mdwn | 8 +++++--- mailing_lists/unmoderated.mdwn | 8 +++++--- mailing_lists/web-hurd.mdwn | 8 +++++--- mailinglists.mdwn | 8 +++++--- mechanism.mdwn | 8 +++++--- microkernel.mdwn | 8 +++++--- microkernel/for_beginners.mdwn | 8 +++++--- microkernel/mach/documentation.mdwn | 8 +++++--- microkernel/mach/external_pager_mechanism.mdwn | 8 +++++--- microkernel/mach/gnumach.mdwn | 8 +++++--- microkernel/mach/gnumach/boot_trace.mdwn | 8 +++++--- microkernel/mach/gnumach/building/example.mdwn | 8 +++++--- microkernel/mach/gnumach/debugging.mdwn | 8 +++++--- microkernel/mach/gnumach/hardware_compatibility_list.mdwn | 8 +++++--- microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn | 8 +++++--- microkernel/mach/gnumach/ports.mdwn | 8 +++++--- microkernel/mach/gnumach/projects.mdwn | 8 +++++--- microkernel/mach/gnumach/projects/clean_up_the_code.mdwn | 8 +++++--- microkernel/mach/ipc.mdwn | 8 +++++--- microkernel/mach/ipc/sequence_numbering.mdwn | 8 +++++--- microkernel/mach/port.mdwn | 8 +++++--- microkernel/mach/rpc.mdwn | 8 +++++--- naming_context.mdwn | 8 +++++--- persistency.mdwn | 8 +++++--- policy.mdwn | 8 +++++--- principal.mdwn | 8 +++++--- rpc.mdwn | 8 +++++--- rules.mdwn | 8 +++++--- rules/savannah_group.mdwn | 8 +++++--- rules/source_repositories.mdwn | 8 +++++--- security.mdwn | 8 +++++--- sfi.mdwn | 8 +++++--- sidebar.mdwn | 8 +++++--- tcb.mdwn | 8 +++++--- trust.mdwn | 8 +++++--- user/tschwinge.mdwn | 6 ++++-- user/vincentvikram.mdwn | 8 +++++--- virtualization.mdwn | 8 +++++--- 155 files changed, 764 insertions(+), 454 deletions(-) (limited to 'hurd/translator') diff --git a/Hurd/GNUHurdStatus.mdwn b/Hurd/GNUHurdStatus.mdwn index cbc3b8d4..21448e60 100644 --- a/Hurd/GNUHurdStatus.mdwn +++ b/Hurd/GNUHurdStatus.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=hurd/status]] diff --git a/Hurd/HurdNames.mdwn b/Hurd/HurdNames.mdwn index 07d5ebd9..c4e647e5 100644 --- a/Hurd/HurdNames.mdwn +++ b/Hurd/HurdNames.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[toc ]] diff --git a/Hurd/TheGnuHurd.mdwn b/Hurd/TheGnuHurd.mdwn index f14a6939..dbd5c721 100644 --- a/Hurd/TheGnuHurd.mdwn +++ b/Hurd/TheGnuHurd.mdwn @@ -1,11 +1,13 @@ -[[meta copyright="Copyright © 2001, 2002, 2007 Free Software Foundation, +[[meta copyright="Copyright © 2001, 2002, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The Hurd is GNU's replacement for the various UNIX and Linux kernels. diff --git a/abac.mdwn b/abac.mdwn index 1a0db406..a260a986 100644 --- a/abac.mdwn +++ b/abac.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ABAC stands for authorization-based access control. In this model, access is not granted based on the diff --git a/about_the_twiki_to_ikiwiki_conversion.mdwn b/about_the_twiki_to_ikiwiki_conversion.mdwn index 01f284e3..8c556261 100644 --- a/about_the_twiki_to_ikiwiki_conversion.mdwn +++ b/about_the_twiki_to_ikiwiki_conversion.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Some Quick Notes About the *TWiki to ikiwiki* Conversion diff --git a/asbestos.mdwn b/asbestos.mdwn index 838dfd0d..65ab391e 100644 --- a/asbestos.mdwn +++ b/asbestos.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Asbestos is an operating system developed at MIT, Stanford and UCLA to explore information flow control policies. The motivation diff --git a/binutils.mdwn b/binutils.mdwn index f74058a8..3e9e5889 100644 --- a/binutils.mdwn +++ b/binutils.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The [GNU Binutils](http://www.gnu.org/software/binutils/). diff --git a/capability.mdwn b/capability.mdwn index bb849cae..8bb14f13 100644 --- a/capability.mdwn +++ b/capability.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A capability is a protected reference. It is a reference in that it designates an object; it is protected in that in cannot be diff --git a/community.mdwn b/community.mdwn index 7a38fe93..030c9209 100644 --- a/community.mdwn +++ b/community.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2002, 2003, 2005, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] There is an expanding community of people developing and running test Debian GNU/Hurd machines. diff --git a/community/facebook.mdwn b/community/facebook.mdwn index a6e9e558..b5340224 100644 --- a/community/facebook.mdwn +++ b/community/facebook.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] There is [a Facebook group for the Hurd](http://www.facebook.com/group.php?gid=5141429597). If you're on Facebook, join it and say hello. diff --git a/community/meetings.mdwn b/community/meetings.mdwn index b43997b6..b67637e3 100644 --- a/community/meetings.mdwn +++ b/community/meetings.mdwn @@ -1,10 +1,12 @@ [[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Upcoming diff --git a/community/meetings/fosdem_2005.mdwn b/community/meetings/fosdem_2005.mdwn index e69453b9..984c6637 100644 --- a/community/meetings/fosdem_2005.mdwn +++ b/community/meetings/fosdem_2005.mdwn @@ -1,10 +1,12 @@ [[meta copyright="Copyright © 2006, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] diff --git a/community/meetings/fosdem_2006.mdwn b/community/meetings/fosdem_2006.mdwn index 8392fdf0..c775b658 100644 --- a/community/meetings/fosdem_2006.mdwn +++ b/community/meetings/fosdem_2006.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] diff --git a/community/meetings/fosdem_2007.mdwn b/community/meetings/fosdem_2007.mdwn index e17cf9ae..c320c1fc 100644 --- a/community/meetings/fosdem_2007.mdwn +++ b/community/meetings/fosdem_2007.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] diff --git a/community/meetings/fosdem_2008.mdwn b/community/meetings/fosdem_2008.mdwn index 0c10f79d..f6813b83 100644 --- a/community/meetings/fosdem_2008.mdwn +++ b/community/meetings/fosdem_2008.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] diff --git a/community/meetings/rmll_2006.mdwn b/community/meetings/rmll_2006.mdwn index e02fbadf..74ad21c9 100644 --- a/community/meetings/rmll_2006.mdwn +++ b/community/meetings/rmll_2006.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The 7th Rencontres Mondiales du Logiciel Libre (also known as Libre Software Meeting) will be held on July 4th-8th 2006 in Vandoeuvre-les-Nancy. diff --git a/community/meetings/stesie_2007-10-12.mdwn b/community/meetings/stesie_2007-10-12.mdwn index d34bf045..8559c662 100644 --- a/community/meetings/stesie_2007-10-12.mdwn +++ b/community/meetings/stesie_2007-10-12.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] On the weekend 2007-10-12 to 14 [[Stefan_Siegl|stesie]] invited Hurd people. Colin Leitner and [[Thomas_Schwinge|tschwinge]] came, as well as novice diff --git a/config_edittemplate.mdwn b/config_edittemplate.mdwn index e9502a55..24641bb5 100644 --- a/config_edittemplate.mdwn +++ b/config_edittemplate.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] This page exists purely for configuring the [[iki plugins/edittemplate]] plugin. diff --git a/config_edittemplate/regular_page.mdwn b/config_edittemplate/regular_page.mdwn index b69bb4fd..fe591ac7 100644 --- a/config_edittemplate/regular_page.mdwn +++ b/config_edittemplate/regular_page.mdwn @@ -1,10 +1,12 @@ [[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] HERE STARTS YOUR NEW CONTENT -- remove everything from here on, including this line. diff --git a/confused_deputy.mdwn b/confused_deputy.mdwn index ac4a9ede..16b3bebf 100644 --- a/confused_deputy.mdwn +++ b/confused_deputy.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [The confused deputy](http://www.cis.upenn.edu/~KeyKOS/ConfusedDeputy.html) problem was articulated by Norm Hardy. It is a possible consequence diff --git a/contributing.mdwn b/contributing.mdwn index b5d7b8e5..0d66980e 100644 --- a/contributing.mdwn +++ b/contributing.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] So, you are interested in contributing to the GNU/Hurd effort? diff --git a/contributing/questionnaire.mdwn b/contributing/questionnaire.mdwn index 1a45442e..3320b80a 100644 --- a/contributing/questionnaire.mdwn +++ b/contributing/questionnaire.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] People often come to us and state that they'd like to help with the GNU/Hurd. This is very good and very much encouraged: we're always looking for volunteers diff --git a/contributing/wiki.mdwn b/contributing/wiki.mdwn index ab12a68e..c34aa557 100644 --- a/contributing/wiki.mdwn +++ b/contributing/wiki.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] (!) Some general hints first; they may sound very familiar from other software projects: diff --git a/designation.mdwn b/designation.mdwn index c9c7c166..4307ec5b 100644 --- a/designation.mdwn +++ b/designation.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] To designate is to name. diff --git a/destructive_interference.mdwn b/destructive_interference.mdwn index 2ace1a33..c41e5a36 100644 --- a/destructive_interference.mdwn +++ b/destructive_interference.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Interference can be destructive or non-destructive. When a [[principal]] invokes an object (thereby requesting a service) and the implementation diff --git a/donate.mdwn b/donate.mdwn index f2a4f307..954b4ee4 100644 --- a/donate.mdwn +++ b/donate.mdwn @@ -1,11 +1,13 @@ [[meta copyright="Copyright © 2003, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] If you feel like donating goods or money for the work the developers are doing, then we're happy to confirm that this is indeed possible. Of course we'd diff --git a/extensibility.mdwn b/extensibility.mdwn index ba7359a0..1d6adc51 100644 --- a/extensibility.mdwn +++ b/extensibility.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] An extensible system is one that enables extensibility. Enabling extensibility means providing non-privileged mechanisms to extend existing objects and to diff --git a/gcc.mdwn b/gcc.mdwn index 7fdee301..93256f1b 100644 --- a/gcc.mdwn +++ b/gcc.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The [GNU Compiler Collection](http://gcc.gnu.org/). diff --git a/gdb.mdwn b/gdb.mdwn index 36d096bc..83113f9e 100644 --- a/gdb.mdwn +++ b/gdb.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The [GNU debugger *GDB*](http://www.gnu.org/software/gdb/). diff --git a/gdb/backtrace.mdwn b/gdb/backtrace.mdwn index a8825d3b..9716a211 100644 --- a/gdb/backtrace.mdwn +++ b/gdb/backtrace.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] When someone asks you to supply a backtrace (from a [[segmentation_fault]], for example), here is roughly what you have to do. diff --git a/glibc.mdwn b/glibc.mdwn index 5a61812c..f6325ff8 100644 --- a/glibc.mdwn +++ b/glibc.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The [GNU C Library](http://www.gnu.org/software/libc/). diff --git a/how_to_contribute_to_this_wiki.mdwn b/how_to_contribute_to_this_wiki.mdwn index 88950834..89df20e5 100644 --- a/how_to_contribute_to_this_wiki.mdwn +++ b/how_to_contribute_to_this_wiki.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=contributing/wiki]] diff --git a/hurd/authentication.mdwn b/hurd/authentication.mdwn index 54dc8de2..cbb164c8 100644 --- a/hurd/authentication.mdwn +++ b/hurd/authentication.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] UIDs on the Hurd are separate from processes. A process has [[capabilities|capability]] designating so-called UID vectors that diff --git a/hurd/binutils.mdwn b/hurd/binutils.mdwn index 56918834..97c93602 100644 --- a/hurd/binutils.mdwn +++ b/hurd/binutils.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[General_information|/binutils]] about the binutils. diff --git a/hurd/building/cross-compiling.mdwn b/hurd/building/cross-compiling.mdwn index fb02c507..11afc97f 100644 --- a/hurd/building/cross-compiling.mdwn +++ b/hurd/building/cross-compiling.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # `cross-gnu` diff --git a/hurd/building/cross-compiling/discussion.mdwn b/hurd/building/cross-compiling/discussion.mdwn index 14852827..f75e9e3e 100644 --- a/hurd/building/cross-compiling/discussion.mdwn +++ b/hurd/building/cross-compiling/discussion.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] What happens if the external link goes down? Is there any way to store files within the wiki itself? --[[vincentvikram]] diff --git a/hurd/building/example.mdwn b/hurd/building/example.mdwn index 0adaf1f8..afa18d8a 100644 --- a/hurd/building/example.mdwn +++ b/hurd/building/example.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] I checked out the source code on my Ubuntu GNU/Linux system connected to the Internet using: diff --git a/hurd/concepts.mdwn b/hurd/concepts.mdwn index cdbd60dd..e416f1e6 100644 --- a/hurd/concepts.mdwn +++ b/hurd/concepts.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * [[Translator]] * [[Virtual_File_System]] diff --git a/hurd/contributing.mdwn b/hurd/contributing.mdwn index 73550831..f083b9b8 100644 --- a/hurd/contributing.mdwn +++ b/hurd/contributing.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Porting Applications diff --git a/hurd/critique.mdwn b/hurd/critique.mdwn index 4db8726f..9770138e 100644 --- a/hurd/critique.mdwn +++ b/hurd/critique.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*A Critique of the GNU Hurd Multi-Server Operating diff --git a/hurd/debugging.mdwn b/hurd/debugging.mdwn index f2f5dcd6..b84c5675 100644 --- a/hurd/debugging.mdwn +++ b/hurd/debugging.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Strategies diff --git a/hurd/debugging/gdb.mdwn b/hurd/debugging/gdb.mdwn index ea5ef857..98c31435 100644 --- a/hurd/debugging/gdb.mdwn +++ b/hurd/debugging/gdb.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The [[GNU_debugger_*GDB*|/gdb]] works on GNU/Hurd systems as it does on other system, but has some additional [hurd-specific diff --git a/hurd/debugging/gdb/noninvasive_debugging.mdwn b/hurd/debugging/gdb/noninvasive_debugging.mdwn index b6beb9c5..62179f7d 100644 --- a/hurd/debugging/gdb/noninvasive_debugging.mdwn +++ b/hurd/debugging/gdb/noninvasive_debugging.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Sometimes using [[GDB]] on a [[system_server|translator]] can result in a [[deadlock]]. You can however still use GDB by using the [`set diff --git a/hurd/debugging/hurd.mdwn b/hurd/debugging/hurd.mdwn index 2f758920..043da3e0 100644 --- a/hurd/debugging/hurd.mdwn +++ b/hurd/debugging/hurd.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Say you want to try running file system server (*[[translator/ext2fs]]*, *[[translator/jfs]]*, ...) against a modified version of *[[libpager]]* and diff --git a/hurd/debugging/rpctrace.mdwn b/hurd/debugging/rpctrace.mdwn index 05003fab..68edca2f 100644 --- a/hurd/debugging/rpctrace.mdwn +++ b/hurd/debugging/rpctrace.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] *rpctrace* is -- roughly -- an equivavlent to Linux's *strace* or Solaris' or BSD's *truss*. It is used to trace [[remote_procedure_call|rpc]]s a process is diff --git a/hurd/gcc.mdwn b/hurd/gcc.mdwn index 48d1b7fc..3700b8b8 100644 --- a/hurd/gcc.mdwn +++ b/hurd/gcc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[General_information|/gcc]] about the GCC. diff --git a/hurd/getting_help.mdwn b/hurd/getting_help.mdwn index 72cfc3c2..540dc851 100644 --- a/hurd/getting_help.mdwn +++ b/hurd/getting_help.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Essential Documentation diff --git a/hurd/gettinghelp.mdwn b/hurd/gettinghelp.mdwn index d8bdaf52..1faa94c5 100644 --- a/hurd/gettinghelp.mdwn +++ b/hurd/gettinghelp.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=getting_help]] diff --git a/hurd/glibc.mdwn b/hurd/glibc.mdwn index 2d43425d..de85c03d 100644 --- a/hurd/glibc.mdwn +++ b/hurd/glibc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[General_information|/glibc]] about the glibc. diff --git a/hurd/glibc/hurd-specific_api.mdwn b/hurd/glibc/hurd-specific_api.mdwn index aaaf8e2e..7333ec0d 100644 --- a/hurd/glibc/hurd-specific_api.mdwn +++ b/hurd/glibc/hurd-specific_api.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2002, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2002, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="Hurd-specific glibc API"]] diff --git a/hurd/history.mdwn b/hurd/history.mdwn index d556b5d5..7ee5df5a 100644 --- a/hurd/history.mdwn +++ b/hurd/history.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] History 1997-2003
Personal view of Marcus Brinkmann about Hurd development in 1997-2003. diff --git a/hurd/hurd_hacking_guide.mdwn b/hurd/hurd_hacking_guide.mdwn index b277fb5e..0cb96f32 100644 --- a/hurd/hurd_hacking_guide.mdwn +++ b/hurd/hurd_hacking_guide.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Originally written by Wolfgang Jährling, the [Hurd Hacking Guide](http://www.gnu.org/software/hurd/hacking-guide/hhg.html) contains an overview of some of the Hurd's features. diff --git a/hurd/libhello_example.mdwn b/hurd/libhello_example.mdwn index d5df45e3..9b4640e7 100644 --- a/hurd/libhello_example.mdwn +++ b/hurd/libhello_example.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Howto write a Hurd library diff --git a/hurd/libpager.mdwn b/hurd/libpager.mdwn index f59d9a74..91beddfc 100644 --- a/hurd/libpager.mdwn +++ b/hurd/libpager.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Mach's [[microkernel/mach/external_pager_mechanism]]. diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index b484accb..ab649ebc 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] `libstore` is more than just a thin layer between [[GNU_Mach|microkernel/mach/gnumach]] devices (`hd0` for example) and the diff --git a/hurd/logo.mdwn b/hurd/logo.mdwn index b39a1525..b1030e50 100644 --- a/hurd/logo.mdwn +++ b/hurd/logo.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The famous *Hurd Boxes* logo is available at . diff --git a/hurd/neighborhurd.mdwn b/hurd/neighborhurd.mdwn index 9228d6ca..3298e07a 100644 --- a/hurd/neighborhurd.mdwn +++ b/hurd/neighborhurd.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] It is possible to run multiple instances of the Hurd in parallel, on a single instance of Mach. Other than diff --git a/hurd/ng/history.mdwn b/hurd/ng/history.mdwn index 3d45192d..b6008eec 100644 --- a/hurd/ng/history.mdwn +++ b/hurd/ng/history.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The idea of using [[microkernel/L4]] as a [[microkernel]] for a [[Hurd_system|hurd]] was initially voiced in the [[Hurd_community|community]] diff --git a/hurd/ng/position_paper.mdwn b/hurd/ng/position_paper.mdwn index 901aae1a..3240a41d 100644 --- a/hurd/ng/position_paper.mdwn +++ b/hurd/ng/position_paper.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*Improving Usability via Access Decomposition and Policy diff --git a/hurd/running.mdwn b/hurd/running.mdwn index a79e6b60..162bc9ea 100644 --- a/hurd/running.mdwn +++ b/hurd/running.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * [[Distrib]] - Distributions based on the Hurd * [[microkernel/mach/gnumach/ports/Xen]] - In Xen diff --git a/hurd/running/debian/DebianAptOffline.mdwn b/hurd/running/debian/DebianAptOffline.mdwn index ad4fa9af..b8dc3cac 100644 --- a/hurd/running/debian/DebianAptOffline.mdwn +++ b/hurd/running/debian/DebianAptOffline.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2005, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2005, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # How to Installing Packages without a Network Connection from your Hurd Installation diff --git a/hurd/running/debian/faq/2_gib_partition_limit.mdwn b/hurd/running/debian/faq/2_gib_partition_limit.mdwn index 805282c7..aed47445 100644 --- a/hurd/running/debian/faq/2_gib_partition_limit.mdwn +++ b/hurd/running/debian/faq/2_gib_partition_limit.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="2 GiB Partition Limit"]] diff --git a/hurd/running/debian/faq/512_mib_ram_limit.mdwn b/hurd/running/debian/faq/512_mib_ram_limit.mdwn index a0239787..462ba73d 100644 --- a/hurd/running/debian/faq/512_mib_ram_limit.mdwn +++ b/hurd/running/debian/faq/512_mib_ram_limit.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="512 MiB RAM Limit"]] diff --git a/hurd/running/debian/faq/apt_umount.mdwn b/hurd/running/debian/faq/apt_umount.mdwn index f7070222..4a3b2dd2 100644 --- a/hurd/running/debian/faq/apt_umount.mdwn +++ b/hurd/running/debian/faq/apt_umount.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="apt: unmount cdroms"]] diff --git a/hurd/running/debian/faq/bad_hypermeta_data.mdwn b/hurd/running/debian/faq/bad_hypermeta_data.mdwn index dac6c52a..eedb461d 100644 --- a/hurd/running/debian/faq/bad_hypermeta_data.mdwn +++ b/hurd/running/debian/faq/bad_hypermeta_data.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] If you get the error `bad hypermeta data` when trying to mount an ext3 partition from GNU/Linux, that is usually because the file system has not been diff --git a/hurd/running/debian/faq/debugging_inside_glibc.mdwn b/hurd/running/debian/faq/debugging_inside_glibc.mdwn index 2f4ab8ce..997bfadb 100644 --- a/hurd/running/debian/faq/debugging_inside_glibc.mdwn +++ b/hurd/running/debian/faq/debugging_inside_glibc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] To get [[debugging]] information for glibc, you need to install the `libc0.3-dbg` package. At the place [[debugging/GDB]] looks for debugging diff --git a/hurd/running/debian/faq/debugging_translators.mdwn b/hurd/running/debian/faq/debugging_translators.mdwn index 54148da9..e87513c4 100644 --- a/hurd/running/debian/faq/debugging_translators.mdwn +++ b/hurd/running/debian/faq/debugging_translators.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] In order to [[debug|debugging]] translators and being able to step into glibc during it, you need the `hurd-dbg` and `libc0.3-dbg` packages installed. Then diff --git a/hurd/running/debian/faq/dev_random.mdwn b/hurd/running/debian/faq/dev_random.mdwn index 86cafa9b..0043699e 100644 --- a/hurd/running/debian/faq/dev_random.mdwn +++ b/hurd/running/debian/faq/dev_random.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="/dev/random"]] diff --git a/hurd/running/debian/faq/df.mdwn b/hurd/running/debian/faq/df.mdwn index 591e26c8..be0df444 100644 --- a/hurd/running/debian/faq/df.mdwn +++ b/hurd/running/debian/faq/df.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] There is no `/etc/mtab`, so just running `df` will yield an error. Pass `df` a path like `df /` or `df ./` to see the disk usage of that particular file diff --git a/hurd/running/debian/faq/free_memory.mdwn b/hurd/running/debian/faq/free_memory.mdwn index 2f2c982d..c5c28d2d 100644 --- a/hurd/running/debian/faq/free_memory.mdwn +++ b/hurd/running/debian/faq/free_memory.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Run `vmstat` to see memory and swap usage. diff --git a/hurd/running/debian/faq/hurd_console.mdwn b/hurd/running/debian/faq/hurd_console.mdwn index 6bf52f93..3d5a6035 100644 --- a/hurd/running/debian/faq/hurd_console.mdwn +++ b/hurd/running/debian/faq/hurd_console.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Edit `/etc/default/hurd-console` to configure the Hurd console and enable it on bootup. See [[console]] for further information about the Hurd console. diff --git a/hurd/running/debian/faq/kernel_logs.mdwn b/hurd/running/debian/faq/kernel_logs.mdwn index 22690ece..0962f3aa 100644 --- a/hurd/running/debian/faq/kernel_logs.mdwn +++ b/hurd/running/debian/faq/kernel_logs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The kernel logs are written to `/dev/klog`. Run `cat /dev/klog > foo` as root and hit `ctrl+c` after a few seconds to catch the logs. You can do this only diff --git a/hurd/running/debian/faq/other_repositories.mdwn b/hurd/running/debian/faq/other_repositories.mdwn index da9396e6..d824f779 100644 --- a/hurd/running/debian/faq/other_repositories.mdwn +++ b/hurd/running/debian/faq/other_repositories.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] If you want to use the `apt-get source` facility, make sure that `/etc/apt/sources.list` contains a line like diff --git a/hurd/running/debian/faq/ps_hangs.mdwn b/hurd/running/debian/faq/ps_hangs.mdwn index 7ae1c8c7..d2ffefeb 100644 --- a/hurd/running/debian/faq/ps_hangs.mdwn +++ b/hurd/running/debian/faq/ps_hangs.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] If `ps` hangs, try `ps -M` which might still work. diff --git a/hurd/running/debian/faq/reporting_bugs.mdwn b/hurd/running/debian/faq/reporting_bugs.mdwn index adaaa9ac..5abac5ce 100644 --- a/hurd/running/debian/faq/reporting_bugs.mdwn +++ b/hurd/running/debian/faq/reporting_bugs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Please try to reproduce bugs which are not obviously Hurd-specific on Debian GNU/Linux and then file them there. diff --git a/hurd/running/debian/faq/sshd.mdwn b/hurd/running/debian/faq/sshd.mdwn index 86eca791..3b98eddf 100644 --- a/hurd/running/debian/faq/sshd.mdwn +++ b/hurd/running/debian/faq/sshd.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] You need to disable `PriviledgeSeperation` in `/etc/ssh/sshd_options`. Also make sure you have `/dev/random`, see below. diff --git a/hurd/running/debian/faq/xserver-common.mdwn b/hurd/running/debian/faq/xserver-common.mdwn index 7464ed3b..5cf0ec11 100644 --- a/hurd/running/debian/faq/xserver-common.mdwn +++ b/hurd/running/debian/faq/xserver-common.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] You need to run `dpkg-reconfigure xserver-common` and select `Anybody` for starting X as there is no way to detect console users currently. diff --git a/hurd/running/debian/patch_submission.mdwn b/hurd/running/debian/patch_submission.mdwn index 6c1471a0..d15ae1a2 100644 --- a/hurd/running/debian/patch_submission.mdwn +++ b/hurd/running/debian/patch_submission.mdwn @@ -1,10 +1,12 @@ [[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] If you fixed a Debian package which FTBFS (fails to build from source), you should submit the patch so that all users can profit from your work. diff --git a/hurd/running/gnu/create_an_image.mdwn b/hurd/running/gnu/create_an_image.mdwn index c5fb8da3..42379f45 100644 --- a/hurd/running/gnu/create_an_image.mdwn +++ b/hurd/running/gnu/create_an_image.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Creating a bootable qemu image from a root filesystem and bootloader diff --git a/hurd/running/gnu/setup.mdwn b/hurd/running/gnu/setup.mdwn index ac978b38..6ff32630 100644 --- a/hurd/running/gnu/setup.mdwn +++ b/hurd/running/gnu/setup.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Setup is very easy (You need a GNU/Linux system to install GNU, we are developing an installer for GNU and if you want to help us join us on [[http://lists.gnu.org/mailman/listinfo/gnu-system-discuss][gnu-system-discuss]]), just follow these steps ... diff --git a/hurd/running/gnu/universal_package_manager.mdwn b/hurd/running/gnu/universal_package_manager.mdwn index 6f3c2f57..44e6b9ee 100644 --- a/hurd/running/gnu/universal_package_manager.mdwn +++ b/hurd/running/gnu/universal_package_manager.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Mission diff --git a/hurd/running/qemu/microsoft_windows.mdwn b/hurd/running/qemu/microsoft_windows.mdwn index d2b2651c..61dbd414 100644 --- a/hurd/running/qemu/microsoft_windows.mdwn +++ b/hurd/running/qemu/microsoft_windows.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Welcome, This document is for getting you started in a few minutes. diff --git a/hurd/running/qemu/networking.mdwn b/hurd/running/qemu/networking.mdwn index fc950118..8014e303 100644 --- a/hurd/running/qemu/networking.mdwn +++ b/hurd/running/qemu/networking.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## User mode network diff --git a/hurd/running/qemu/networking/sharing_files.mdwn b/hurd/running/qemu/networking/sharing_files.mdwn index f897bb68..c0bd99e2 100644 --- a/hurd/running/qemu/networking/sharing_files.mdwn +++ b/hurd/running/qemu/networking/sharing_files.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # SCP diff --git a/hurd/running/vmware.mdwn b/hurd/running/vmware.mdwn index 25d90a13..0f15939e 100644 --- a/hurd/running/vmware.mdwn +++ b/hurd/running/vmware.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Installation diff --git a/hurd/running/vmware/discussion.mdwn b/hurd/running/vmware/discussion.mdwn index 4fc4d673..65179cec 100644 --- a/hurd/running/vmware/discussion.mdwn +++ b/hurd/running/vmware/discussion.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] I find that this is all quite quick to try and that I can run through the ./native-install and reboot cycle twice OK. However, at that point the diff --git a/hurd/status.mdwn b/hurd/status.mdwn index 38bbbe67..771b1c50 100644 --- a/hurd/status.mdwn +++ b/hurd/status.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The last official release of the Hurd was 0.2. An eminent release is not planned. There are a number of diff --git a/hurd/subhurd.mdwn b/hurd/subhurd.mdwn index 8751b459..8816e312 100644 --- a/hurd/subhurd.mdwn +++ b/hurd/subhurd.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A sub-Hurd is like a [[neighbor_Hurd|neighborhurd]], however, makes use of some resources provided by another Hurd. For instance, backing store and the diff --git a/hurd/toolchain.mdwn b/hurd/toolchain.mdwn index b36809f5..e94029ba 100644 --- a/hurd/toolchain.mdwn +++ b/hurd/toolchain.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * [[binutils]] * [[GCC]] diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 2d60ecd3..afc4dd0f 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A translator is simply a normal program acting as an object server and participating in the Hurd's diff --git a/hurd/translator/cvsfs.mdwn b/hurd/translator/cvsfs.mdwn index 2f72b90e..0dd682bf 100644 --- a/hurd/translator/cvsfs.mdwn +++ b/hurd/translator/cvsfs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Setting up cvsfs on GNU/Hurd - A step by step process diff --git a/hurd/translator/emailfs.mdwn b/hurd/translator/emailfs.mdwn index dc05887c..04b58f33 100644 --- a/hurd/translator/emailfs.mdwn +++ b/hurd/translator/emailfs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # How cool it would be if the email becomes similar to snail mail? diff --git a/hurd/translator/examples.mdwn b/hurd/translator/examples.mdwn index dc4f9a81..b9f145e3 100644 --- a/hurd/translator/examples.mdwn +++ b/hurd/translator/examples.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Setting up translators - HowTo diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn index 9a5a9106..cfa8c997 100644 --- a/hurd/translator/ext2fs.mdwn +++ b/hurd/translator/ext2fs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The `ext2fs` translator from the upstream Hurd code base can only handle file systems with sizes of less than roughly 2 GiB. diff --git a/hurd/translator/fatfs.mdwn b/hurd/translator/fatfs.mdwn index d1a4b69c..b534b97e 100644 --- a/hurd/translator/fatfs.mdwn +++ b/hurd/translator/fatfs.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The current `fatfs` translator is read-only. diff --git a/hurd/translator/magic.mdwn b/hurd/translator/magic.mdwn index d8539d6a..f6d0494b 100644 --- a/hurd/translator/magic.mdwn +++ b/hurd/translator/magic.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The magic translator provides `/dev/fd`. diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn index 2790c601..acd7b855 100644 --- a/hurd/translator/pfinet.mdwn +++ b/hurd/translator/pfinet.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Notes about [[IPv6]]. diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 739fd47c..37fabcb7 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[Stefan_Siegl|stesie]] has added IPv6 support to the pfinet [[translator]]. This was [Savannah task #5470](http://savannah.gnu.org/task/?5470). diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn index 58834ef1..49d70e1b 100644 --- a/hurd/translator/storeio.mdwn +++ b/hurd/translator/storeio.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] `storeio` is a *translator for devices and other stores*. diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index 6215ca1a..6d10c163 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] `tmpfs` is a file system server for temporary data storage without using a real (permanent) [[backing_store]]. diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn index 312c3342..2392bd61 100644 --- a/hurd/translator/tmpfs/notes_bing.mdwn +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] 1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index 8a73d9bf..90636b61 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -1,11 +1,13 @@ -[[meta copyright="Copyright © 2005, 2006, 2007 +[[meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] hde: what's the status on tmpfs? Broke diff --git a/hurd/translator/writing/example.mdwn b/hurd/translator/writing/example.mdwn index 83ac7da1..170812ad 100644 --- a/hurd/translator/writing/example.mdwn +++ b/hurd/translator/writing/example.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Data User-Server Translator Example diff --git a/hurd/virtual_file_system.mdwn b/hurd/virtual_file_system.mdwn index f3c2faaf..2902a26e 100644 --- a/hurd/virtual_file_system.mdwn +++ b/hurd/virtual_file_system.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Path names are resolved using a distributed protocol. No single entity is responsible for the resolution of diff --git a/hurd/virtualization.mdwn b/hurd/virtualization.mdwn index 1fff45ac..dfd6c375 100644 --- a/hurd/virtualization.mdwn +++ b/hurd/virtualization.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Olaf Buddenhagen has written a text about how [[/virtualization]] is applicable within Hurd systems: diff --git a/ibac.mdwn b/ibac.mdwn index 3e860a0c..5247c297 100644 --- a/ibac.mdwn +++ b/ibac.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] IBAC stands for identity-based access control. In this access control scheme, access to a resource diff --git a/idl.mdwn b/idl.mdwn index 67c69830..60e3fea6 100644 --- a/idl.mdwn +++ b/idl.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] An IDL is an interface definition language. The most well-known is CORBA. An IDL compiler takes a specification and generates stubs diff --git a/index/discussion.mdwn b/index/discussion.mdwn index c9a7517c..0e90244b 100644 --- a/index/discussion.mdwn +++ b/index/discussion.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # TODO diff --git a/ipc.mdwn b/ipc.mdwn index c1e68a98..0e8d674a 100644 --- a/ipc.mdwn +++ b/ipc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] IPC stands for interprocess communication. diff --git a/isolation.mdwn b/isolation.mdwn index 0e3e41c0..f43ae3d6 100644 --- a/isolation.mdwn +++ b/isolation.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] When two [[principal]]s cannot affect each other, they are said to be isolated from one another. Strictly speaking, if two principals diff --git a/liedtke.mdwn b/liedtke.mdwn index 95dacdcb..ca55eaf3 100644 --- a/liedtke.mdwn +++ b/liedtke.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Liedtke is the father of [[microkernel/L4]]. diff --git a/mailing_lists/bug-hurd.mdwn b/mailing_lists/bug-hurd.mdwn index 12ac500c..11d4dfd1 100644 --- a/mailing_lists/bug-hurd.mdwn +++ b/mailing_lists/bug-hurd.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#bug-hurd]] diff --git a/mailing_lists/debian-hurd.mdwn b/mailing_lists/debian-hurd.mdwn index 84d8721d..4df9e593 100644 --- a/mailing_lists/debian-hurd.mdwn +++ b/mailing_lists/debian-hurd.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#debian-hurd]] diff --git a/mailing_lists/gnu-system-discuss.mdwn b/mailing_lists/gnu-system-discuss.mdwn index e8adb31f..30f22eab 100644 --- a/mailing_lists/gnu-system-discuss.mdwn +++ b/mailing_lists/gnu-system-discuss.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#gnu-system-discuss]] diff --git a/mailing_lists/help-hurd.mdwn b/mailing_lists/help-hurd.mdwn index b424637d..ee7bc5e1 100644 --- a/mailing_lists/help-hurd.mdwn +++ b/mailing_lists/help-hurd.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#help-hurd]] diff --git a/mailing_lists/hurd-devel-readers.mdwn b/mailing_lists/hurd-devel-readers.mdwn index 4dd74732..bb2b2fb3 100644 --- a/mailing_lists/hurd-devel-readers.mdwn +++ b/mailing_lists/hurd-devel-readers.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#hurd-devel-readers]] diff --git a/mailing_lists/hurd-devel.mdwn b/mailing_lists/hurd-devel.mdwn index 0ff0bc6a..63299691 100644 --- a/mailing_lists/hurd-devel.mdwn +++ b/mailing_lists/hurd-devel.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#hurd-devel]] diff --git a/mailing_lists/l4-hurd.mdwn b/mailing_lists/l4-hurd.mdwn index 63b9aece..1c326586 100644 --- a/mailing_lists/l4-hurd.mdwn +++ b/mailing_lists/l4-hurd.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#l4-hurd]] diff --git a/mailing_lists/unmoderated.mdwn b/mailing_lists/unmoderated.mdwn index ac7bced7..14a407b1 100644 --- a/mailing_lists/unmoderated.mdwn +++ b/mailing_lists/unmoderated.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] In fact the lists *are* moderated for users that post from not-subscribed email addresses. However, this moderation should be transparent to the poster, you diff --git a/mailing_lists/web-hurd.mdwn b/mailing_lists/web-hurd.mdwn index 7139db59..7a1abeb2 100644 --- a/mailing_lists/web-hurd.mdwn +++ b/mailing_lists/web-hurd.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists#web-hurd]] diff --git a/mailinglists.mdwn b/mailinglists.mdwn index 8d040d84..709b1771 100644 --- a/mailinglists.mdwn +++ b/mailinglists.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=mailing_lists]] diff --git a/mechanism.mdwn b/mechanism.mdwn index 959ac003..6a96c656 100644 --- a/mechanism.mdwn +++ b/mechanism.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The Collaborative International Dictionary of English v.0.48 defines a mechanism as: diff --git a/microkernel.mdwn b/microkernel.mdwn index 39e31433..2670c78a 100644 --- a/microkernel.mdwn +++ b/microkernel.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[Liedtke]] explains in [On Microkernel Construction](http://l4ka.org/publications/paper.php?docid=642) that a microkernel attempts to minimize the mandatory part of the operating diff --git a/microkernel/for_beginners.mdwn b/microkernel/for_beginners.mdwn index bf9920e3..aed436e8 100644 --- a/microkernel/for_beginners.mdwn +++ b/microkernel/for_beginners.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Concepts diff --git a/microkernel/mach/documentation.mdwn b/microkernel/mach/documentation.mdwn index 6c72d951..4dc4837b 100644 --- a/microkernel/mach/documentation.mdwn +++ b/microkernel/mach/documentation.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - OSF's [Kernel Interface](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps) - OSF's [Kernel Principles](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps) diff --git a/microkernel/mach/external_pager_mechanism.mdwn b/microkernel/mach/external_pager_mechanism.mdwn index 09a9919b..7ed1ca57 100644 --- a/microkernel/mach/external_pager_mechanism.mdwn +++ b/microkernel/mach/external_pager_mechanism.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2002, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2002, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Mach provides a so-called external pager [[mechanism]]. This mechanism serves to separate *managing memory* from *managing diff --git a/microkernel/mach/gnumach.mdwn b/microkernel/mach/gnumach.mdwn index 30073a16..8da22938 100644 --- a/microkernel/mach/gnumach.mdwn +++ b/microkernel/mach/gnumach.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] GNU Mach is currently used by the GNU [[Hurd]]. diff --git a/microkernel/mach/gnumach/boot_trace.mdwn b/microkernel/mach/gnumach/boot_trace.mdwn index 668a5977..a08384f0 100644 --- a/microkernel/mach/gnumach/boot_trace.mdwn +++ b/microkernel/mach/gnumach/boot_trace.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] `if NCPUS > 1` stuff is not being considered so far. diff --git a/microkernel/mach/gnumach/building/example.mdwn b/microkernel/mach/gnumach/building/example.mdwn index bb22dbff..6da05c5b 100644 --- a/microkernel/mach/gnumach/building/example.mdwn +++ b/microkernel/mach/gnumach/building/example.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] ## Compiling GNU Mach microkernel diff --git a/microkernel/mach/gnumach/debugging.mdwn b/microkernel/mach/gnumach/debugging.mdwn index 0f550dcd..fa2a9d42 100644 --- a/microkernel/mach/gnumach/debugging.mdwn +++ b/microkernel/mach/gnumach/debugging.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Mach has a built-in kernel debugger. [Manual](http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html). diff --git a/microkernel/mach/gnumach/hardware_compatibility_list.mdwn b/microkernel/mach/gnumach/hardware_compatibility_list.mdwn index 4daae309..09882467 100644 --- a/microkernel/mach/gnumach/hardware_compatibility_list.mdwn +++ b/microkernel/mach/gnumach/hardware_compatibility_list.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # CPU Architecture diff --git a/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn b/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn index 42d558f3..8c67e3e0 100644 --- a/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn +++ b/microkernel/mach/gnumach/hardwarecompatibilitylist.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta redir=hardware_compatibility_list]] diff --git a/microkernel/mach/gnumach/ports.mdwn b/microkernel/mach/gnumach/ports.mdwn index 6bed775f..35b5412a 100644 --- a/microkernel/mach/gnumach/ports.mdwn +++ b/microkernel/mach/gnumach/ports.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * [PowerPC](http://www.pjbruin.dds.nl/hurd/). Is not in a usable state. * Alpha. Was once started, but isn't in a usable state either. diff --git a/microkernel/mach/gnumach/projects.mdwn b/microkernel/mach/gnumach/projects.mdwn index d186a6de..2b2c4678 100644 --- a/microkernel/mach/gnumach/projects.mdwn +++ b/microkernel/mach/gnumach/projects.mdwn @@ -1,11 +1,13 @@ -[[meta copyright="Copyright © 2005, 2006, 2007 +[[meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] This page is a place to keep track of ideas about things that may be improved in GNU Mach, so that it'll evolve to a reliable microkernel for The Hurd, both diff --git a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn index 67e341af..875bb8cd 100644 --- a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn +++ b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn @@ -1,11 +1,13 @@ -[[meta copyright="Copyright © 2005, 2006, 2007 +[[meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] # Restructure the tree in a sane way diff --git a/microkernel/mach/ipc.mdwn b/microkernel/mach/ipc.mdwn index abe536a1..889fac2f 100644 --- a/microkernel/mach/ipc.mdwn +++ b/microkernel/mach/ipc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[General_information|/ipc]] about IPC. diff --git a/microkernel/mach/ipc/sequence_numbering.mdwn b/microkernel/mach/ipc/sequence_numbering.mdwn index 602280f7..7c1f68e4 100644 --- a/microkernel/mach/ipc/sequence_numbering.mdwn +++ b/microkernel/mach/ipc/sequence_numbering.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Mach's [[IPC]] mechanism allows for getting access to a message's sequence number. diff --git a/microkernel/mach/port.mdwn b/microkernel/mach/port.mdwn index df4420ab..77b1372f 100644 --- a/microkernel/mach/port.mdwn +++ b/microkernel/mach/port.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Mach ports are [[capabilities|capability]]. diff --git a/microkernel/mach/rpc.mdwn b/microkernel/mach/rpc.mdwn index 9db99e74..ecef86ee 100644 --- a/microkernel/mach/rpc.mdwn +++ b/microkernel/mach/rpc.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[General_information|/rpc]] about RPC. diff --git a/naming_context.mdwn b/naming_context.mdwn index 14a9d9a0..9c701e71 100644 --- a/naming_context.mdwn +++ b/naming_context.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Names are bindings to objects, however, to find an object given a name, the relation must be looked up in a diff --git a/persistency.mdwn b/persistency.mdwn index 1df99bc2..5bd4f524 100644 --- a/persistency.mdwn +++ b/persistency.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A persistent object is an object that survives reboot. On Unix, files and directories are persistent but diff --git a/policy.mdwn b/policy.mdwn index 6111e077..f0a414f2 100644 --- a/policy.mdwn +++ b/policy.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A policy is a rule that define what may or may not happens, not how it happens. The latter is referred to as [[mechanism]]. diff --git a/principal.mdwn b/principal.mdwn index 891c3224..897c0436 100644 --- a/principal.mdwn +++ b/principal.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] A principal is an accountable entity. A principal may be a user. On some computer systems, users are represented by their diff --git a/rpc.mdwn b/rpc.mdwn index 0878ac52..e60254d1 100644 --- a/rpc.mdwn +++ b/rpc.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] RPC stands for remote procedure call. diff --git a/rules.mdwn b/rules.mdwn index 6f504532..d1a544e0 100644 --- a/rules.mdwn +++ b/rules.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * [[Source_repositories]] * [[Savannah_group]] diff --git a/rules/savannah_group.mdwn b/rules/savannah_group.mdwn index 06d98fe6..317ec49f 100644 --- a/rules/savannah_group.mdwn +++ b/rules/savannah_group.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2006, 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] diff --git a/rules/source_repositories.mdwn b/rules/source_repositories.mdwn index e38644b4..2ecc6fe6 100644 --- a/rules/source_repositories.mdwn +++ b/rules/source_repositories.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] CVS repositories on Savannah, see . diff --git a/security.mdwn b/security.mdwn index 0871aab4..1bdc8c34 100644 --- a/security.mdwn +++ b/security.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] Alan Karp [identifies][1] 11 security questions: diff --git a/sfi.mdwn b/sfi.mdwn index 8384b55c..1a987290 100644 --- a/sfi.mdwn +++ b/sfi.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] SFI stands for Software-Based Fault Isolation. SFI is an [[isolation]] technique described by Wahbe et al. in their 1993 paper [Effcient diff --git a/sidebar.mdwn b/sidebar.mdwn index 3a190f2b..fc7c4dc8 100644 --- a/sidebar.mdwn +++ b/sidebar.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[img hurd/logo/boxes-redrawn.png link=/hurd/logo]] diff --git a/tcb.mdwn b/tcb.mdwn index 7eba1fc1..d321a954 100644 --- a/tcb.mdwn +++ b/tcb.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] TCB stands for trusted computed base. Unqualified, the trusted computing base referrers to the set of components programs diff --git a/trust.mdwn b/trust.mdwn index 341e394b..46c762f0 100644 --- a/trust.mdwn +++ b/trust.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] The word trust is used in a number of contexts with different technical meanings. Sometimes it is used to confuse, for instance trusted computing is rarely about diff --git a/user/tschwinge.mdwn b/user/tschwinge.mdwn index 6e07f880..b72f26f5 100644 --- a/user/tschwinge.mdwn +++ b/user/tschwinge.mdwn @@ -1,10 +1,12 @@ [[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] [[meta title="Thomas Schwinge"]] diff --git a/user/vincentvikram.mdwn b/user/vincentvikram.mdwn index 5ef1979c..0b323729 100644 --- a/user/vincentvikram.mdwn +++ b/user/vincentvikram.mdwn @@ -1,10 +1,12 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] * Name: Vikram Vincent * Email: vincentvikram@swatantra.org diff --git a/virtualization.mdwn b/virtualization.mdwn index f099b3d3..b6fb0eb5 100644 --- a/virtualization.mdwn +++ b/virtualization.mdwn @@ -1,9 +1,11 @@ -[[meta copyright="Copyright © 2007 Free Software Foundation, Inc."]] -[[meta license="Permission is granted to copy, distribute and/or modify this +[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]] +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] See [[wikipedia Virtualization]]. -- cgit v1.2.3 From 4d2edbc3f94d2f9615e7520033b1bcc28406288f Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 27 Mar 2008 18:00:08 +0100 Subject: hurd/translator/mboxfs: New stub page. hurd/translator: Link to it. --- hurd/translator.mdwn | 1 + hurd/translator/mboxfs.mdwn | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 hurd/translator/mboxfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index afc4dd0f..7f3029ce 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -46,6 +46,7 @@ See some [[examples]] about how to use translators. * [[ext2fs]] * [[fatfs]] * [[magic]] +* [[mboxfs]] * ... diff --git a/hurd/translator/mboxfs.mdwn b/hurd/translator/mboxfs.mdwn new file mode 100644 index 00000000..be959d0b --- /dev/null +++ b/hurd/translator/mboxfs.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + -- cgit v1.2.3 From d1d81b04024d451cee3dd33b312aa18c454cedc9 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 27 Mar 2008 18:01:28 +0100 Subject: hurd/translator/xmlfs: New stub page. hurd/translator: Link to it. --- hurd/translator.mdwn | 1 + hurd/translator/xmlfs.mdwn | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 hurd/translator/xmlfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 7f3029ce..d5e725ad 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -47,6 +47,7 @@ See some [[examples]] about how to use translators. * [[fatfs]] * [[magic]] * [[mboxfs]] +* [[xmlfs]] * ... diff --git a/hurd/translator/xmlfs.mdwn b/hurd/translator/xmlfs.mdwn new file mode 100644 index 00000000..cff15f59 --- /dev/null +++ b/hurd/translator/xmlfs.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + -- cgit v1.2.3 From f6f6b12d9c1cfe75826100ba04ea333db5a3da98 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 27 Mar 2008 18:03:08 +0100 Subject: hurd/translator/procfs: New stub page. hurd/translator: Link to it. --- hurd/translator.mdwn | 1 + hurd/translator/procfs.mdwn | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 hurd/translator/procfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index d5e725ad..bf30b452 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -57,6 +57,7 @@ See some [[examples]] about how to use translators. * [[emailfs]] -- email as a filesystem * [[cvsfs]] * [[tmpfs]] +* [[procfs]] * ... diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn new file mode 100644 index 00000000..e53d0774 --- /dev/null +++ b/hurd/translator/procfs.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + -- cgit v1.2.3 From c4a1972dce8c76340291daaec6db940efa80da08 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 27 Mar 2008 19:05:08 +0100 Subject: hurd/translator/unionfs: New stub page. hurd/translator: Link to it. --- hurd/translator.mdwn | 1 + hurd/translator/unionfs.mdwn | 11 +++++++++++ 2 files changed, 12 insertions(+) create mode 100644 hurd/translator/unionfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index bf30b452..3f763013 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -47,6 +47,7 @@ See some [[examples]] about how to use translators. * [[fatfs]] * [[magic]] * [[mboxfs]] +* [[unionfs]] * [[xmlfs]] * ... diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn new file mode 100644 index 00000000..478fc3db --- /dev/null +++ b/hurd/translator/unionfs.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + -- cgit v1.2.3 From 2704ec8f11a5dbb4d692535b971ee8540076c2b1 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 27 Mar 2008 19:40:47 +0100 Subject: hurd/translator/stowfs: New page, redirecting to unionfs#stowfs. hurd/translator/unionfs (stowfs): New stub. --- hurd/translator/stowfs.mdwn | 11 +++++++++++ hurd/translator/unionfs.mdwn | 6 ++++++ 2 files changed, 17 insertions(+) create mode 100644 hurd/translator/stowfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/stowfs.mdwn b/hurd/translator/stowfs.mdwn new file mode 100644 index 00000000..022e3d5e --- /dev/null +++ b/hurd/translator/stowfs.mdwn @@ -0,0 +1,11 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +[[meta redir=unionfs#stowfs]] diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 478fc3db..7eee5245 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -9,3 +9,9 @@ is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + + +# `stowfs` + +... is a special mode of `unionfs`. -- cgit v1.2.3 From 223adc426b9f0b761746a6febe212fd50356bca2 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 29 Mar 2008 23:31:16 +0100 Subject: community/gsoc/procfs/* -> hurd/translator/procfs/* --- community/gsoc/procfs/htop.mdwn | 271 ------------------------------------ community/gsoc/procfs/killall.mdwn | 172 ----------------------- community/gsoc/procfs/procps.mdwn | 69 --------- community/gsoc/procfs/top.mdwn | 121 ---------------- community/gsoc/project_ideas.mdwn | 3 +- hurd/translator/procfs.mdwn | 8 ++ hurd/translator/procfs/htop.mdwn | 271 ++++++++++++++++++++++++++++++++++++ hurd/translator/procfs/killall.mdwn | 172 +++++++++++++++++++++++ hurd/translator/procfs/procps.mdwn | 69 +++++++++ hurd/translator/procfs/top.mdwn | 121 ++++++++++++++++ 10 files changed, 642 insertions(+), 635 deletions(-) delete mode 100644 community/gsoc/procfs/htop.mdwn delete mode 100644 community/gsoc/procfs/killall.mdwn delete mode 100644 community/gsoc/procfs/procps.mdwn delete mode 100644 community/gsoc/procfs/top.mdwn create mode 100644 hurd/translator/procfs/htop.mdwn create mode 100644 hurd/translator/procfs/killall.mdwn create mode 100644 hurd/translator/procfs/procps.mdwn create mode 100644 hurd/translator/procfs/top.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/procfs/htop.mdwn b/community/gsoc/procfs/htop.mdwn deleted file mode 100644 index 7a0dc416..00000000 --- a/community/gsoc/procfs/htop.mdwn +++ /dev/null @@ -1,271 +0,0 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/meminfo", O_RDONLY)         = 3
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
-open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1/status", O_RDONLY)        = 4
-open("/proc/1/statm", O_RDONLY)         = 4
-open("/proc/1/stat", O_RDONLY)          = 4
-open("/proc/1/cmdline", O_RDONLY)       = 4
-open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/2/status", O_RDONLY)        = 4
-open("/proc/2/statm", O_RDONLY)         = 4
-open("/proc/2/stat", O_RDONLY)          = 4
-open("/proc/2/cmdline", O_RDONLY)       = 4
-open("/proc/3/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3/status", O_RDONLY)        = 4
-open("/proc/3/statm", O_RDONLY)         = 4
-open("/proc/3/stat", O_RDONLY)          = 4
-open("/proc/3/cmdline", O_RDONLY)       = 4
-open("/proc/4/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4/status", O_RDONLY)        = 4
-open("/proc/4/statm", O_RDONLY)         = 4
-open("/proc/4/stat", O_RDONLY)          = 4
-open("/proc/4/cmdline", O_RDONLY)       = 4
-open("/proc/5/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/5/status", O_RDONLY)        = 4
-open("/proc/5/statm", O_RDONLY)         = 4
-open("/proc/5/stat", O_RDONLY)          = 4
-open("/proc/5/cmdline", O_RDONLY)       = 4
-open("/proc/6/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6/status", O_RDONLY)        = 4
-open("/proc/6/statm", O_RDONLY)         = 4
-open("/proc/6/stat", O_RDONLY)          = 4
-open("/proc/6/cmdline", O_RDONLY)       = 4
-open("/proc/7/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/7/status", O_RDONLY)        = 4
-open("/proc/7/statm", O_RDONLY)         = 4
-open("/proc/7/stat", O_RDONLY)          = 4
-open("/proc/7/cmdline", O_RDONLY)       = 4
-open("/proc/8/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/8/status", O_RDONLY)        = 4
-open("/proc/8/statm", O_RDONLY)         = 4
-open("/proc/8/stat", O_RDONLY)          = 4
-open("/proc/8/cmdline", O_RDONLY)       = 4
-open("/proc/9/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/9/status", O_RDONLY)        = 4
-open("/proc/9/statm", O_RDONLY)         = 4
-open("/proc/9/stat", O_RDONLY)          = 4
-open("/proc/9/cmdline", O_RDONLY)       = 4
-open("/proc/10/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/10/status", O_RDONLY)       = 4
-open("/proc/10/statm", O_RDONLY)        = 4
-open("/proc/10/stat", O_RDONLY)         = 4
-open("/proc/10/cmdline", O_RDONLY)      = 4
-open("/proc/11/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/11/status", O_RDONLY)       = 4
-open("/proc/11/statm", O_RDONLY)        = 4
-open("/proc/11/stat", O_RDONLY)         = 4
-open("/proc/11/cmdline", O_RDONLY)      = 4
-open("/proc/12/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/12/status", O_RDONLY)       = 4
-open("/proc/12/statm", O_RDONLY)        = 4
-open("/proc/12/stat", O_RDONLY)         = 4
-open("/proc/12/cmdline", O_RDONLY)      = 4
-open("/proc/13/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/13/status", O_RDONLY)       = 4
-open("/proc/13/statm", O_RDONLY)        = 4
-open("/proc/13/stat", O_RDONLY)         = 4
-open("/proc/13/cmdline", O_RDONLY)      = 4
-open("/proc/14/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/14/status", O_RDONLY)       = 4
-open("/proc/14/statm", O_RDONLY)        = 4
-open("/proc/14/stat", O_RDONLY)         = 4
-open("/proc/14/cmdline", O_RDONLY)      = 4
-open("/proc/15/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/15/status", O_RDONLY)       = 4
-open("/proc/15/statm", O_RDONLY)        = 4
-open("/proc/15/stat", O_RDONLY)         = 4
-open("/proc/15/cmdline", O_RDONLY)      = 4
-open("/proc/16/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/16/status", O_RDONLY)       = 4
-open("/proc/16/statm", O_RDONLY)        = 4
-open("/proc/16/stat", O_RDONLY)         = 4
-open("/proc/16/cmdline", O_RDONLY)      = 4
-open("/proc/25/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/25/status", O_RDONLY)       = 4
-open("/proc/25/statm", O_RDONLY)        = 4
-open("/proc/25/stat", O_RDONLY)         = 4
-open("/proc/25/cmdline", O_RDONLY)      = 4
-open("/proc/26/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/26/status", O_RDONLY)       = 4
-open("/proc/26/statm", O_RDONLY)        = 4
-open("/proc/26/stat", O_RDONLY)         = 4
-open("/proc/26/cmdline", O_RDONLY)      = 4
-open("/proc/32/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/32/status", O_RDONLY)       = 4
-open("/proc/32/statm", O_RDONLY)        = 4
-open("/proc/32/stat", O_RDONLY)         = 4
-open("/proc/32/cmdline", O_RDONLY)      = 4
-open("/proc/33/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/33/status", O_RDONLY)       = 4
-open("/proc/33/statm", O_RDONLY)        = 4
-open("/proc/33/stat", O_RDONLY)         = 4
-open("/proc/33/cmdline", O_RDONLY)      = 4
-open("/proc/1001/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1001/status", O_RDONLY)     = 4
-open("/proc/1001/statm", O_RDONLY)      = 4
-open("/proc/1001/stat", O_RDONLY)       = 4
-open("/proc/1001/cmdline", O_RDONLY)    = 4
-open("/proc/1050/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1050/status", O_RDONLY)     = 4
-open("/proc/1050/statm", O_RDONLY)      = 4
-open("/proc/1050/stat", O_RDONLY)       = 4
-open("/proc/1050/cmdline", O_RDONLY)    = 4
-open("/proc/1056/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1056/status", O_RDONLY)     = 4
-open("/proc/1056/statm", O_RDONLY)      = 4
-open("/proc/1056/stat", O_RDONLY)       = 4
-open("/proc/1056/cmdline", O_RDONLY)    = 4
-open("/proc/1077/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1077/status", O_RDONLY)     = 4
-open("/proc/1077/statm", O_RDONLY)      = 4
-open("/proc/1077/stat", O_RDONLY)       = 4
-open("/proc/1077/cmdline", O_RDONLY)    = 4
-open("/proc/1094/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1094/status", O_RDONLY)     = 4
-open("/proc/1094/statm", O_RDONLY)      = 4
-open("/proc/1094/stat", O_RDONLY)       = 4
-open("/proc/1094/cmdline", O_RDONLY)    = 4
-open("/proc/3321/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3321/status", O_RDONLY)     = 4
-open("/proc/3321/statm", O_RDONLY)      = 4
-open("/proc/3321/stat", O_RDONLY)       = 4
-open("/proc/3321/cmdline", O_RDONLY)    = 4
-open("/proc/3473/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3473/status", O_RDONLY)     = 4
-open("/proc/3473/statm", O_RDONLY)      = 4
-open("/proc/3473/stat", O_RDONLY)       = 4
-open("/proc/3473/cmdline", O_RDONLY)    = 4
-open("/proc/4127/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4127/status", O_RDONLY)     = 4
-open("/proc/4127/statm", O_RDONLY)      = 4
-open("/proc/4127/stat", O_RDONLY)       = 4
-open("/proc/4127/cmdline", O_RDONLY)    = 4
-open("/proc/4370/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4370/status", O_RDONLY)     = 4
-open("/proc/4370/statm", O_RDONLY)      = 4
-open("/proc/4370/stat", O_RDONLY)       = 4
-open("/proc/4370/cmdline", O_RDONLY)    = 4
-open("/proc/4419/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4419/status", O_RDONLY)     = 4
-open("/proc/4419/statm", O_RDONLY)      = 4
-open("/proc/4419/stat", O_RDONLY)       = 4
-open("/proc/4419/cmdline", O_RDONLY)    = 4
-open("/proc/4950/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4950/status", O_RDONLY)     = 4
-open("/proc/4950/statm", O_RDONLY)      = 4
-open("/proc/4950/stat", O_RDONLY)       = 4
-open("/proc/4950/cmdline", O_RDONLY)    = 4
-open("/proc/6675/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6675/status", O_RDONLY)     = 4
-open("/proc/6675/statm", O_RDONLY)      = 4
-open("/proc/6675/stat", O_RDONLY)       = 4
-open("/proc/6675/cmdline", O_RDONLY)    = 4
-open("/proc/6701/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6701/status", O_RDONLY)     = 4
-open("/proc/6701/statm", O_RDONLY)      = 4
-open("/proc/6701/stat", O_RDONLY)       = 4
-open("/proc/6701/cmdline", O_RDONLY)    = 4
-open("/proc/6711/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6711/status", O_RDONLY)     = 4
-open("/proc/6711/statm", O_RDONLY)      = 4
-open("/proc/6711/stat", O_RDONLY)       = 4
-open("/proc/6711/cmdline", O_RDONLY)    = 4
-open("/proc/6727/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6727/status", O_RDONLY)     = 4
-open("/proc/6727/statm", O_RDONLY)      = 4
-open("/proc/6727/stat", O_RDONLY)       = 4
-open("/proc/6727/cmdline", O_RDONLY)    = 4
-open("/proc/6735/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6735/status", O_RDONLY)     = 4
-open("/proc/6735/statm", O_RDONLY)      = 4
-open("/proc/6735/stat", O_RDONLY)       = 4
-open("/proc/6735/cmdline", O_RDONLY)    = 4
-open("/proc/6736/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6736/status", O_RDONLY)     = 4
-open("/proc/6736/statm", O_RDONLY)      = 4
-open("/proc/6736/stat", O_RDONLY)       = 4
-open("/proc/6736/cmdline", O_RDONLY)    = 4
-open("/proc/6748/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6748/status", O_RDONLY)     = 4
-open("/proc/6748/statm", O_RDONLY)      = 4
-open("/proc/6748/stat", O_RDONLY)       = 4
-open("/proc/6748/cmdline", O_RDONLY)    = 4
-open("/proc/6750/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6750/status", O_RDONLY)     = 4
-open("/proc/6750/statm", O_RDONLY)      = 4
-open("/proc/6750/stat", O_RDONLY)       = 4
-open("/proc/6750/cmdline", O_RDONLY)    = 4
-open("/proc/6751/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6751/status", O_RDONLY)     = 4
-open("/proc/6751/statm", O_RDONLY)      = 4
-open("/proc/6751/stat", O_RDONLY)       = 4
-open("/proc/6751/cmdline", O_RDONLY)    = 4
-open("/proc/6758/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6758/status", O_RDONLY)     = 4
-open("/proc/6758/statm", O_RDONLY)      = 4
-open("/proc/6758/stat", O_RDONLY)       = 4
-open("/proc/6758/cmdline", O_RDONLY)    = 4
-open("/proc/6768/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6768/status", O_RDONLY)     = 4
-open("/proc/6768/statm", O_RDONLY)      = 4
-open("/proc/6768/stat", O_RDONLY)       = 4
-open("/proc/6768/cmdline", O_RDONLY)    = 4
-open("/proc/6776/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6776/status", O_RDONLY)     = 4
-open("/proc/6776/statm", O_RDONLY)      = 4
-open("/proc/6776/stat", O_RDONLY)       = 4
-open("/proc/6776/cmdline", O_RDONLY)    = 4
-open("/proc/6780/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6780/status", O_RDONLY)     = 4
-open("/proc/6780/statm", O_RDONLY)      = 4
-open("/proc/6780/stat", O_RDONLY)       = 4
-open("/proc/6780/cmdline", O_RDONLY)    = 4
-open("/proc/6782/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6782/status", O_RDONLY)     = 4
-open("/proc/6782/statm", O_RDONLY)      = 4
-open("/proc/6782/stat", O_RDONLY)       = 4
-open("/proc/6782/cmdline", O_RDONLY)    = 4
-open("/proc/6783/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6783/status", O_RDONLY)     = 4
-open("/proc/6783/statm", O_RDONLY)      = 4
-open("/proc/6783/stat", O_RDONLY)       = 4
-open("/proc/6783/cmdline", O_RDONLY)    = 4
-open("/proc/6784/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6784/status", O_RDONLY)     = 4
-open("/proc/6784/statm", O_RDONLY)      = 4
-open("/proc/6784/stat", O_RDONLY)       = 4
-open("/proc/6784/cmdline", O_RDONLY)    = 4
-open("/proc/6785/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6785/status", O_RDONLY)     = 4
-open("/proc/6785/statm", O_RDONLY)      = 4
-open("/proc/6785/stat", O_RDONLY)       = 4
-open("/proc/6785/cmdline", O_RDONLY)    = 4
-open("/proc/6806/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6806/status", O_RDONLY)     = 4
-open("/proc/6806/statm", O_RDONLY)      = 4
-open("/proc/6806/stat", O_RDONLY)       = 4
-open("/proc/6806/cmdline", O_RDONLY)    = 4
-open("/proc/6903/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6903/status", O_RDONLY)     = 4
-open("/proc/6903/statm", O_RDONLY)      = 4
-open("/proc/6903/stat", O_RDONLY)       = 4
-open("/proc/6903/cmdline", O_RDONLY)    = 4
-open("/proc/6904/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6904/status", O_RDONLY)     = 4
-open("/proc/6904/statm", O_RDONLY)      = 4
-open("/proc/6904/stat", O_RDONLY)       = 4
-open("/proc/6904/cmdline", O_RDONLY)    = 4
-
diff --git a/community/gsoc/procfs/killall.mdwn b/community/gsoc/procfs/killall.mdwn deleted file mode 100644 index 588ba1c8..00000000 --- a/community/gsoc/procfs/killall.mdwn +++ /dev/null @@ -1,172 +0,0 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/self/stat", O_RDONLY)       = 3
-open("/proc/uptime", O_RDONLY)          = 3
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
-open("/proc/meminfo", O_RDONLY)         = 4
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
-open("/proc/1/stat", O_RDONLY)          = 6
-open("/proc/1/status", O_RDONLY)        = 6
-open("/proc/1/cmdline", O_RDONLY)       = 6
-open("/proc/2/stat", O_RDONLY)          = 6
-open("/proc/2/status", O_RDONLY)        = 6
-open("/proc/2/cmdline", O_RDONLY)       = 6
-open("/proc/3/stat", O_RDONLY)          = 6
-open("/proc/3/status", O_RDONLY)        = 6
-open("/proc/3/cmdline", O_RDONLY)       = 6
-open("/proc/4/stat", O_RDONLY)          = 6
-open("/proc/4/status", O_RDONLY)        = 6
-open("/proc/4/cmdline", O_RDONLY)       = 6
-open("/proc/5/stat", O_RDONLY)          = 6
-open("/proc/5/status", O_RDONLY)        = 6
-open("/proc/5/cmdline", O_RDONLY)       = 6
-open("/proc/6/stat", O_RDONLY)          = 6
-open("/proc/6/status", O_RDONLY)        = 6
-open("/proc/6/cmdline", O_RDONLY)       = 6
-open("/proc/7/stat", O_RDONLY)          = 6
-open("/proc/7/status", O_RDONLY)        = 6
-open("/proc/7/cmdline", O_RDONLY)       = 6
-open("/proc/8/stat", O_RDONLY)          = 6
-open("/proc/8/status", O_RDONLY)        = 6
-open("/proc/8/cmdline", O_RDONLY)       = 6
-open("/proc/9/stat", O_RDONLY)          = 6
-open("/proc/9/status", O_RDONLY)        = 6
-open("/proc/9/cmdline", O_RDONLY)       = 6
-open("/proc/10/stat", O_RDONLY)         = 6
-open("/proc/10/status", O_RDONLY)       = 6
-open("/proc/10/cmdline", O_RDONLY)      = 6
-open("/proc/11/stat", O_RDONLY)         = 6
-open("/proc/11/status", O_RDONLY)       = 6
-open("/proc/11/cmdline", O_RDONLY)      = 6
-open("/proc/12/stat", O_RDONLY)         = 6
-open("/proc/12/status", O_RDONLY)       = 6
-open("/proc/12/cmdline", O_RDONLY)      = 6
-open("/proc/13/stat", O_RDONLY)         = 6
-open("/proc/13/status", O_RDONLY)       = 6
-open("/proc/13/cmdline", O_RDONLY)      = 6
-open("/proc/14/stat", O_RDONLY)         = 6
-open("/proc/14/status", O_RDONLY)       = 6
-open("/proc/14/cmdline", O_RDONLY)      = 6
-open("/proc/15/stat", O_RDONLY)         = 6
-open("/proc/15/status", O_RDONLY)       = 6
-open("/proc/15/cmdline", O_RDONLY)      = 6
-open("/proc/16/stat", O_RDONLY)         = 6
-open("/proc/16/status", O_RDONLY)       = 6
-open("/proc/16/cmdline", O_RDONLY)      = 6
-open("/proc/25/stat", O_RDONLY)         = 6
-open("/proc/25/status", O_RDONLY)       = 6
-open("/proc/25/cmdline", O_RDONLY)      = 6
-open("/proc/26/stat", O_RDONLY)         = 6
-open("/proc/26/status", O_RDONLY)       = 6
-open("/proc/26/cmdline", O_RDONLY)      = 6
-open("/proc/32/stat", O_RDONLY)         = 6
-open("/proc/32/status", O_RDONLY)       = 6
-open("/proc/32/cmdline", O_RDONLY)      = 6
-open("/proc/33/stat", O_RDONLY)         = 6
-open("/proc/33/status", O_RDONLY)       = 6
-open("/proc/33/cmdline", O_RDONLY)      = 6
-open("/proc/1001/stat", O_RDONLY)       = 6
-open("/proc/1001/status", O_RDONLY)     = 6
-open("/proc/1001/cmdline", O_RDONLY)    = 6
-open("/proc/1050/stat", O_RDONLY)       = 6
-open("/proc/1050/status", O_RDONLY)     = 6
-open("/proc/1050/cmdline", O_RDONLY)    = 6
-open("/proc/1056/stat", O_RDONLY)       = 6
-open("/proc/1056/status", O_RDONLY)     = 6
-open("/proc/1056/cmdline", O_RDONLY)    = 6
-open("/proc/1077/stat", O_RDONLY)       = 6
-open("/proc/1077/status", O_RDONLY)     = 6
-open("/proc/1077/cmdline", O_RDONLY)    = 6
-open("/proc/1094/stat", O_RDONLY)       = 6
-open("/proc/1094/status", O_RDONLY)     = 6
-open("/proc/1094/cmdline", O_RDONLY)    = 6
-open("/proc/3321/stat", O_RDONLY)       = 6
-open("/proc/3321/status", O_RDONLY)     = 6
-open("/proc/3321/cmdline", O_RDONLY)    = 6
-open("/proc/3473/stat", O_RDONLY)       = 6
-open("/proc/3473/status", O_RDONLY)     = 6
-open("/proc/3473/cmdline", O_RDONLY)    = 6
-open("/proc/4127/stat", O_RDONLY)       = 6
-open("/proc/4127/status", O_RDONLY)     = 6
-open("/proc/4127/cmdline", O_RDONLY)    = 6
-open("/proc/4370/stat", O_RDONLY)       = 6
-open("/proc/4370/status", O_RDONLY)     = 6
-open("/proc/4370/cmdline", O_RDONLY)    = 6
-open("/proc/4419/stat", O_RDONLY)       = 6
-open("/proc/4419/status", O_RDONLY)     = 6
-open("/proc/4419/cmdline", O_RDONLY)    = 6
-open("/proc/4950/stat", O_RDONLY)       = 6
-open("/proc/4950/status", O_RDONLY)     = 6
-open("/proc/4950/cmdline", O_RDONLY)    = 6
-open("/proc/6675/stat", O_RDONLY)       = 6
-open("/proc/6675/status", O_RDONLY)     = 6
-open("/proc/6675/cmdline", O_RDONLY)    = 6
-open("/proc/6701/stat", O_RDONLY)       = 6
-open("/proc/6701/status", O_RDONLY)     = 6
-open("/proc/6701/cmdline", O_RDONLY)    = 6
-open("/proc/6711/stat", O_RDONLY)       = 6
-open("/proc/6711/status", O_RDONLY)     = 6
-open("/proc/6711/cmdline", O_RDONLY)    = 6
-open("/proc/6727/stat", O_RDONLY)       = 6
-open("/proc/6727/status", O_RDONLY)     = 6
-open("/proc/6727/cmdline", O_RDONLY)    = 6
-open("/proc/6735/stat", O_RDONLY)       = 6
-open("/proc/6735/status", O_RDONLY)     = 6
-open("/proc/6735/cmdline", O_RDONLY)    = 6
-open("/proc/6736/stat", O_RDONLY)       = 6
-open("/proc/6736/status", O_RDONLY)     = 6
-open("/proc/6736/cmdline", O_RDONLY)    = 6
-open("/proc/6748/stat", O_RDONLY)       = 6
-open("/proc/6748/status", O_RDONLY)     = 6
-open("/proc/6748/cmdline", O_RDONLY)    = 6
-open("/proc/6750/stat", O_RDONLY)       = 6
-open("/proc/6750/status", O_RDONLY)     = 6
-open("/proc/6750/cmdline", O_RDONLY)    = 6
-open("/proc/6751/stat", O_RDONLY)       = 6
-open("/proc/6751/status", O_RDONLY)     = 6
-open("/proc/6751/cmdline", O_RDONLY)    = 6
-open("/proc/6758/stat", O_RDONLY)       = 6
-open("/proc/6758/status", O_RDONLY)     = 6
-open("/proc/6758/cmdline", O_RDONLY)    = 6
-open("/proc/6768/stat", O_RDONLY)       = 6
-open("/proc/6768/status", O_RDONLY)     = 6
-open("/proc/6768/cmdline", O_RDONLY)    = 6
-open("/proc/6776/stat", O_RDONLY)       = 6
-open("/proc/6776/status", O_RDONLY)     = 6
-open("/proc/6776/cmdline", O_RDONLY)    = 6
-open("/proc/tty/drivers", O_RDONLY)     = 6
-open("/proc/6780/stat", O_RDONLY)       = 6
-open("/proc/6780/status", O_RDONLY)     = 6
-open("/proc/6780/cmdline", O_RDONLY)    = 6
-open("/proc/6782/stat", O_RDONLY)       = 6
-open("/proc/6782/status", O_RDONLY)     = 6
-open("/proc/6782/cmdline", O_RDONLY)    = 6
-open("/proc/6783/stat", O_RDONLY)       = 6
-open("/proc/6783/status", O_RDONLY)     = 6
-open("/proc/6783/cmdline", O_RDONLY)    = 6
-open("/proc/6784/stat", O_RDONLY)       = 6
-open("/proc/6784/status", O_RDONLY)     = 6
-open("/proc/6784/cmdline", O_RDONLY)    = 6
-open("/proc/6785/stat", O_RDONLY)       = 6
-open("/proc/6785/status", O_RDONLY)     = 6
-open("/proc/6785/cmdline", O_RDONLY)    = 6
-open("/proc/6806/stat", O_RDONLY)       = 6
-open("/proc/6806/status", O_RDONLY)     = 6
-open("/proc/6806/cmdline", O_RDONLY)    = 6
-open("/proc/6873/stat", O_RDONLY)       = 6
-open("/proc/6873/status", O_RDONLY)     = 6
-open("/proc/6873/cmdline", O_RDONLY)    = 6
-open("/proc/6874/stat", O_RDONLY)       = 6
-open("/proc/6874/status", O_RDONLY)     = 6
-open("/proc/6874/cmdline", O_RDONLY)    = 6
-
diff --git a/community/gsoc/procfs/procps.mdwn b/community/gsoc/procfs/procps.mdwn deleted file mode 100644 index 60b061a9..00000000 --- a/community/gsoc/procfs/procps.mdwn +++ /dev/null @@ -1,69 +0,0 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -
-open("/proc/stat", O_RDONLY)            = 3
-
-open("/proc/self/stat", O_RDONLY)       = 3
-
-open("/proc/uptime", O_RDONLY)          = 3
-
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
-
-open("/proc/meminfo", O_RDONLY)         = 4
-
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
-
-open("/proc/1/stat", O_RDONLY)          = 6
-
-open("/proc/1/status", O_RDONLY)        = 6
-
-open("/proc/1/cmdline", O_RDONLY)       = 6
-
-open("/proc/2/stat", O_RDONLY)          = 6
-
-open("/proc/2/status", O_RDONLY)        = 6
-
-open("/proc/2/cmdline", O_RDONLY)       = 6
-
-open("/proc/3/stat", O_RDONLY)          = 6
-
-open("/proc/3/status", O_RDONLY)        = 6
-
-open("/proc/3/cmdline", O_RDONLY)       = 6
-
-(...)
-
-open("/proc/6758/stat", O_RDONLY)       = 6
-
-open("/proc/6758/status", O_RDONLY)     = 6
-
-open("/proc/6758/cmdline", O_RDONLY)    = 6
-
-open("/proc/6768/stat", O_RDONLY)       = 6
-
-open("/proc/6768/status", O_RDONLY)     = 6
-
-open("/proc/6768/cmdline", O_RDONLY)    = 6
-
-open("/proc/6776/stat", O_RDONLY)       = 6
-
-open("/proc/6776/status", O_RDONLY)     = 6
-
-open("/proc/6776/cmdline", O_RDONLY)    = 6
-
-open("/proc/tty/drivers", O_RDONLY)     = 6
-
-open("/proc/6780/stat", O_RDONLY)       = 6
-
-open("/proc/6780/status", O_RDONLY)     = 6
-
-(...)
-
diff --git a/community/gsoc/procfs/top.mdwn b/community/gsoc/procfs/top.mdwn deleted file mode 100644 index b2c9547b..00000000 --- a/community/gsoc/procfs/top.mdwn +++ /dev/null @@ -1,121 +0,0 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 3
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
-open("/proc/1/stat", O_RDONLY)          = 4
-open("/proc/1/statm", O_RDONLY)         = 4
-open("/proc/2/stat", O_RDONLY)          = 4
-open("/proc/2/statm", O_RDONLY)         = 4
-open("/proc/3/stat", O_RDONLY)          = 4
-open("/proc/3/statm", O_RDONLY)         = 4
-open("/proc/4/stat", O_RDONLY)          = 4
-open("/proc/4/statm", O_RDONLY)         = 4
-open("/proc/5/stat", O_RDONLY)          = 4
-open("/proc/5/statm", O_RDONLY)         = 4
-open("/proc/6/stat", O_RDONLY)          = 4
-open("/proc/6/statm", O_RDONLY)         = 4
-open("/proc/7/stat", O_RDONLY)          = 4
-open("/proc/7/statm", O_RDONLY)         = 4
-open("/proc/8/stat", O_RDONLY)          = 4
-open("/proc/8/statm", O_RDONLY)         = 4
-open("/proc/9/stat", O_RDONLY)          = 4
-open("/proc/9/statm", O_RDONLY)         = 4
-open("/proc/10/stat", O_RDONLY)         = 4
-open("/proc/10/statm", O_RDONLY)        = 4
-open("/proc/11/stat", O_RDONLY)         = 4
-open("/proc/11/statm", O_RDONLY)        = 4
-open("/proc/12/stat", O_RDONLY)         = 4
-open("/proc/12/statm", O_RDONLY)        = 4
-open("/proc/13/stat", O_RDONLY)         = 4
-open("/proc/13/statm", O_RDONLY)        = 4
-open("/proc/14/stat", O_RDONLY)         = 4
-open("/proc/14/statm", O_RDONLY)        = 4
-open("/proc/15/stat", O_RDONLY)         = 4
-open("/proc/15/statm", O_RDONLY)        = 4
-open("/proc/16/stat", O_RDONLY)         = 4
-open("/proc/16/statm", O_RDONLY)        = 4
-open("/proc/25/stat", O_RDONLY)         = 4
-open("/proc/25/statm", O_RDONLY)        = 4
-open("/proc/26/stat", O_RDONLY)         = 4
-open("/proc/26/statm", O_RDONLY)        = 4
-open("/proc/32/stat", O_RDONLY)         = 4
-open("/proc/32/statm", O_RDONLY)        = 4
-open("/proc/33/stat", O_RDONLY)         = 4
-open("/proc/33/statm", O_RDONLY)        = 4
-open("/proc/1001/stat", O_RDONLY)       = 4
-open("/proc/1001/statm", O_RDONLY)      = 4
-open("/proc/1050/stat", O_RDONLY)       = 4
-open("/proc/1050/statm", O_RDONLY)      = 4
-open("/proc/1056/stat", O_RDONLY)       = 4
-open("/proc/1056/statm", O_RDONLY)      = 4
-open("/proc/1077/stat", O_RDONLY)       = 4
-open("/proc/1077/statm", O_RDONLY)      = 4
-open("/proc/1094/stat", O_RDONLY)       = 4
-open("/proc/1094/statm", O_RDONLY)      = 4
-open("/proc/3321/stat", O_RDONLY)       = 4
-open("/proc/3321/statm", O_RDONLY)      = 4
-open("/proc/3379/stat", O_RDONLY)       = 4
-open("/proc/3379/statm", O_RDONLY)      = 4
-open("/proc/4119/stat", O_RDONLY)       = 4
-open("/proc/4119/statm", O_RDONLY)      = 4
-open("/proc/4380/stat", O_RDONLY)       = 4
-open("/proc/4380/statm", O_RDONLY)      = 4
-open("/proc/4468/stat", O_RDONLY)       = 4
-open("/proc/4468/statm", O_RDONLY)      = 4
-open("/proc/4950/stat", O_RDONLY)       = 4
-open("/proc/4950/statm", O_RDONLY)      = 4
-open("/proc/6675/stat", O_RDONLY)       = 4
-open("/proc/6675/statm", O_RDONLY)      = 4
-open("/proc/6701/stat", O_RDONLY)       = 4
-open("/proc/6701/statm", O_RDONLY)      = 4
-open("/proc/6711/stat", O_RDONLY)       = 4
-open("/proc/6711/statm", O_RDONLY)      = 4
-open("/proc/6727/stat", O_RDONLY)       = 4
-open("/proc/6727/statm", O_RDONLY)      = 4
-open("/proc/6735/stat", O_RDONLY)       = 4
-open("/proc/6735/statm", O_RDONLY)      = 4
-open("/proc/6736/stat", O_RDONLY)       = 4
-open("/proc/6736/statm", O_RDONLY)      = 4
-open("/proc/6748/stat", O_RDONLY)       = 4
-open("/proc/6748/statm", O_RDONLY)      = 4
-open("/proc/6750/stat", O_RDONLY)       = 4
-open("/proc/6750/statm", O_RDONLY)      = 4
-open("/proc/6751/stat", O_RDONLY)       = 4
-open("/proc/6751/statm", O_RDONLY)      = 4
-open("/proc/6758/stat", O_RDONLY)       = 4
-open("/proc/6758/statm", O_RDONLY)      = 4
-open("/proc/6768/stat", O_RDONLY)       = 4
-open("/proc/6768/statm", O_RDONLY)      = 4
-open("/proc/6776/stat", O_RDONLY)       = 4
-open("/proc/6776/statm", O_RDONLY)      = 4
-open("/proc/6780/stat", O_RDONLY)       = 4
-open("/proc/6780/statm", O_RDONLY)      = 4
-open("/proc/6782/stat", O_RDONLY)       = 4
-open("/proc/6782/statm", O_RDONLY)      = 4
-open("/proc/6783/stat", O_RDONLY)       = 4
-open("/proc/6783/statm", O_RDONLY)      = 4
-open("/proc/6784/stat", O_RDONLY)       = 4
-open("/proc/6784/statm", O_RDONLY)      = 4
-open("/proc/6787/stat", O_RDONLY)       = 4
-open("/proc/6787/statm", O_RDONLY)      = 4
-open("/proc/6806/stat", O_RDONLY)       = 4
-open("/proc/6806/statm", O_RDONLY)      = 4
-open("/proc/6823/stat", O_RDONLY)       = 4
-open("/proc/6823/statm", O_RDONLY)      = 4
-open("/proc/6824/stat", O_RDONLY)       = 4
-open("/proc/6824/statm", O_RDONLY)      = 4
-open("/proc/6881/stat", O_RDONLY)       = 4
-open("/proc/6881/statm", O_RDONLY)      = 4
-open("/proc/6882/stat", O_RDONLY)       = 4
-open("/proc/6882/statm", O_RDONLY)      = 4
-
diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index 0c04354d..037e894a 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -214,8 +214,7 @@ locking works on the Hurd. Only general programming skills are required. Although there is no standard (POSIX or other) for the layout of the `/proc` pseudo-filesystem, it turned out a very useful facility in GNU/Linux and other -systems, and many tools concerned with process management use it. ([[`ps`|procfs/procps]], [[`top`|procfs/top]], -[[`htop`|procfs/htop]], `gtop`, [[`killall`|procfs/killall]], `pkill`, ...) +systems, and many tools concerned with process management use it. Instead of porting all these tools to use [[hurd/libps]] (Hurd's official method for accessing process information), they could be made to run out of the box, by diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index e53d0774..eb07a8f6 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -9,3 +9,11 @@ is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] + + * [[`ps`|procps]] + * [[`top`|top]] + * [[`htop`|htop]] + * `gtop` + * [[`killall`|killall]] + * `pkill` + * ... diff --git a/hurd/translator/procfs/htop.mdwn b/hurd/translator/procfs/htop.mdwn new file mode 100644 index 00000000..7a0dc416 --- /dev/null +++ b/hurd/translator/procfs/htop.mdwn @@ -0,0 +1,271 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +
+open("/proc/stat", O_RDONLY)            = 3
+open("/proc/meminfo", O_RDONLY)         = 3
+open("/proc/stat", O_RDONLY)            = 3
+open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
+open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1/status", O_RDONLY)        = 4
+open("/proc/1/statm", O_RDONLY)         = 4
+open("/proc/1/stat", O_RDONLY)          = 4
+open("/proc/1/cmdline", O_RDONLY)       = 4
+open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/2/status", O_RDONLY)        = 4
+open("/proc/2/statm", O_RDONLY)         = 4
+open("/proc/2/stat", O_RDONLY)          = 4
+open("/proc/2/cmdline", O_RDONLY)       = 4
+open("/proc/3/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/3/status", O_RDONLY)        = 4
+open("/proc/3/statm", O_RDONLY)         = 4
+open("/proc/3/stat", O_RDONLY)          = 4
+open("/proc/3/cmdline", O_RDONLY)       = 4
+open("/proc/4/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/4/status", O_RDONLY)        = 4
+open("/proc/4/statm", O_RDONLY)         = 4
+open("/proc/4/stat", O_RDONLY)          = 4
+open("/proc/4/cmdline", O_RDONLY)       = 4
+open("/proc/5/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/5/status", O_RDONLY)        = 4
+open("/proc/5/statm", O_RDONLY)         = 4
+open("/proc/5/stat", O_RDONLY)          = 4
+open("/proc/5/cmdline", O_RDONLY)       = 4
+open("/proc/6/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6/status", O_RDONLY)        = 4
+open("/proc/6/statm", O_RDONLY)         = 4
+open("/proc/6/stat", O_RDONLY)          = 4
+open("/proc/6/cmdline", O_RDONLY)       = 4
+open("/proc/7/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/7/status", O_RDONLY)        = 4
+open("/proc/7/statm", O_RDONLY)         = 4
+open("/proc/7/stat", O_RDONLY)          = 4
+open("/proc/7/cmdline", O_RDONLY)       = 4
+open("/proc/8/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/8/status", O_RDONLY)        = 4
+open("/proc/8/statm", O_RDONLY)         = 4
+open("/proc/8/stat", O_RDONLY)          = 4
+open("/proc/8/cmdline", O_RDONLY)       = 4
+open("/proc/9/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/9/status", O_RDONLY)        = 4
+open("/proc/9/statm", O_RDONLY)         = 4
+open("/proc/9/stat", O_RDONLY)          = 4
+open("/proc/9/cmdline", O_RDONLY)       = 4
+open("/proc/10/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/10/status", O_RDONLY)       = 4
+open("/proc/10/statm", O_RDONLY)        = 4
+open("/proc/10/stat", O_RDONLY)         = 4
+open("/proc/10/cmdline", O_RDONLY)      = 4
+open("/proc/11/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/11/status", O_RDONLY)       = 4
+open("/proc/11/statm", O_RDONLY)        = 4
+open("/proc/11/stat", O_RDONLY)         = 4
+open("/proc/11/cmdline", O_RDONLY)      = 4
+open("/proc/12/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/12/status", O_RDONLY)       = 4
+open("/proc/12/statm", O_RDONLY)        = 4
+open("/proc/12/stat", O_RDONLY)         = 4
+open("/proc/12/cmdline", O_RDONLY)      = 4
+open("/proc/13/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/13/status", O_RDONLY)       = 4
+open("/proc/13/statm", O_RDONLY)        = 4
+open("/proc/13/stat", O_RDONLY)         = 4
+open("/proc/13/cmdline", O_RDONLY)      = 4
+open("/proc/14/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/14/status", O_RDONLY)       = 4
+open("/proc/14/statm", O_RDONLY)        = 4
+open("/proc/14/stat", O_RDONLY)         = 4
+open("/proc/14/cmdline", O_RDONLY)      = 4
+open("/proc/15/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/15/status", O_RDONLY)       = 4
+open("/proc/15/statm", O_RDONLY)        = 4
+open("/proc/15/stat", O_RDONLY)         = 4
+open("/proc/15/cmdline", O_RDONLY)      = 4
+open("/proc/16/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/16/status", O_RDONLY)       = 4
+open("/proc/16/statm", O_RDONLY)        = 4
+open("/proc/16/stat", O_RDONLY)         = 4
+open("/proc/16/cmdline", O_RDONLY)      = 4
+open("/proc/25/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/25/status", O_RDONLY)       = 4
+open("/proc/25/statm", O_RDONLY)        = 4
+open("/proc/25/stat", O_RDONLY)         = 4
+open("/proc/25/cmdline", O_RDONLY)      = 4
+open("/proc/26/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/26/status", O_RDONLY)       = 4
+open("/proc/26/statm", O_RDONLY)        = 4
+open("/proc/26/stat", O_RDONLY)         = 4
+open("/proc/26/cmdline", O_RDONLY)      = 4
+open("/proc/32/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/32/status", O_RDONLY)       = 4
+open("/proc/32/statm", O_RDONLY)        = 4
+open("/proc/32/stat", O_RDONLY)         = 4
+open("/proc/32/cmdline", O_RDONLY)      = 4
+open("/proc/33/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/33/status", O_RDONLY)       = 4
+open("/proc/33/statm", O_RDONLY)        = 4
+open("/proc/33/stat", O_RDONLY)         = 4
+open("/proc/33/cmdline", O_RDONLY)      = 4
+open("/proc/1001/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1001/status", O_RDONLY)     = 4
+open("/proc/1001/statm", O_RDONLY)      = 4
+open("/proc/1001/stat", O_RDONLY)       = 4
+open("/proc/1001/cmdline", O_RDONLY)    = 4
+open("/proc/1050/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1050/status", O_RDONLY)     = 4
+open("/proc/1050/statm", O_RDONLY)      = 4
+open("/proc/1050/stat", O_RDONLY)       = 4
+open("/proc/1050/cmdline", O_RDONLY)    = 4
+open("/proc/1056/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1056/status", O_RDONLY)     = 4
+open("/proc/1056/statm", O_RDONLY)      = 4
+open("/proc/1056/stat", O_RDONLY)       = 4
+open("/proc/1056/cmdline", O_RDONLY)    = 4
+open("/proc/1077/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1077/status", O_RDONLY)     = 4
+open("/proc/1077/statm", O_RDONLY)      = 4
+open("/proc/1077/stat", O_RDONLY)       = 4
+open("/proc/1077/cmdline", O_RDONLY)    = 4
+open("/proc/1094/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/1094/status", O_RDONLY)     = 4
+open("/proc/1094/statm", O_RDONLY)      = 4
+open("/proc/1094/stat", O_RDONLY)       = 4
+open("/proc/1094/cmdline", O_RDONLY)    = 4
+open("/proc/3321/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/3321/status", O_RDONLY)     = 4
+open("/proc/3321/statm", O_RDONLY)      = 4
+open("/proc/3321/stat", O_RDONLY)       = 4
+open("/proc/3321/cmdline", O_RDONLY)    = 4
+open("/proc/3473/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/3473/status", O_RDONLY)     = 4
+open("/proc/3473/statm", O_RDONLY)      = 4
+open("/proc/3473/stat", O_RDONLY)       = 4
+open("/proc/3473/cmdline", O_RDONLY)    = 4
+open("/proc/4127/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/4127/status", O_RDONLY)     = 4
+open("/proc/4127/statm", O_RDONLY)      = 4
+open("/proc/4127/stat", O_RDONLY)       = 4
+open("/proc/4127/cmdline", O_RDONLY)    = 4
+open("/proc/4370/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/4370/status", O_RDONLY)     = 4
+open("/proc/4370/statm", O_RDONLY)      = 4
+open("/proc/4370/stat", O_RDONLY)       = 4
+open("/proc/4370/cmdline", O_RDONLY)    = 4
+open("/proc/4419/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/4419/status", O_RDONLY)     = 4
+open("/proc/4419/statm", O_RDONLY)      = 4
+open("/proc/4419/stat", O_RDONLY)       = 4
+open("/proc/4419/cmdline", O_RDONLY)    = 4
+open("/proc/4950/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/4950/status", O_RDONLY)     = 4
+open("/proc/4950/statm", O_RDONLY)      = 4
+open("/proc/4950/stat", O_RDONLY)       = 4
+open("/proc/4950/cmdline", O_RDONLY)    = 4
+open("/proc/6675/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6675/status", O_RDONLY)     = 4
+open("/proc/6675/statm", O_RDONLY)      = 4
+open("/proc/6675/stat", O_RDONLY)       = 4
+open("/proc/6675/cmdline", O_RDONLY)    = 4
+open("/proc/6701/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6701/status", O_RDONLY)     = 4
+open("/proc/6701/statm", O_RDONLY)      = 4
+open("/proc/6701/stat", O_RDONLY)       = 4
+open("/proc/6701/cmdline", O_RDONLY)    = 4
+open("/proc/6711/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6711/status", O_RDONLY)     = 4
+open("/proc/6711/statm", O_RDONLY)      = 4
+open("/proc/6711/stat", O_RDONLY)       = 4
+open("/proc/6711/cmdline", O_RDONLY)    = 4
+open("/proc/6727/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6727/status", O_RDONLY)     = 4
+open("/proc/6727/statm", O_RDONLY)      = 4
+open("/proc/6727/stat", O_RDONLY)       = 4
+open("/proc/6727/cmdline", O_RDONLY)    = 4
+open("/proc/6735/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6735/status", O_RDONLY)     = 4
+open("/proc/6735/statm", O_RDONLY)      = 4
+open("/proc/6735/stat", O_RDONLY)       = 4
+open("/proc/6735/cmdline", O_RDONLY)    = 4
+open("/proc/6736/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6736/status", O_RDONLY)     = 4
+open("/proc/6736/statm", O_RDONLY)      = 4
+open("/proc/6736/stat", O_RDONLY)       = 4
+open("/proc/6736/cmdline", O_RDONLY)    = 4
+open("/proc/6748/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6748/status", O_RDONLY)     = 4
+open("/proc/6748/statm", O_RDONLY)      = 4
+open("/proc/6748/stat", O_RDONLY)       = 4
+open("/proc/6748/cmdline", O_RDONLY)    = 4
+open("/proc/6750/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6750/status", O_RDONLY)     = 4
+open("/proc/6750/statm", O_RDONLY)      = 4
+open("/proc/6750/stat", O_RDONLY)       = 4
+open("/proc/6750/cmdline", O_RDONLY)    = 4
+open("/proc/6751/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6751/status", O_RDONLY)     = 4
+open("/proc/6751/statm", O_RDONLY)      = 4
+open("/proc/6751/stat", O_RDONLY)       = 4
+open("/proc/6751/cmdline", O_RDONLY)    = 4
+open("/proc/6758/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6758/status", O_RDONLY)     = 4
+open("/proc/6758/statm", O_RDONLY)      = 4
+open("/proc/6758/stat", O_RDONLY)       = 4
+open("/proc/6758/cmdline", O_RDONLY)    = 4
+open("/proc/6768/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6768/status", O_RDONLY)     = 4
+open("/proc/6768/statm", O_RDONLY)      = 4
+open("/proc/6768/stat", O_RDONLY)       = 4
+open("/proc/6768/cmdline", O_RDONLY)    = 4
+open("/proc/6776/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6776/status", O_RDONLY)     = 4
+open("/proc/6776/statm", O_RDONLY)      = 4
+open("/proc/6776/stat", O_RDONLY)       = 4
+open("/proc/6776/cmdline", O_RDONLY)    = 4
+open("/proc/6780/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6780/status", O_RDONLY)     = 4
+open("/proc/6780/statm", O_RDONLY)      = 4
+open("/proc/6780/stat", O_RDONLY)       = 4
+open("/proc/6780/cmdline", O_RDONLY)    = 4
+open("/proc/6782/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6782/status", O_RDONLY)     = 4
+open("/proc/6782/statm", O_RDONLY)      = 4
+open("/proc/6782/stat", O_RDONLY)       = 4
+open("/proc/6782/cmdline", O_RDONLY)    = 4
+open("/proc/6783/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6783/status", O_RDONLY)     = 4
+open("/proc/6783/statm", O_RDONLY)      = 4
+open("/proc/6783/stat", O_RDONLY)       = 4
+open("/proc/6783/cmdline", O_RDONLY)    = 4
+open("/proc/6784/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6784/status", O_RDONLY)     = 4
+open("/proc/6784/statm", O_RDONLY)      = 4
+open("/proc/6784/stat", O_RDONLY)       = 4
+open("/proc/6784/cmdline", O_RDONLY)    = 4
+open("/proc/6785/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6785/status", O_RDONLY)     = 4
+open("/proc/6785/statm", O_RDONLY)      = 4
+open("/proc/6785/stat", O_RDONLY)       = 4
+open("/proc/6785/cmdline", O_RDONLY)    = 4
+open("/proc/6806/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6806/status", O_RDONLY)     = 4
+open("/proc/6806/statm", O_RDONLY)      = 4
+open("/proc/6806/stat", O_RDONLY)       = 4
+open("/proc/6806/cmdline", O_RDONLY)    = 4
+open("/proc/6903/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6903/status", O_RDONLY)     = 4
+open("/proc/6903/statm", O_RDONLY)      = 4
+open("/proc/6903/stat", O_RDONLY)       = 4
+open("/proc/6903/cmdline", O_RDONLY)    = 4
+open("/proc/6904/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
+open("/proc/6904/status", O_RDONLY)     = 4
+open("/proc/6904/statm", O_RDONLY)      = 4
+open("/proc/6904/stat", O_RDONLY)       = 4
+open("/proc/6904/cmdline", O_RDONLY)    = 4
+
diff --git a/hurd/translator/procfs/killall.mdwn b/hurd/translator/procfs/killall.mdwn new file mode 100644 index 00000000..588ba1c8 --- /dev/null +++ b/hurd/translator/procfs/killall.mdwn @@ -0,0 +1,172 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +
+open("/proc/stat", O_RDONLY)            = 3
+open("/proc/self/stat", O_RDONLY)       = 3
+open("/proc/uptime", O_RDONLY)          = 3
+open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
+open("/proc/meminfo", O_RDONLY)         = 4
+open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
+open("/proc/1/stat", O_RDONLY)          = 6
+open("/proc/1/status", O_RDONLY)        = 6
+open("/proc/1/cmdline", O_RDONLY)       = 6
+open("/proc/2/stat", O_RDONLY)          = 6
+open("/proc/2/status", O_RDONLY)        = 6
+open("/proc/2/cmdline", O_RDONLY)       = 6
+open("/proc/3/stat", O_RDONLY)          = 6
+open("/proc/3/status", O_RDONLY)        = 6
+open("/proc/3/cmdline", O_RDONLY)       = 6
+open("/proc/4/stat", O_RDONLY)          = 6
+open("/proc/4/status", O_RDONLY)        = 6
+open("/proc/4/cmdline", O_RDONLY)       = 6
+open("/proc/5/stat", O_RDONLY)          = 6
+open("/proc/5/status", O_RDONLY)        = 6
+open("/proc/5/cmdline", O_RDONLY)       = 6
+open("/proc/6/stat", O_RDONLY)          = 6
+open("/proc/6/status", O_RDONLY)        = 6
+open("/proc/6/cmdline", O_RDONLY)       = 6
+open("/proc/7/stat", O_RDONLY)          = 6
+open("/proc/7/status", O_RDONLY)        = 6
+open("/proc/7/cmdline", O_RDONLY)       = 6
+open("/proc/8/stat", O_RDONLY)          = 6
+open("/proc/8/status", O_RDONLY)        = 6
+open("/proc/8/cmdline", O_RDONLY)       = 6
+open("/proc/9/stat", O_RDONLY)          = 6
+open("/proc/9/status", O_RDONLY)        = 6
+open("/proc/9/cmdline", O_RDONLY)       = 6
+open("/proc/10/stat", O_RDONLY)         = 6
+open("/proc/10/status", O_RDONLY)       = 6
+open("/proc/10/cmdline", O_RDONLY)      = 6
+open("/proc/11/stat", O_RDONLY)         = 6
+open("/proc/11/status", O_RDONLY)       = 6
+open("/proc/11/cmdline", O_RDONLY)      = 6
+open("/proc/12/stat", O_RDONLY)         = 6
+open("/proc/12/status", O_RDONLY)       = 6
+open("/proc/12/cmdline", O_RDONLY)      = 6
+open("/proc/13/stat", O_RDONLY)         = 6
+open("/proc/13/status", O_RDONLY)       = 6
+open("/proc/13/cmdline", O_RDONLY)      = 6
+open("/proc/14/stat", O_RDONLY)         = 6
+open("/proc/14/status", O_RDONLY)       = 6
+open("/proc/14/cmdline", O_RDONLY)      = 6
+open("/proc/15/stat", O_RDONLY)         = 6
+open("/proc/15/status", O_RDONLY)       = 6
+open("/proc/15/cmdline", O_RDONLY)      = 6
+open("/proc/16/stat", O_RDONLY)         = 6
+open("/proc/16/status", O_RDONLY)       = 6
+open("/proc/16/cmdline", O_RDONLY)      = 6
+open("/proc/25/stat", O_RDONLY)         = 6
+open("/proc/25/status", O_RDONLY)       = 6
+open("/proc/25/cmdline", O_RDONLY)      = 6
+open("/proc/26/stat", O_RDONLY)         = 6
+open("/proc/26/status", O_RDONLY)       = 6
+open("/proc/26/cmdline", O_RDONLY)      = 6
+open("/proc/32/stat", O_RDONLY)         = 6
+open("/proc/32/status", O_RDONLY)       = 6
+open("/proc/32/cmdline", O_RDONLY)      = 6
+open("/proc/33/stat", O_RDONLY)         = 6
+open("/proc/33/status", O_RDONLY)       = 6
+open("/proc/33/cmdline", O_RDONLY)      = 6
+open("/proc/1001/stat", O_RDONLY)       = 6
+open("/proc/1001/status", O_RDONLY)     = 6
+open("/proc/1001/cmdline", O_RDONLY)    = 6
+open("/proc/1050/stat", O_RDONLY)       = 6
+open("/proc/1050/status", O_RDONLY)     = 6
+open("/proc/1050/cmdline", O_RDONLY)    = 6
+open("/proc/1056/stat", O_RDONLY)       = 6
+open("/proc/1056/status", O_RDONLY)     = 6
+open("/proc/1056/cmdline", O_RDONLY)    = 6
+open("/proc/1077/stat", O_RDONLY)       = 6
+open("/proc/1077/status", O_RDONLY)     = 6
+open("/proc/1077/cmdline", O_RDONLY)    = 6
+open("/proc/1094/stat", O_RDONLY)       = 6
+open("/proc/1094/status", O_RDONLY)     = 6
+open("/proc/1094/cmdline", O_RDONLY)    = 6
+open("/proc/3321/stat", O_RDONLY)       = 6
+open("/proc/3321/status", O_RDONLY)     = 6
+open("/proc/3321/cmdline", O_RDONLY)    = 6
+open("/proc/3473/stat", O_RDONLY)       = 6
+open("/proc/3473/status", O_RDONLY)     = 6
+open("/proc/3473/cmdline", O_RDONLY)    = 6
+open("/proc/4127/stat", O_RDONLY)       = 6
+open("/proc/4127/status", O_RDONLY)     = 6
+open("/proc/4127/cmdline", O_RDONLY)    = 6
+open("/proc/4370/stat", O_RDONLY)       = 6
+open("/proc/4370/status", O_RDONLY)     = 6
+open("/proc/4370/cmdline", O_RDONLY)    = 6
+open("/proc/4419/stat", O_RDONLY)       = 6
+open("/proc/4419/status", O_RDONLY)     = 6
+open("/proc/4419/cmdline", O_RDONLY)    = 6
+open("/proc/4950/stat", O_RDONLY)       = 6
+open("/proc/4950/status", O_RDONLY)     = 6
+open("/proc/4950/cmdline", O_RDONLY)    = 6
+open("/proc/6675/stat", O_RDONLY)       = 6
+open("/proc/6675/status", O_RDONLY)     = 6
+open("/proc/6675/cmdline", O_RDONLY)    = 6
+open("/proc/6701/stat", O_RDONLY)       = 6
+open("/proc/6701/status", O_RDONLY)     = 6
+open("/proc/6701/cmdline", O_RDONLY)    = 6
+open("/proc/6711/stat", O_RDONLY)       = 6
+open("/proc/6711/status", O_RDONLY)     = 6
+open("/proc/6711/cmdline", O_RDONLY)    = 6
+open("/proc/6727/stat", O_RDONLY)       = 6
+open("/proc/6727/status", O_RDONLY)     = 6
+open("/proc/6727/cmdline", O_RDONLY)    = 6
+open("/proc/6735/stat", O_RDONLY)       = 6
+open("/proc/6735/status", O_RDONLY)     = 6
+open("/proc/6735/cmdline", O_RDONLY)    = 6
+open("/proc/6736/stat", O_RDONLY)       = 6
+open("/proc/6736/status", O_RDONLY)     = 6
+open("/proc/6736/cmdline", O_RDONLY)    = 6
+open("/proc/6748/stat", O_RDONLY)       = 6
+open("/proc/6748/status", O_RDONLY)     = 6
+open("/proc/6748/cmdline", O_RDONLY)    = 6
+open("/proc/6750/stat", O_RDONLY)       = 6
+open("/proc/6750/status", O_RDONLY)     = 6
+open("/proc/6750/cmdline", O_RDONLY)    = 6
+open("/proc/6751/stat", O_RDONLY)       = 6
+open("/proc/6751/status", O_RDONLY)     = 6
+open("/proc/6751/cmdline", O_RDONLY)    = 6
+open("/proc/6758/stat", O_RDONLY)       = 6
+open("/proc/6758/status", O_RDONLY)     = 6
+open("/proc/6758/cmdline", O_RDONLY)    = 6
+open("/proc/6768/stat", O_RDONLY)       = 6
+open("/proc/6768/status", O_RDONLY)     = 6
+open("/proc/6768/cmdline", O_RDONLY)    = 6
+open("/proc/6776/stat", O_RDONLY)       = 6
+open("/proc/6776/status", O_RDONLY)     = 6
+open("/proc/6776/cmdline", O_RDONLY)    = 6
+open("/proc/tty/drivers", O_RDONLY)     = 6
+open("/proc/6780/stat", O_RDONLY)       = 6
+open("/proc/6780/status", O_RDONLY)     = 6
+open("/proc/6780/cmdline", O_RDONLY)    = 6
+open("/proc/6782/stat", O_RDONLY)       = 6
+open("/proc/6782/status", O_RDONLY)     = 6
+open("/proc/6782/cmdline", O_RDONLY)    = 6
+open("/proc/6783/stat", O_RDONLY)       = 6
+open("/proc/6783/status", O_RDONLY)     = 6
+open("/proc/6783/cmdline", O_RDONLY)    = 6
+open("/proc/6784/stat", O_RDONLY)       = 6
+open("/proc/6784/status", O_RDONLY)     = 6
+open("/proc/6784/cmdline", O_RDONLY)    = 6
+open("/proc/6785/stat", O_RDONLY)       = 6
+open("/proc/6785/status", O_RDONLY)     = 6
+open("/proc/6785/cmdline", O_RDONLY)    = 6
+open("/proc/6806/stat", O_RDONLY)       = 6
+open("/proc/6806/status", O_RDONLY)     = 6
+open("/proc/6806/cmdline", O_RDONLY)    = 6
+open("/proc/6873/stat", O_RDONLY)       = 6
+open("/proc/6873/status", O_RDONLY)     = 6
+open("/proc/6873/cmdline", O_RDONLY)    = 6
+open("/proc/6874/stat", O_RDONLY)       = 6
+open("/proc/6874/status", O_RDONLY)     = 6
+open("/proc/6874/cmdline", O_RDONLY)    = 6
+
diff --git a/hurd/translator/procfs/procps.mdwn b/hurd/translator/procfs/procps.mdwn new file mode 100644 index 00000000..60b061a9 --- /dev/null +++ b/hurd/translator/procfs/procps.mdwn @@ -0,0 +1,69 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +
+open("/proc/stat", O_RDONLY)            = 3
+
+open("/proc/self/stat", O_RDONLY)       = 3
+
+open("/proc/uptime", O_RDONLY)          = 3
+
+open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
+
+open("/proc/meminfo", O_RDONLY)         = 4
+
+open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
+
+open("/proc/1/stat", O_RDONLY)          = 6
+
+open("/proc/1/status", O_RDONLY)        = 6
+
+open("/proc/1/cmdline", O_RDONLY)       = 6
+
+open("/proc/2/stat", O_RDONLY)          = 6
+
+open("/proc/2/status", O_RDONLY)        = 6
+
+open("/proc/2/cmdline", O_RDONLY)       = 6
+
+open("/proc/3/stat", O_RDONLY)          = 6
+
+open("/proc/3/status", O_RDONLY)        = 6
+
+open("/proc/3/cmdline", O_RDONLY)       = 6
+
+(...)
+
+open("/proc/6758/stat", O_RDONLY)       = 6
+
+open("/proc/6758/status", O_RDONLY)     = 6
+
+open("/proc/6758/cmdline", O_RDONLY)    = 6
+
+open("/proc/6768/stat", O_RDONLY)       = 6
+
+open("/proc/6768/status", O_RDONLY)     = 6
+
+open("/proc/6768/cmdline", O_RDONLY)    = 6
+
+open("/proc/6776/stat", O_RDONLY)       = 6
+
+open("/proc/6776/status", O_RDONLY)     = 6
+
+open("/proc/6776/cmdline", O_RDONLY)    = 6
+
+open("/proc/tty/drivers", O_RDONLY)     = 6
+
+open("/proc/6780/stat", O_RDONLY)       = 6
+
+open("/proc/6780/status", O_RDONLY)     = 6
+
+(...)
+
diff --git a/hurd/translator/procfs/top.mdwn b/hurd/translator/procfs/top.mdwn new file mode 100644 index 00000000..b2c9547b --- /dev/null +++ b/hurd/translator/procfs/top.mdwn @@ -0,0 +1,121 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +
+open("/proc/stat", O_RDONLY)            = 3
+open("/proc/sys/kernel/pid_max", O_RDONLY) = 3
+open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
+open("/proc/1/stat", O_RDONLY)          = 4
+open("/proc/1/statm", O_RDONLY)         = 4
+open("/proc/2/stat", O_RDONLY)          = 4
+open("/proc/2/statm", O_RDONLY)         = 4
+open("/proc/3/stat", O_RDONLY)          = 4
+open("/proc/3/statm", O_RDONLY)         = 4
+open("/proc/4/stat", O_RDONLY)          = 4
+open("/proc/4/statm", O_RDONLY)         = 4
+open("/proc/5/stat", O_RDONLY)          = 4
+open("/proc/5/statm", O_RDONLY)         = 4
+open("/proc/6/stat", O_RDONLY)          = 4
+open("/proc/6/statm", O_RDONLY)         = 4
+open("/proc/7/stat", O_RDONLY)          = 4
+open("/proc/7/statm", O_RDONLY)         = 4
+open("/proc/8/stat", O_RDONLY)          = 4
+open("/proc/8/statm", O_RDONLY)         = 4
+open("/proc/9/stat", O_RDONLY)          = 4
+open("/proc/9/statm", O_RDONLY)         = 4
+open("/proc/10/stat", O_RDONLY)         = 4
+open("/proc/10/statm", O_RDONLY)        = 4
+open("/proc/11/stat", O_RDONLY)         = 4
+open("/proc/11/statm", O_RDONLY)        = 4
+open("/proc/12/stat", O_RDONLY)         = 4
+open("/proc/12/statm", O_RDONLY)        = 4
+open("/proc/13/stat", O_RDONLY)         = 4
+open("/proc/13/statm", O_RDONLY)        = 4
+open("/proc/14/stat", O_RDONLY)         = 4
+open("/proc/14/statm", O_RDONLY)        = 4
+open("/proc/15/stat", O_RDONLY)         = 4
+open("/proc/15/statm", O_RDONLY)        = 4
+open("/proc/16/stat", O_RDONLY)         = 4
+open("/proc/16/statm", O_RDONLY)        = 4
+open("/proc/25/stat", O_RDONLY)         = 4
+open("/proc/25/statm", O_RDONLY)        = 4
+open("/proc/26/stat", O_RDONLY)         = 4
+open("/proc/26/statm", O_RDONLY)        = 4
+open("/proc/32/stat", O_RDONLY)         = 4
+open("/proc/32/statm", O_RDONLY)        = 4
+open("/proc/33/stat", O_RDONLY)         = 4
+open("/proc/33/statm", O_RDONLY)        = 4
+open("/proc/1001/stat", O_RDONLY)       = 4
+open("/proc/1001/statm", O_RDONLY)      = 4
+open("/proc/1050/stat", O_RDONLY)       = 4
+open("/proc/1050/statm", O_RDONLY)      = 4
+open("/proc/1056/stat", O_RDONLY)       = 4
+open("/proc/1056/statm", O_RDONLY)      = 4
+open("/proc/1077/stat", O_RDONLY)       = 4
+open("/proc/1077/statm", O_RDONLY)      = 4
+open("/proc/1094/stat", O_RDONLY)       = 4
+open("/proc/1094/statm", O_RDONLY)      = 4
+open("/proc/3321/stat", O_RDONLY)       = 4
+open("/proc/3321/statm", O_RDONLY)      = 4
+open("/proc/3379/stat", O_RDONLY)       = 4
+open("/proc/3379/statm", O_RDONLY)      = 4
+open("/proc/4119/stat", O_RDONLY)       = 4
+open("/proc/4119/statm", O_RDONLY)      = 4
+open("/proc/4380/stat", O_RDONLY)       = 4
+open("/proc/4380/statm", O_RDONLY)      = 4
+open("/proc/4468/stat", O_RDONLY)       = 4
+open("/proc/4468/statm", O_RDONLY)      = 4
+open("/proc/4950/stat", O_RDONLY)       = 4
+open("/proc/4950/statm", O_RDONLY)      = 4
+open("/proc/6675/stat", O_RDONLY)       = 4
+open("/proc/6675/statm", O_RDONLY)      = 4
+open("/proc/6701/stat", O_RDONLY)       = 4
+open("/proc/6701/statm", O_RDONLY)      = 4
+open("/proc/6711/stat", O_RDONLY)       = 4
+open("/proc/6711/statm", O_RDONLY)      = 4
+open("/proc/6727/stat", O_RDONLY)       = 4
+open("/proc/6727/statm", O_RDONLY)      = 4
+open("/proc/6735/stat", O_RDONLY)       = 4
+open("/proc/6735/statm", O_RDONLY)      = 4
+open("/proc/6736/stat", O_RDONLY)       = 4
+open("/proc/6736/statm", O_RDONLY)      = 4
+open("/proc/6748/stat", O_RDONLY)       = 4
+open("/proc/6748/statm", O_RDONLY)      = 4
+open("/proc/6750/stat", O_RDONLY)       = 4
+open("/proc/6750/statm", O_RDONLY)      = 4
+open("/proc/6751/stat", O_RDONLY)       = 4
+open("/proc/6751/statm", O_RDONLY)      = 4
+open("/proc/6758/stat", O_RDONLY)       = 4
+open("/proc/6758/statm", O_RDONLY)      = 4
+open("/proc/6768/stat", O_RDONLY)       = 4
+open("/proc/6768/statm", O_RDONLY)      = 4
+open("/proc/6776/stat", O_RDONLY)       = 4
+open("/proc/6776/statm", O_RDONLY)      = 4
+open("/proc/6780/stat", O_RDONLY)       = 4
+open("/proc/6780/statm", O_RDONLY)      = 4
+open("/proc/6782/stat", O_RDONLY)       = 4
+open("/proc/6782/statm", O_RDONLY)      = 4
+open("/proc/6783/stat", O_RDONLY)       = 4
+open("/proc/6783/statm", O_RDONLY)      = 4
+open("/proc/6784/stat", O_RDONLY)       = 4
+open("/proc/6784/statm", O_RDONLY)      = 4
+open("/proc/6787/stat", O_RDONLY)       = 4
+open("/proc/6787/statm", O_RDONLY)      = 4
+open("/proc/6806/stat", O_RDONLY)       = 4
+open("/proc/6806/statm", O_RDONLY)      = 4
+open("/proc/6823/stat", O_RDONLY)       = 4
+open("/proc/6823/statm", O_RDONLY)      = 4
+open("/proc/6824/stat", O_RDONLY)       = 4
+open("/proc/6824/statm", O_RDONLY)      = 4
+open("/proc/6881/stat", O_RDONLY)       = 4
+open("/proc/6881/statm", O_RDONLY)      = 4
+open("/proc/6882/stat", O_RDONLY)       = 4
+open("/proc/6882/statm", O_RDONLY)      = 4
+
-- cgit v1.2.3 From ab41bf3833c2bce9f976673e4c6ffa6de166d932 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 29 Mar 2008 23:34:57 +0100 Subject: hurd/translator/procfs/htop: Proper formatting. Simplify. hurd/translator/procfs/killall: Likewise. hurd/translator/procfs/procps: Likewise. hurd/translator/procfs/top: Likewise. --- hurd/translator/procfs/htop.mdwn | 276 ++---------------------------------- hurd/translator/procfs/killall.mdwn | 175 ++--------------------- hurd/translator/procfs/procps.mdwn | 72 ++-------- hurd/translator/procfs/top.mdwn | 119 ++-------------- 4 files changed, 49 insertions(+), 593 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/procfs/htop.mdwn b/hurd/translator/procfs/htop.mdwn index 7a0dc416..5228c702 100644 --- a/hurd/translator/procfs/htop.mdwn +++ b/hurd/translator/procfs/htop.mdwn @@ -8,264 +8,18 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/meminfo", O_RDONLY)         = 3
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
-open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1/status", O_RDONLY)        = 4
-open("/proc/1/statm", O_RDONLY)         = 4
-open("/proc/1/stat", O_RDONLY)          = 4
-open("/proc/1/cmdline", O_RDONLY)       = 4
-open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/2/status", O_RDONLY)        = 4
-open("/proc/2/statm", O_RDONLY)         = 4
-open("/proc/2/stat", O_RDONLY)          = 4
-open("/proc/2/cmdline", O_RDONLY)       = 4
-open("/proc/3/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3/status", O_RDONLY)        = 4
-open("/proc/3/statm", O_RDONLY)         = 4
-open("/proc/3/stat", O_RDONLY)          = 4
-open("/proc/3/cmdline", O_RDONLY)       = 4
-open("/proc/4/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4/status", O_RDONLY)        = 4
-open("/proc/4/statm", O_RDONLY)         = 4
-open("/proc/4/stat", O_RDONLY)          = 4
-open("/proc/4/cmdline", O_RDONLY)       = 4
-open("/proc/5/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/5/status", O_RDONLY)        = 4
-open("/proc/5/statm", O_RDONLY)         = 4
-open("/proc/5/stat", O_RDONLY)          = 4
-open("/proc/5/cmdline", O_RDONLY)       = 4
-open("/proc/6/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6/status", O_RDONLY)        = 4
-open("/proc/6/statm", O_RDONLY)         = 4
-open("/proc/6/stat", O_RDONLY)          = 4
-open("/proc/6/cmdline", O_RDONLY)       = 4
-open("/proc/7/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/7/status", O_RDONLY)        = 4
-open("/proc/7/statm", O_RDONLY)         = 4
-open("/proc/7/stat", O_RDONLY)          = 4
-open("/proc/7/cmdline", O_RDONLY)       = 4
-open("/proc/8/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/8/status", O_RDONLY)        = 4
-open("/proc/8/statm", O_RDONLY)         = 4
-open("/proc/8/stat", O_RDONLY)          = 4
-open("/proc/8/cmdline", O_RDONLY)       = 4
-open("/proc/9/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/9/status", O_RDONLY)        = 4
-open("/proc/9/statm", O_RDONLY)         = 4
-open("/proc/9/stat", O_RDONLY)          = 4
-open("/proc/9/cmdline", O_RDONLY)       = 4
-open("/proc/10/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/10/status", O_RDONLY)       = 4
-open("/proc/10/statm", O_RDONLY)        = 4
-open("/proc/10/stat", O_RDONLY)         = 4
-open("/proc/10/cmdline", O_RDONLY)      = 4
-open("/proc/11/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/11/status", O_RDONLY)       = 4
-open("/proc/11/statm", O_RDONLY)        = 4
-open("/proc/11/stat", O_RDONLY)         = 4
-open("/proc/11/cmdline", O_RDONLY)      = 4
-open("/proc/12/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/12/status", O_RDONLY)       = 4
-open("/proc/12/statm", O_RDONLY)        = 4
-open("/proc/12/stat", O_RDONLY)         = 4
-open("/proc/12/cmdline", O_RDONLY)      = 4
-open("/proc/13/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/13/status", O_RDONLY)       = 4
-open("/proc/13/statm", O_RDONLY)        = 4
-open("/proc/13/stat", O_RDONLY)         = 4
-open("/proc/13/cmdline", O_RDONLY)      = 4
-open("/proc/14/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/14/status", O_RDONLY)       = 4
-open("/proc/14/statm", O_RDONLY)        = 4
-open("/proc/14/stat", O_RDONLY)         = 4
-open("/proc/14/cmdline", O_RDONLY)      = 4
-open("/proc/15/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/15/status", O_RDONLY)       = 4
-open("/proc/15/statm", O_RDONLY)        = 4
-open("/proc/15/stat", O_RDONLY)         = 4
-open("/proc/15/cmdline", O_RDONLY)      = 4
-open("/proc/16/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/16/status", O_RDONLY)       = 4
-open("/proc/16/statm", O_RDONLY)        = 4
-open("/proc/16/stat", O_RDONLY)         = 4
-open("/proc/16/cmdline", O_RDONLY)      = 4
-open("/proc/25/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/25/status", O_RDONLY)       = 4
-open("/proc/25/statm", O_RDONLY)        = 4
-open("/proc/25/stat", O_RDONLY)         = 4
-open("/proc/25/cmdline", O_RDONLY)      = 4
-open("/proc/26/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/26/status", O_RDONLY)       = 4
-open("/proc/26/statm", O_RDONLY)        = 4
-open("/proc/26/stat", O_RDONLY)         = 4
-open("/proc/26/cmdline", O_RDONLY)      = 4
-open("/proc/32/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/32/status", O_RDONLY)       = 4
-open("/proc/32/statm", O_RDONLY)        = 4
-open("/proc/32/stat", O_RDONLY)         = 4
-open("/proc/32/cmdline", O_RDONLY)      = 4
-open("/proc/33/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/33/status", O_RDONLY)       = 4
-open("/proc/33/statm", O_RDONLY)        = 4
-open("/proc/33/stat", O_RDONLY)         = 4
-open("/proc/33/cmdline", O_RDONLY)      = 4
-open("/proc/1001/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1001/status", O_RDONLY)     = 4
-open("/proc/1001/statm", O_RDONLY)      = 4
-open("/proc/1001/stat", O_RDONLY)       = 4
-open("/proc/1001/cmdline", O_RDONLY)    = 4
-open("/proc/1050/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1050/status", O_RDONLY)     = 4
-open("/proc/1050/statm", O_RDONLY)      = 4
-open("/proc/1050/stat", O_RDONLY)       = 4
-open("/proc/1050/cmdline", O_RDONLY)    = 4
-open("/proc/1056/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1056/status", O_RDONLY)     = 4
-open("/proc/1056/statm", O_RDONLY)      = 4
-open("/proc/1056/stat", O_RDONLY)       = 4
-open("/proc/1056/cmdline", O_RDONLY)    = 4
-open("/proc/1077/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1077/status", O_RDONLY)     = 4
-open("/proc/1077/statm", O_RDONLY)      = 4
-open("/proc/1077/stat", O_RDONLY)       = 4
-open("/proc/1077/cmdline", O_RDONLY)    = 4
-open("/proc/1094/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/1094/status", O_RDONLY)     = 4
-open("/proc/1094/statm", O_RDONLY)      = 4
-open("/proc/1094/stat", O_RDONLY)       = 4
-open("/proc/1094/cmdline", O_RDONLY)    = 4
-open("/proc/3321/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3321/status", O_RDONLY)     = 4
-open("/proc/3321/statm", O_RDONLY)      = 4
-open("/proc/3321/stat", O_RDONLY)       = 4
-open("/proc/3321/cmdline", O_RDONLY)    = 4
-open("/proc/3473/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/3473/status", O_RDONLY)     = 4
-open("/proc/3473/statm", O_RDONLY)      = 4
-open("/proc/3473/stat", O_RDONLY)       = 4
-open("/proc/3473/cmdline", O_RDONLY)    = 4
-open("/proc/4127/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4127/status", O_RDONLY)     = 4
-open("/proc/4127/statm", O_RDONLY)      = 4
-open("/proc/4127/stat", O_RDONLY)       = 4
-open("/proc/4127/cmdline", O_RDONLY)    = 4
-open("/proc/4370/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4370/status", O_RDONLY)     = 4
-open("/proc/4370/statm", O_RDONLY)      = 4
-open("/proc/4370/stat", O_RDONLY)       = 4
-open("/proc/4370/cmdline", O_RDONLY)    = 4
-open("/proc/4419/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4419/status", O_RDONLY)     = 4
-open("/proc/4419/statm", O_RDONLY)      = 4
-open("/proc/4419/stat", O_RDONLY)       = 4
-open("/proc/4419/cmdline", O_RDONLY)    = 4
-open("/proc/4950/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/4950/status", O_RDONLY)     = 4
-open("/proc/4950/statm", O_RDONLY)      = 4
-open("/proc/4950/stat", O_RDONLY)       = 4
-open("/proc/4950/cmdline", O_RDONLY)    = 4
-open("/proc/6675/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6675/status", O_RDONLY)     = 4
-open("/proc/6675/statm", O_RDONLY)      = 4
-open("/proc/6675/stat", O_RDONLY)       = 4
-open("/proc/6675/cmdline", O_RDONLY)    = 4
-open("/proc/6701/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6701/status", O_RDONLY)     = 4
-open("/proc/6701/statm", O_RDONLY)      = 4
-open("/proc/6701/stat", O_RDONLY)       = 4
-open("/proc/6701/cmdline", O_RDONLY)    = 4
-open("/proc/6711/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6711/status", O_RDONLY)     = 4
-open("/proc/6711/statm", O_RDONLY)      = 4
-open("/proc/6711/stat", O_RDONLY)       = 4
-open("/proc/6711/cmdline", O_RDONLY)    = 4
-open("/proc/6727/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6727/status", O_RDONLY)     = 4
-open("/proc/6727/statm", O_RDONLY)      = 4
-open("/proc/6727/stat", O_RDONLY)       = 4
-open("/proc/6727/cmdline", O_RDONLY)    = 4
-open("/proc/6735/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6735/status", O_RDONLY)     = 4
-open("/proc/6735/statm", O_RDONLY)      = 4
-open("/proc/6735/stat", O_RDONLY)       = 4
-open("/proc/6735/cmdline", O_RDONLY)    = 4
-open("/proc/6736/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6736/status", O_RDONLY)     = 4
-open("/proc/6736/statm", O_RDONLY)      = 4
-open("/proc/6736/stat", O_RDONLY)       = 4
-open("/proc/6736/cmdline", O_RDONLY)    = 4
-open("/proc/6748/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6748/status", O_RDONLY)     = 4
-open("/proc/6748/statm", O_RDONLY)      = 4
-open("/proc/6748/stat", O_RDONLY)       = 4
-open("/proc/6748/cmdline", O_RDONLY)    = 4
-open("/proc/6750/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6750/status", O_RDONLY)     = 4
-open("/proc/6750/statm", O_RDONLY)      = 4
-open("/proc/6750/stat", O_RDONLY)       = 4
-open("/proc/6750/cmdline", O_RDONLY)    = 4
-open("/proc/6751/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6751/status", O_RDONLY)     = 4
-open("/proc/6751/statm", O_RDONLY)      = 4
-open("/proc/6751/stat", O_RDONLY)       = 4
-open("/proc/6751/cmdline", O_RDONLY)    = 4
-open("/proc/6758/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6758/status", O_RDONLY)     = 4
-open("/proc/6758/statm", O_RDONLY)      = 4
-open("/proc/6758/stat", O_RDONLY)       = 4
-open("/proc/6758/cmdline", O_RDONLY)    = 4
-open("/proc/6768/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6768/status", O_RDONLY)     = 4
-open("/proc/6768/statm", O_RDONLY)      = 4
-open("/proc/6768/stat", O_RDONLY)       = 4
-open("/proc/6768/cmdline", O_RDONLY)    = 4
-open("/proc/6776/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6776/status", O_RDONLY)     = 4
-open("/proc/6776/statm", O_RDONLY)      = 4
-open("/proc/6776/stat", O_RDONLY)       = 4
-open("/proc/6776/cmdline", O_RDONLY)    = 4
-open("/proc/6780/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6780/status", O_RDONLY)     = 4
-open("/proc/6780/statm", O_RDONLY)      = 4
-open("/proc/6780/stat", O_RDONLY)       = 4
-open("/proc/6780/cmdline", O_RDONLY)    = 4
-open("/proc/6782/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6782/status", O_RDONLY)     = 4
-open("/proc/6782/statm", O_RDONLY)      = 4
-open("/proc/6782/stat", O_RDONLY)       = 4
-open("/proc/6782/cmdline", O_RDONLY)    = 4
-open("/proc/6783/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6783/status", O_RDONLY)     = 4
-open("/proc/6783/statm", O_RDONLY)      = 4
-open("/proc/6783/stat", O_RDONLY)       = 4
-open("/proc/6783/cmdline", O_RDONLY)    = 4
-open("/proc/6784/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6784/status", O_RDONLY)     = 4
-open("/proc/6784/statm", O_RDONLY)      = 4
-open("/proc/6784/stat", O_RDONLY)       = 4
-open("/proc/6784/cmdline", O_RDONLY)    = 4
-open("/proc/6785/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6785/status", O_RDONLY)     = 4
-open("/proc/6785/statm", O_RDONLY)      = 4
-open("/proc/6785/stat", O_RDONLY)       = 4
-open("/proc/6785/cmdline", O_RDONLY)    = 4
-open("/proc/6806/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6806/status", O_RDONLY)     = 4
-open("/proc/6806/statm", O_RDONLY)      = 4
-open("/proc/6806/stat", O_RDONLY)       = 4
-open("/proc/6806/cmdline", O_RDONLY)    = 4
-open("/proc/6903/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6903/status", O_RDONLY)     = 4
-open("/proc/6903/statm", O_RDONLY)      = 4
-open("/proc/6903/stat", O_RDONLY)       = 4
-open("/proc/6903/cmdline", O_RDONLY)    = 4
-open("/proc/6904/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4
-open("/proc/6904/status", O_RDONLY)     = 4
-open("/proc/6904/statm", O_RDONLY)      = 4
-open("/proc/6904/stat", O_RDONLY)       = 4
-open("/proc/6904/cmdline", O_RDONLY)    = 4
-
+ open("/proc/stat", O_RDONLY) = 3 + open("/proc/meminfo", O_RDONLY) = 3 + open("/proc/stat", O_RDONLY) = 3 + open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 + open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 + open("/proc/1/status", O_RDONLY) = 4 + open("/proc/1/statm", O_RDONLY) = 4 + open("/proc/1/stat", O_RDONLY) = 4 + open("/proc/1/cmdline", O_RDONLY) = 4 + open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 + open("/proc/2/status", O_RDONLY) = 4 + open("/proc/2/statm", O_RDONLY) = 4 + open("/proc/2/stat", O_RDONLY) = 4 + open("/proc/2/cmdline", O_RDONLY) = 4 + [...] diff --git a/hurd/translator/procfs/killall.mdwn b/hurd/translator/procfs/killall.mdwn index 588ba1c8..99790a36 100644 --- a/hurd/translator/procfs/killall.mdwn +++ b/hurd/translator/procfs/killall.mdwn @@ -8,165 +8,16 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/self/stat", O_RDONLY)       = 3
-open("/proc/uptime", O_RDONLY)          = 3
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
-open("/proc/meminfo", O_RDONLY)         = 4
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
-open("/proc/1/stat", O_RDONLY)          = 6
-open("/proc/1/status", O_RDONLY)        = 6
-open("/proc/1/cmdline", O_RDONLY)       = 6
-open("/proc/2/stat", O_RDONLY)          = 6
-open("/proc/2/status", O_RDONLY)        = 6
-open("/proc/2/cmdline", O_RDONLY)       = 6
-open("/proc/3/stat", O_RDONLY)          = 6
-open("/proc/3/status", O_RDONLY)        = 6
-open("/proc/3/cmdline", O_RDONLY)       = 6
-open("/proc/4/stat", O_RDONLY)          = 6
-open("/proc/4/status", O_RDONLY)        = 6
-open("/proc/4/cmdline", O_RDONLY)       = 6
-open("/proc/5/stat", O_RDONLY)          = 6
-open("/proc/5/status", O_RDONLY)        = 6
-open("/proc/5/cmdline", O_RDONLY)       = 6
-open("/proc/6/stat", O_RDONLY)          = 6
-open("/proc/6/status", O_RDONLY)        = 6
-open("/proc/6/cmdline", O_RDONLY)       = 6
-open("/proc/7/stat", O_RDONLY)          = 6
-open("/proc/7/status", O_RDONLY)        = 6
-open("/proc/7/cmdline", O_RDONLY)       = 6
-open("/proc/8/stat", O_RDONLY)          = 6
-open("/proc/8/status", O_RDONLY)        = 6
-open("/proc/8/cmdline", O_RDONLY)       = 6
-open("/proc/9/stat", O_RDONLY)          = 6
-open("/proc/9/status", O_RDONLY)        = 6
-open("/proc/9/cmdline", O_RDONLY)       = 6
-open("/proc/10/stat", O_RDONLY)         = 6
-open("/proc/10/status", O_RDONLY)       = 6
-open("/proc/10/cmdline", O_RDONLY)      = 6
-open("/proc/11/stat", O_RDONLY)         = 6
-open("/proc/11/status", O_RDONLY)       = 6
-open("/proc/11/cmdline", O_RDONLY)      = 6
-open("/proc/12/stat", O_RDONLY)         = 6
-open("/proc/12/status", O_RDONLY)       = 6
-open("/proc/12/cmdline", O_RDONLY)      = 6
-open("/proc/13/stat", O_RDONLY)         = 6
-open("/proc/13/status", O_RDONLY)       = 6
-open("/proc/13/cmdline", O_RDONLY)      = 6
-open("/proc/14/stat", O_RDONLY)         = 6
-open("/proc/14/status", O_RDONLY)       = 6
-open("/proc/14/cmdline", O_RDONLY)      = 6
-open("/proc/15/stat", O_RDONLY)         = 6
-open("/proc/15/status", O_RDONLY)       = 6
-open("/proc/15/cmdline", O_RDONLY)      = 6
-open("/proc/16/stat", O_RDONLY)         = 6
-open("/proc/16/status", O_RDONLY)       = 6
-open("/proc/16/cmdline", O_RDONLY)      = 6
-open("/proc/25/stat", O_RDONLY)         = 6
-open("/proc/25/status", O_RDONLY)       = 6
-open("/proc/25/cmdline", O_RDONLY)      = 6
-open("/proc/26/stat", O_RDONLY)         = 6
-open("/proc/26/status", O_RDONLY)       = 6
-open("/proc/26/cmdline", O_RDONLY)      = 6
-open("/proc/32/stat", O_RDONLY)         = 6
-open("/proc/32/status", O_RDONLY)       = 6
-open("/proc/32/cmdline", O_RDONLY)      = 6
-open("/proc/33/stat", O_RDONLY)         = 6
-open("/proc/33/status", O_RDONLY)       = 6
-open("/proc/33/cmdline", O_RDONLY)      = 6
-open("/proc/1001/stat", O_RDONLY)       = 6
-open("/proc/1001/status", O_RDONLY)     = 6
-open("/proc/1001/cmdline", O_RDONLY)    = 6
-open("/proc/1050/stat", O_RDONLY)       = 6
-open("/proc/1050/status", O_RDONLY)     = 6
-open("/proc/1050/cmdline", O_RDONLY)    = 6
-open("/proc/1056/stat", O_RDONLY)       = 6
-open("/proc/1056/status", O_RDONLY)     = 6
-open("/proc/1056/cmdline", O_RDONLY)    = 6
-open("/proc/1077/stat", O_RDONLY)       = 6
-open("/proc/1077/status", O_RDONLY)     = 6
-open("/proc/1077/cmdline", O_RDONLY)    = 6
-open("/proc/1094/stat", O_RDONLY)       = 6
-open("/proc/1094/status", O_RDONLY)     = 6
-open("/proc/1094/cmdline", O_RDONLY)    = 6
-open("/proc/3321/stat", O_RDONLY)       = 6
-open("/proc/3321/status", O_RDONLY)     = 6
-open("/proc/3321/cmdline", O_RDONLY)    = 6
-open("/proc/3473/stat", O_RDONLY)       = 6
-open("/proc/3473/status", O_RDONLY)     = 6
-open("/proc/3473/cmdline", O_RDONLY)    = 6
-open("/proc/4127/stat", O_RDONLY)       = 6
-open("/proc/4127/status", O_RDONLY)     = 6
-open("/proc/4127/cmdline", O_RDONLY)    = 6
-open("/proc/4370/stat", O_RDONLY)       = 6
-open("/proc/4370/status", O_RDONLY)     = 6
-open("/proc/4370/cmdline", O_RDONLY)    = 6
-open("/proc/4419/stat", O_RDONLY)       = 6
-open("/proc/4419/status", O_RDONLY)     = 6
-open("/proc/4419/cmdline", O_RDONLY)    = 6
-open("/proc/4950/stat", O_RDONLY)       = 6
-open("/proc/4950/status", O_RDONLY)     = 6
-open("/proc/4950/cmdline", O_RDONLY)    = 6
-open("/proc/6675/stat", O_RDONLY)       = 6
-open("/proc/6675/status", O_RDONLY)     = 6
-open("/proc/6675/cmdline", O_RDONLY)    = 6
-open("/proc/6701/stat", O_RDONLY)       = 6
-open("/proc/6701/status", O_RDONLY)     = 6
-open("/proc/6701/cmdline", O_RDONLY)    = 6
-open("/proc/6711/stat", O_RDONLY)       = 6
-open("/proc/6711/status", O_RDONLY)     = 6
-open("/proc/6711/cmdline", O_RDONLY)    = 6
-open("/proc/6727/stat", O_RDONLY)       = 6
-open("/proc/6727/status", O_RDONLY)     = 6
-open("/proc/6727/cmdline", O_RDONLY)    = 6
-open("/proc/6735/stat", O_RDONLY)       = 6
-open("/proc/6735/status", O_RDONLY)     = 6
-open("/proc/6735/cmdline", O_RDONLY)    = 6
-open("/proc/6736/stat", O_RDONLY)       = 6
-open("/proc/6736/status", O_RDONLY)     = 6
-open("/proc/6736/cmdline", O_RDONLY)    = 6
-open("/proc/6748/stat", O_RDONLY)       = 6
-open("/proc/6748/status", O_RDONLY)     = 6
-open("/proc/6748/cmdline", O_RDONLY)    = 6
-open("/proc/6750/stat", O_RDONLY)       = 6
-open("/proc/6750/status", O_RDONLY)     = 6
-open("/proc/6750/cmdline", O_RDONLY)    = 6
-open("/proc/6751/stat", O_RDONLY)       = 6
-open("/proc/6751/status", O_RDONLY)     = 6
-open("/proc/6751/cmdline", O_RDONLY)    = 6
-open("/proc/6758/stat", O_RDONLY)       = 6
-open("/proc/6758/status", O_RDONLY)     = 6
-open("/proc/6758/cmdline", O_RDONLY)    = 6
-open("/proc/6768/stat", O_RDONLY)       = 6
-open("/proc/6768/status", O_RDONLY)     = 6
-open("/proc/6768/cmdline", O_RDONLY)    = 6
-open("/proc/6776/stat", O_RDONLY)       = 6
-open("/proc/6776/status", O_RDONLY)     = 6
-open("/proc/6776/cmdline", O_RDONLY)    = 6
-open("/proc/tty/drivers", O_RDONLY)     = 6
-open("/proc/6780/stat", O_RDONLY)       = 6
-open("/proc/6780/status", O_RDONLY)     = 6
-open("/proc/6780/cmdline", O_RDONLY)    = 6
-open("/proc/6782/stat", O_RDONLY)       = 6
-open("/proc/6782/status", O_RDONLY)     = 6
-open("/proc/6782/cmdline", O_RDONLY)    = 6
-open("/proc/6783/stat", O_RDONLY)       = 6
-open("/proc/6783/status", O_RDONLY)     = 6
-open("/proc/6783/cmdline", O_RDONLY)    = 6
-open("/proc/6784/stat", O_RDONLY)       = 6
-open("/proc/6784/status", O_RDONLY)     = 6
-open("/proc/6784/cmdline", O_RDONLY)    = 6
-open("/proc/6785/stat", O_RDONLY)       = 6
-open("/proc/6785/status", O_RDONLY)     = 6
-open("/proc/6785/cmdline", O_RDONLY)    = 6
-open("/proc/6806/stat", O_RDONLY)       = 6
-open("/proc/6806/status", O_RDONLY)     = 6
-open("/proc/6806/cmdline", O_RDONLY)    = 6
-open("/proc/6873/stat", O_RDONLY)       = 6
-open("/proc/6873/status", O_RDONLY)     = 6
-open("/proc/6873/cmdline", O_RDONLY)    = 6
-open("/proc/6874/stat", O_RDONLY)       = 6
-open("/proc/6874/status", O_RDONLY)     = 6
-open("/proc/6874/cmdline", O_RDONLY)    = 6
-
+ open("/proc/stat", O_RDONLY) = 3 + open("/proc/self/stat", O_RDONLY) = 3 + open("/proc/uptime", O_RDONLY) = 3 + open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 + open("/proc/meminfo", O_RDONLY) = 4 + open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 + open("/proc/1/stat", O_RDONLY) = 6 + open("/proc/1/status", O_RDONLY) = 6 + open("/proc/1/cmdline", O_RDONLY) = 6 + open("/proc/2/stat", O_RDONLY) = 6 + open("/proc/2/status", O_RDONLY) = 6 + open("/proc/2/cmdline", O_RDONLY) = 6 + [...] diff --git a/hurd/translator/procfs/procps.mdwn b/hurd/translator/procfs/procps.mdwn index 60b061a9..99790a36 100644 --- a/hurd/translator/procfs/procps.mdwn +++ b/hurd/translator/procfs/procps.mdwn @@ -8,62 +8,16 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -
-open("/proc/stat", O_RDONLY)            = 3
-
-open("/proc/self/stat", O_RDONLY)       = 3
-
-open("/proc/uptime", O_RDONLY)          = 3
-
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 4
-
-open("/proc/meminfo", O_RDONLY)         = 4
-
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5
-
-open("/proc/1/stat", O_RDONLY)          = 6
-
-open("/proc/1/status", O_RDONLY)        = 6
-
-open("/proc/1/cmdline", O_RDONLY)       = 6
-
-open("/proc/2/stat", O_RDONLY)          = 6
-
-open("/proc/2/status", O_RDONLY)        = 6
-
-open("/proc/2/cmdline", O_RDONLY)       = 6
-
-open("/proc/3/stat", O_RDONLY)          = 6
-
-open("/proc/3/status", O_RDONLY)        = 6
-
-open("/proc/3/cmdline", O_RDONLY)       = 6
-
-(...)
-
-open("/proc/6758/stat", O_RDONLY)       = 6
-
-open("/proc/6758/status", O_RDONLY)     = 6
-
-open("/proc/6758/cmdline", O_RDONLY)    = 6
-
-open("/proc/6768/stat", O_RDONLY)       = 6
-
-open("/proc/6768/status", O_RDONLY)     = 6
-
-open("/proc/6768/cmdline", O_RDONLY)    = 6
-
-open("/proc/6776/stat", O_RDONLY)       = 6
-
-open("/proc/6776/status", O_RDONLY)     = 6
-
-open("/proc/6776/cmdline", O_RDONLY)    = 6
-
-open("/proc/tty/drivers", O_RDONLY)     = 6
-
-open("/proc/6780/stat", O_RDONLY)       = 6
-
-open("/proc/6780/status", O_RDONLY)     = 6
-
-(...)
-
+ open("/proc/stat", O_RDONLY) = 3 + open("/proc/self/stat", O_RDONLY) = 3 + open("/proc/uptime", O_RDONLY) = 3 + open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 + open("/proc/meminfo", O_RDONLY) = 4 + open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 + open("/proc/1/stat", O_RDONLY) = 6 + open("/proc/1/status", O_RDONLY) = 6 + open("/proc/1/cmdline", O_RDONLY) = 6 + open("/proc/2/stat", O_RDONLY) = 6 + open("/proc/2/status", O_RDONLY) = 6 + open("/proc/2/cmdline", O_RDONLY) = 6 + [...] diff --git a/hurd/translator/procfs/top.mdwn b/hurd/translator/procfs/top.mdwn index b2c9547b..f0030d61 100644 --- a/hurd/translator/procfs/top.mdwn +++ b/hurd/translator/procfs/top.mdwn @@ -8,114 +8,11 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -
-open("/proc/stat", O_RDONLY)            = 3
-open("/proc/sys/kernel/pid_max", O_RDONLY) = 3
-open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3
-open("/proc/1/stat", O_RDONLY)          = 4
-open("/proc/1/statm", O_RDONLY)         = 4
-open("/proc/2/stat", O_RDONLY)          = 4
-open("/proc/2/statm", O_RDONLY)         = 4
-open("/proc/3/stat", O_RDONLY)          = 4
-open("/proc/3/statm", O_RDONLY)         = 4
-open("/proc/4/stat", O_RDONLY)          = 4
-open("/proc/4/statm", O_RDONLY)         = 4
-open("/proc/5/stat", O_RDONLY)          = 4
-open("/proc/5/statm", O_RDONLY)         = 4
-open("/proc/6/stat", O_RDONLY)          = 4
-open("/proc/6/statm", O_RDONLY)         = 4
-open("/proc/7/stat", O_RDONLY)          = 4
-open("/proc/7/statm", O_RDONLY)         = 4
-open("/proc/8/stat", O_RDONLY)          = 4
-open("/proc/8/statm", O_RDONLY)         = 4
-open("/proc/9/stat", O_RDONLY)          = 4
-open("/proc/9/statm", O_RDONLY)         = 4
-open("/proc/10/stat", O_RDONLY)         = 4
-open("/proc/10/statm", O_RDONLY)        = 4
-open("/proc/11/stat", O_RDONLY)         = 4
-open("/proc/11/statm", O_RDONLY)        = 4
-open("/proc/12/stat", O_RDONLY)         = 4
-open("/proc/12/statm", O_RDONLY)        = 4
-open("/proc/13/stat", O_RDONLY)         = 4
-open("/proc/13/statm", O_RDONLY)        = 4
-open("/proc/14/stat", O_RDONLY)         = 4
-open("/proc/14/statm", O_RDONLY)        = 4
-open("/proc/15/stat", O_RDONLY)         = 4
-open("/proc/15/statm", O_RDONLY)        = 4
-open("/proc/16/stat", O_RDONLY)         = 4
-open("/proc/16/statm", O_RDONLY)        = 4
-open("/proc/25/stat", O_RDONLY)         = 4
-open("/proc/25/statm", O_RDONLY)        = 4
-open("/proc/26/stat", O_RDONLY)         = 4
-open("/proc/26/statm", O_RDONLY)        = 4
-open("/proc/32/stat", O_RDONLY)         = 4
-open("/proc/32/statm", O_RDONLY)        = 4
-open("/proc/33/stat", O_RDONLY)         = 4
-open("/proc/33/statm", O_RDONLY)        = 4
-open("/proc/1001/stat", O_RDONLY)       = 4
-open("/proc/1001/statm", O_RDONLY)      = 4
-open("/proc/1050/stat", O_RDONLY)       = 4
-open("/proc/1050/statm", O_RDONLY)      = 4
-open("/proc/1056/stat", O_RDONLY)       = 4
-open("/proc/1056/statm", O_RDONLY)      = 4
-open("/proc/1077/stat", O_RDONLY)       = 4
-open("/proc/1077/statm", O_RDONLY)      = 4
-open("/proc/1094/stat", O_RDONLY)       = 4
-open("/proc/1094/statm", O_RDONLY)      = 4
-open("/proc/3321/stat", O_RDONLY)       = 4
-open("/proc/3321/statm", O_RDONLY)      = 4
-open("/proc/3379/stat", O_RDONLY)       = 4
-open("/proc/3379/statm", O_RDONLY)      = 4
-open("/proc/4119/stat", O_RDONLY)       = 4
-open("/proc/4119/statm", O_RDONLY)      = 4
-open("/proc/4380/stat", O_RDONLY)       = 4
-open("/proc/4380/statm", O_RDONLY)      = 4
-open("/proc/4468/stat", O_RDONLY)       = 4
-open("/proc/4468/statm", O_RDONLY)      = 4
-open("/proc/4950/stat", O_RDONLY)       = 4
-open("/proc/4950/statm", O_RDONLY)      = 4
-open("/proc/6675/stat", O_RDONLY)       = 4
-open("/proc/6675/statm", O_RDONLY)      = 4
-open("/proc/6701/stat", O_RDONLY)       = 4
-open("/proc/6701/statm", O_RDONLY)      = 4
-open("/proc/6711/stat", O_RDONLY)       = 4
-open("/proc/6711/statm", O_RDONLY)      = 4
-open("/proc/6727/stat", O_RDONLY)       = 4
-open("/proc/6727/statm", O_RDONLY)      = 4
-open("/proc/6735/stat", O_RDONLY)       = 4
-open("/proc/6735/statm", O_RDONLY)      = 4
-open("/proc/6736/stat", O_RDONLY)       = 4
-open("/proc/6736/statm", O_RDONLY)      = 4
-open("/proc/6748/stat", O_RDONLY)       = 4
-open("/proc/6748/statm", O_RDONLY)      = 4
-open("/proc/6750/stat", O_RDONLY)       = 4
-open("/proc/6750/statm", O_RDONLY)      = 4
-open("/proc/6751/stat", O_RDONLY)       = 4
-open("/proc/6751/statm", O_RDONLY)      = 4
-open("/proc/6758/stat", O_RDONLY)       = 4
-open("/proc/6758/statm", O_RDONLY)      = 4
-open("/proc/6768/stat", O_RDONLY)       = 4
-open("/proc/6768/statm", O_RDONLY)      = 4
-open("/proc/6776/stat", O_RDONLY)       = 4
-open("/proc/6776/statm", O_RDONLY)      = 4
-open("/proc/6780/stat", O_RDONLY)       = 4
-open("/proc/6780/statm", O_RDONLY)      = 4
-open("/proc/6782/stat", O_RDONLY)       = 4
-open("/proc/6782/statm", O_RDONLY)      = 4
-open("/proc/6783/stat", O_RDONLY)       = 4
-open("/proc/6783/statm", O_RDONLY)      = 4
-open("/proc/6784/stat", O_RDONLY)       = 4
-open("/proc/6784/statm", O_RDONLY)      = 4
-open("/proc/6787/stat", O_RDONLY)       = 4
-open("/proc/6787/statm", O_RDONLY)      = 4
-open("/proc/6806/stat", O_RDONLY)       = 4
-open("/proc/6806/statm", O_RDONLY)      = 4
-open("/proc/6823/stat", O_RDONLY)       = 4
-open("/proc/6823/statm", O_RDONLY)      = 4
-open("/proc/6824/stat", O_RDONLY)       = 4
-open("/proc/6824/statm", O_RDONLY)      = 4
-open("/proc/6881/stat", O_RDONLY)       = 4
-open("/proc/6881/statm", O_RDONLY)      = 4
-open("/proc/6882/stat", O_RDONLY)       = 4
-open("/proc/6882/statm", O_RDONLY)      = 4
-
+ open("/proc/stat", O_RDONLY) = 3 + open("/proc/sys/kernel/pid_max", O_RDONLY) = 3 + open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 + open("/proc/1/stat", O_RDONLY) = 4 + open("/proc/1/statm", O_RDONLY) = 4 + open("/proc/2/stat", O_RDONLY) = 4 + open("/proc/2/statm", O_RDONLY) = 4 + [...] -- cgit v1.2.3 From 21351b26bea310be449960df6b6a2e1841430121 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sun, 28 Sep 2008 12:47:43 +0200 Subject: Split [[hurd/network]] into [[hurd/translator/pfinet]] and the new [[hurd/settrans]]. --- hurd/network.mdwn | 54 --------------------------------------------- hurd/settrans.mdwn | 37 +++++++++++++++++++++++++++++++ hurd/translator.mdwn | 3 +++ hurd/translator/pfinet.mdwn | 25 ++++++++++++++++++++- 4 files changed, 64 insertions(+), 55 deletions(-) delete mode 100644 hurd/network.mdwn create mode 100644 hurd/settrans.mdwn (limited to 'hurd/translator') diff --git a/hurd/network.mdwn b/hurd/network.mdwn deleted file mode 100644 index 4abb75d4..00000000 --- a/hurd/network.mdwn +++ /dev/null @@ -1,54 +0,0 @@ -[[meta copyright="Copyright © 2002, 2004, 2005, 2007, 2008 Free Software -Foundation, Inc."]] - -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] - -How to setup networking in the Hurd. - -First, make sure that Mach recognizes your hardware. - -# The `pfinet` Translator - -To configure the network, the `pfinet` (*Protocol Family Internet*) translator -must be configured. This is done using the `settrans` command to attach a -translator to a given file system node. When programs access the node by, for -example, sending an RPC, the Hurd will transparently start the server to handle -the request. - - # settrans -fgap /servers/socket/2 /hurd/pfinet -i eth0 \ - -a 192.168.0.50 -g 192.168.0.1 -m 255.255.255.0 - -Here, `settrans` is passed several options: - -* `fg`, force any existing translator to go away. -* `ap`, make both active and passive translators. - -The active translator means that the operating system both starts the -translator immediately and passinve means that the settings are saved in the -file system node. The former also means that any error messages are sent to -`stderr`. - -The argument `/server/socket/2` is the node that the translator is to be -attached to. This is followed by the translator program to run and any -arguments to give it. - -`-a`, `-g` and `-m` are, quite obviously, the IP address, the gateway and -netmask. - -Help on settrans can be obtained by passing it the `--help` option. Help on a -specific translator can be gotten by invoking it from the command line with the -same argument, e.g.: - - # /hurd/pfinet --help - -As there can be a lot of output, consider piping this through a pager. - -Finally copy over your `/etc/resolv.conf` from GNU/Linux to allow your DNS to -resolve correctly. diff --git a/hurd/settrans.mdwn b/hurd/settrans.mdwn new file mode 100644 index 00000000..e4383961 --- /dev/null +++ b/hurd/settrans.mdwn @@ -0,0 +1,37 @@ +[[meta copyright="Copyright © 2002, 2004, 2005, 2007, 2008 Free Software +Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +The `settrans` command is used to attach a [[translator]] (server) to a given +[[file_system_node|virtual_file_system]]. + +`settrans` is commonly used like this: + + $ settrans -fgap *NODE* *TRANSLATOR SETTING* + + * `fg`, **f**orce any existing translator to **g**o away from that node. + * `ap`, start an ***a**ctive translator*, and also establish a ***p**assive + translator* setting. + +*Active translator* means that the operating system starts the translator +immediately and *passive translator* in turn means that the settings are +instead saved in the file system node, and then, when programs access the node +by, for example, sending an [[RPC]], the Hurd will transparently start the +server to handle the request. + + +Help on settrans can be obtained by passing it the `--help` option. + +Likewise, help on a specific translator can be gotten by invoking it from the +command line with the same argument, e.g.: + + $ /hurd/pfinet --help + +As there can be a lot of output, consider piping this through a pager. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 3f763013..4f65bb41 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -17,6 +17,9 @@ and [[pfinet]]) and thus translates object invocations into calls appropriate for the backing store (e.g., ext2 file system, nfs server, etc.). +A translator is usually registered with a specific file system node by using +the [[`settrans`|settrans]] command. + Translators do not require any special privilege to run. The privilege they require is simply that to access the indiviudal resources they use. diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn index acd7b855..41bc87c2 100644 --- a/hurd/translator/pfinet.mdwn +++ b/hurd/translator/pfinet.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2002, 2004, 2005, 2007, 2008 Free Software +Foundation, Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,4 +9,26 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] +To configure Internet connectivity, the `pfinet` (*Protocol Family Internet*) +[[translator]] must be configured. This is done using the +[[`settrans`|settrans]] command, for example like this: + + # settrans -fgap /servers/socket/2 /hurd/pfinet ↩ + -i eth0 -a 192.168.0.50 -g 192.168.0.1 -m 255.255.255.0 + +The argument `/server/socket/2` is the node that the translator is to be +attached to. This is followed by the translator program to run and any +arguments to give it. + +There, `-i`, `-a`, `-g` and `-m` are, quite obviously, the (Mach) device to +use, the IP address, the gateway and netmask. + +--- + +To make DNS lookups work, you'll also have to properly configure the +`/etc/resolv.conf` file, for example by copying it over from your GNU/Linux +installation. + +--- + Notes about [[IPv6]]. -- cgit v1.2.3 From 523e74d5f4d388cc7aadbf4b5470844f2108a0cb Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sun, 28 Sep 2008 15:06:27 +0200 Subject: From a Thomas Bushnell email, debian-hurd, 2000-03-05. --- hurd.mdwn | 1 + hurd/networking.mdwn | 31 ++++++++++++++++++++++++++++++ hurd/translator.mdwn | 1 + hurd/translator/pfinet.mdwn | 3 ++- hurd/translator/pfinet/implementation.mdwn | 13 +++++++++++++ hurd/translator/pflocal.mdwn | 13 +++++++++++++ 6 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 hurd/networking.mdwn create mode 100644 hurd/translator/pfinet/implementation.mdwn create mode 100644 hurd/translator/pflocal.mdwn (limited to 'hurd/translator') diff --git a/hurd.mdwn b/hurd.mdwn index 0bdcdca8..8392abef 100644 --- a/hurd.mdwn +++ b/hurd.mdwn @@ -69,3 +69,4 @@ * [[IO_Path]] * [[Debugging]] * [Hurd Sourcecode Reference](http://www.htu.tugraz.at/~past/hurd/global/): Searchable and browsable index of the code. +* [[Networking]] diff --git a/hurd/networking.mdwn b/hurd/networking.mdwn new file mode 100644 index 00000000..6e0ac56e --- /dev/null +++ b/hurd/networking.mdwn @@ -0,0 +1,31 @@ +[[meta copyright="Copyright © 2000, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +For each supported `PF_*` protocol family, there is a file `/servers/socket/N` +where `N` is the numberic value fo the `PF_*` symbol. Right now +[[`PF_LOCAL`|translator/pflocal]] (a.k.a. `PF_UNIX`) and +[[`PF_INET`|translator/pfinet]] are supported. + +User programs open those files, and use the `socket_create` [[RPC]] to make a +new socket. With that socket, they can use the other `socket_*` RPCs and also +the `io_*` RPCs. The `socket_*` RPCs are essentially clones of the Unix +syscalls in question. + +The only exception is `sockaddrs`, which are implemented as [[ports|libports]] +instead of the opaque data arrays they are in the syscalls. You manipulate +`sockaddr` ports with the `socket_create_address`, `socket_fabricate_address`, +and `socket_whatis_address` calls. The `sockaddr` port is then used in socket +calls like `socket_connect` and `socket_accept`. + +`PF_INET` `sockaddr` ports are manipulated with `socket_create_address` from +the usual `struct sockaddr_in`. `PF_LOCAL` `sockaddr` ports are stored by +`S_IFSOCK` filesystem nodes; you find the address associated with a node with +`ifsock_getsockaddr`. The [[file_system_server|translator]] will get a +`sockaddr` to return with `socket_fabricate_address`. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 4f65bb41..9cdd8a31 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -44,6 +44,7 @@ See some [[examples]] about how to use translators. # Existing Translators * [[pfinet]] +* [[pflocal]] * [[hostmux]] * [[storeio]] * [[ext2fs]] diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn index 41bc87c2..a8da45d7 100644 --- a/hurd/translator/pfinet.mdwn +++ b/hurd/translator/pfinet.mdwn @@ -31,4 +31,5 @@ installation. --- -Notes about [[IPv6]]. + * [[Implementation]]. + * [[IPv6]]. diff --git a/hurd/translator/pfinet/implementation.mdwn b/hurd/translator/pfinet/implementation.mdwn new file mode 100644 index 00000000..08a29280 --- /dev/null +++ b/hurd/translator/pfinet/implementation.mdwn @@ -0,0 +1,13 @@ +[[meta copyright="Copyright © 2000, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +The `pfinet` server is a hacked Linux internet implementation with a glue layer +translating between the Hurd [[RPC]]s and the middle layer of the Linux +implementation. diff --git a/hurd/translator/pflocal.mdwn b/hurd/translator/pflocal.mdwn new file mode 100644 index 00000000..c1d4ac2b --- /dev/null +++ b/hurd/translator/pflocal.mdwn @@ -0,0 +1,13 @@ +[[meta copyright="Copyright © 2000, 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +The implementation of the `pflocal` server is in the `pflocal` directory, and +uses [[`libpipe`|libpipe]] (shared code with the [[named_pipe|fifo]] +implementation). -- cgit v1.2.3 From 24e7f01d6e6322e9d98412076dcf3f4d98196bb0 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 6 Nov 2008 11:37:33 +0100 Subject: Integrate auth.html, hurd-paper.html, hurd-talk.html. Move content from devel.html, docs.html. --- auth.html | 248 ----- contributing.mdwn | 10 +- devel.html | 159 ---- docs.html | 302 ------ documentation.mdwn | 16 +- hurd-paper.html | 812 ---------------- hurd-talk.html | 1151 ----------------------- hurd.mdwn | 2 - hurd/authentication.mdwn | 2 +- hurd/critique.mdwn | 4 +- hurd/documentation.mdwn | 48 +- hurd/documentation/auth.html | 168 ++++ hurd/documentation/hurd-paper.html | 760 +++++++++++++++ hurd/documentation/hurd-talk.html | 1061 +++++++++++++++++++++ hurd/hurd_hacking_guide.mdwn | 16 +- hurd/ng/position_paper.mdwn | 9 +- hurd/reference_manual.mdwn | 18 + hurd/running/distrib.mdwn | 2 +- hurd/running/gnu/universal_package_manager.mdwn | 2 +- hurd/translator.mdwn | 1 + hurd/translator/auth.mdwn | 13 + microkernel/faq/multiserver_microkernel.mdwn | 4 +- microkernel/mach/documentation.mdwn | 18 +- microkernel/mach/gnu_mach.mdwn | 1 + microkernel/mach/gnu_mach/reference_manual.mdwn | 26 + microkernel/mach/mig/documentation.mdwn | 3 +- 26 files changed, 2146 insertions(+), 2710 deletions(-) delete mode 100644 auth.html delete mode 100644 devel.html delete mode 100644 docs.html delete mode 100644 hurd-paper.html delete mode 100644 hurd-talk.html create mode 100644 hurd/documentation/auth.html create mode 100644 hurd/documentation/hurd-paper.html create mode 100644 hurd/documentation/hurd-talk.html create mode 100644 hurd/reference_manual.mdwn create mode 100644 hurd/translator/auth.mdwn create mode 100644 microkernel/mach/gnu_mach/reference_manual.mdwn (limited to 'hurd/translator') diff --git a/auth.html b/auth.html deleted file mode 100644 index 676442ee..00000000 --- a/auth.html +++ /dev/null @@ -1,248 +0,0 @@ - - - -The GNU Hurd - GNU Project - Free Software Foundation (FSF) - - - - - - - - - - - - -
- [image of the Hurd logo] -[ - English -] -
-What's New

-ChangeLogs

-Documentation
-

-GNU Hurd

-Installation
-Getting Help
-Source Code
-Development
-History

-GNU Mach

-Installation
-Source Code

-GNU MIG

-Source Code
-

-
-

Table of Contents

- -
- -

Introduction

-

-In this text, which mostly resembles the talk I gave at Libre Software -Meeting 2002 in Bordeaux, I will describe what the auth server does, -why it is so important and which cool things you can do with it, both -on the programming and the user side. I will also describe related -programs like the password and fakeauth servers. Note that this text -is targeted at programmers who want to understand the auth mechanism -in detail and are already familiar with concepts like Remote Procedure -Calls (RPCs) as well as the way User- and Group-IDs are used in the -POSIX world. - -

-The auth server is a very small server, therefore it gives a useful -example when you want to learn how a server typically looks like. One -reason why it is so small is that the auth interface, which it -implements, consists of only four RPCs. You can find the interface in -hurd/hurd/auth.defs and the server itself in hurd/auth/. - -

How IDs are represented and used

-

-Each process holds (usually) one port to auth (an auth_t in C source, -which actually is a mach_port_t, of course). The purpose of auth is -to manage User-IDs and Group-IDs, which is the reason why users often -will have no choice but to make use of the systems main auth server, -which does not listen on /servers/auth; instead you inherit a port to -auth from your parent process. Each such port is (internally in the -auth server) associated with a set of effective User- and Group-IDs as -well as a set of available User- and Group-IDs. So we have four sets -of IDs in total. The available IDs can be turned into corresponding -effective IDs at any time. - -

-When you send an auth_getids RPC on the port you hold, you will get -information about which IDs are associated with it, so you can figure -out which permissions you have. But how will a server know that you -have these permissions and therefore know which actions (e.g. writing -into file "foo") it is supposed to do on your behalf and which not? -The establishing of a trusted connection to a server works as follows: - -

    -
  1. A user wants a server to know its IDs
  2. -
  3. The user requests a reauthentication from the server
  4. -
  5. In this request the user will include a port
  6. -
  7. Both will hand this port to auth
  8. -
  9. The user uses auth_user_authenticate
  10. -
  11. The server uses auth_server_authenticate
  12. -
  13. The server also passes a new port to auth
  14. -
  15. auth matches these two requests
  16. -
  17. The user gets the new port from auth
  18. -
  19. The server learns about the IDs of the user
  20. -
  21. The user uses the new port for further communication
  22. -
- -

-We have different RPCs for users and servers because what we pass and -what we get back differs for them: Users get a port, and servers get -the sets of IDs, and have to specify the port which the user will get. - -

-It is interesting to note that auth can match the requests by -comparing two integers, because when you get the same port from two -people, you will have the same mach_port_t (which is nothing but an -integer). - -

-All of this of course only works if they use the same auth server, -which is why I said often you have no choice other than to use the -one main auth server. But this is no serious restriction, as the auth server has -almost no functionality one might want to replace. In fact, there is -one replacement for the default auth implementation, but more on that -later. - -

POSIX and beyond

-

-Before we examine what is possible with this design, let us take a -short look at how the POSIX semantics are implemented on top of this -design. When a program that comes out of POSIX-land asks for its own -effective User- or Group-ID, we will tell it about the first of the -effective IDs. In the same sense, the POSIX real User- or Group-ID is -the first available ID and the POSIX saved User- or Group-ID is the -second available ID, which is why you have the same ID two times in -the available IDs when you log into your GNU/Hurd machine (you can -figure out which IDs you have with the program "ids", that basically -just does an auth_getauth RPC). When you lack one of those IDs (for -example when you have no effective Group-ID), a POSIX program asking -for this particular information will get "-1" as the ID. - -

-But as you can imagine, we can do more than what POSIX specifies. Fox -example, we can modify our permissions. This is always done with the -auth_makeauth RPC. In this RPC, you specify the IDs that should be -associated with the new port. All of these IDs must be associated -with either the port where the RPC is sent to or one of the additional -ports you can specify; an exception is the superuser root, which is -allowed to creat ports that are associated with arbitrary IDs. -Hereby you can convert available into effective IDs. - -

-This opens the door to a bunch of nice features. For example, we have -the addauth program in the Hurd, which makes it possible to add an ID -to either a single process or a group of processes if you hold the ID or know the -appropriate password, and there is a corresponding rmauth program that -removes an ID. So when you are working on your computer with GNU -Emacs and want to edit a system configuration file, you switch to -Emacs' shell-mode, do an "addauth root", enter the password, edit the -file, and when you are done switch back to shell-mode and do "rmauth -root". These programs have some interesting options, and there are -various other programs, for setting the complete list of IDs (setauth) -and so on. - -

Related servers

-

-Finally, I want to explain two servers which are related to auth. The -first is the password server, which listens on /servers/password. If -you pass to it a User- or Group-ID and the correct password for it, it -will return a port to auth to you which is associated with the ID you -passed to it. It can create such a port because it is running as -root. So let us assume you are an FTP server process. You will start -as root, because you want to use port 21 (in this case, "port" does -not refer to a mach_port_t, of course). But then, you can drop all -your permissions so that you run without any ID. This makes it far -less dangerous to communicate with yet unknown users over the -network. But when someone now hands a username and password to you, -you can ask the password server for a new auth port. The password -server will check the data you pass to it, for example by looking into -/etc/shadow, and if it is valid, it will ask the auth server for a new -port. It receives this port from auth and then passes it on to you. -So you have raised your permissions. (And for the very curious: Yes, -we are well aware of the differences between this concept and -capabilities; and we also do have some kinds of capabilities in -various parts of the Hurd.) - -

-My second example is the fakeauth server. It also implements the auth -protocol. It is the part of the fakeroot implementation that gives a -process the impression that it runs as root, even if it doesn't. So -when the process asks fakeauth about its own IDs, fakeauth will tell -the process that it runs as root. But when the process wants to make -use of the authentication protocol described earlier in this text, -fakeauth will forward the request to its own auth server, which will -usually be the systems main auth server, which will then be able to -match the auth_*_authenticate requests. So what fakeauth does is -acting as a proxy auth server that gives someone the impression to run -as root, while not modifying what that one is allowed to do. - -

-At this point, I have said at least most of what can be said about the -auth server and the protocol it implements, so I will finish by saying -that it might be an interesting task (for you) to modify some existing -software to take advantage of the features I described here. - -

- -
- -[ - English -] - -
- -

-Return to GNU's home page. -

- -Please send FSF & GNU inquiries & questions to - -gnu@gnu.org. -There are also other ways to -contact the FSF. -

- -Please send comments on these web pages to - -web-hurd@gnu.org, -send other questions to -gnu@gnu.org. -

-Copyright (C) 2002 Free Software Foundation, Inc., -59 Temple Place - Suite 330, Boston, MA 02111, USA -

-Verbatim copying and distribution of this entire article is -permitted in any medium, provided this notice is preserved. -

-Updated: - -$Date$ $Author$ - -


- - diff --git a/contributing.mdwn b/contributing.mdwn index 698d03b3..f1003389 100644 --- a/contributing.mdwn +++ b/contributing.mdwn @@ -52,7 +52,7 @@ is another possibility, see the page about [[running_a_Hurd_system|hurd/running]] for the full story. Then you can either play around and eventually strive to do something -useful or -- if you want -- ask us to assign something to you, depending +useful or -- if you want -- [[ask_us|contact_us]] to assign something to you, depending on the skills you have and the resources you intend to invest. Please spend some time with thinking about the items in this [[questionnaire]]. @@ -62,10 +62,10 @@ system, e.g., [[microkernels_for_beginners|microkernel/for_beginners]]. Until you can do the basic exercises listed there, you won't be able to significantly contribute to the Hurd. -For more reading resources, please see these web pages, and also -, - for links to a bunch of documents, -and in general. +For more reading resources, please see these web pages, for example, +[[Hurd_documentation|hurd/documentation]] and +[[Mach_documentation|microkernel/mach/documentation]] for links to a bunch of +documents. ### Porting Packages diff --git a/devel.html b/devel.html deleted file mode 100644 index 2a31f959..00000000 --- a/devel.html +++ /dev/null @@ -1,159 +0,0 @@ - - - -The GNU Hurd - GNU Project - Free Software Foundation (FSF) - - - - - - - - - - - - -
- [image of the Hurd logo] -[ - - - en -| eo -| es -] -
-What's New

-ChangeLogs

-Documentation
-

-GNU Hurd

-Installation
-Getting Help
-Source Code
-Development
-History

-GNU Mach

-Installation
-Source Code

-GNU MIG

-Source Code

-Related Projects -

-
-

Table of Contents

- -
- -

Contributing

-

-If you want to contribute to the Hurd, you should first install and -use it for a while, to become familiar with its features and design. -To join the development team, subscribe to the -Bug-Hurd -<bug-hurd@gnu.org> -mailing list, which is also the place where you can announce your -intentions, make your proposals and send in your patches. -(You can also send mail there without being subscribed to the list.) -

-There is also the -Hurd-devel-readers -mailing list. It is the read-only version of Hurd-devel, an internal -low-volume list restricted to the core developers of the Hurd. If you -want to follow up on the discussion of the Hurd experts, please reply -to the Bug-hurd mailing list. You can also follow the Hurd-devel -mailing list by browsing the web-based archive of -Hurd-devel. - -

Machinery: getting access to a -system

-

-There are essentially two possibilities: either you install the GNU/Hurd on a -system (see here) or if you don't -have a system to install it on, you can be provided with a shell account. See -this wiki page -for details. - -

Tasks

-

-Developing an operating system is a huge job, with a lot of different -things to do. To be able to keep track of issues, we use a -

-There is also an older (but still valid) list of specific items in the -task file -and in the -TODO file -of the Hurd source repository. - -
- -
- -[ - - - en -| eo -| es -] - -
- -

-Return to GNU's home page. -

- -Please send FSF & GNU inquiries & questions to - -gnu@gnu.org. -There are also other ways to -contact the FSF. -

- -Please send comments on these web pages to - -web-hurd@gnu.org, -send other questions to -gnu@gnu.org. -

-Copyright (C) 2001, 2002, 2006, 2007 -Free Software Foundation, Inc., -59 Temple Place - Suite 330, Boston, MA 02111, USA -

-Verbatim copying and distribution of this entire article is -permitted in any medium, provided this notice is preserved. -

-Updated: - -$Date$ $Author$ - -


- - diff --git a/docs.html b/docs.html deleted file mode 100644 index 9c3a43f1..00000000 --- a/docs.html +++ /dev/null @@ -1,302 +0,0 @@ - - - - -The GNU Hurd - GNU Project - Free Software Foundation (FSF) - - - - - - - - - - - - - -
- [image of the Hurd logo] -[ - - - English -| Esperanto -| Spanish -] -
-What's New

-ChangeLogs

-Documentation
-

-GNU Hurd

-Installation
-Getting Help
-Source Code
-Development
-History

-GNU Mach

-Installation
-Source Code

-GNU MIG

-Source Code

-Related Projects -

-
-

Table of Contents

- -
- -

Introductory material, papers and other -informational documents

-

-

- -

Frequently asked questions

-

-Please check out the -Frequently -Asked Questions about the GNU Hurd (33k characters) and their -answers, which cover most issues a new user will be confronted with. -

-This document is available in several languages: -

- -

Wiki

-

A wiki is available for -collecting ideas and reciepes. Fell free -to contribute! - -

Some topics: - -

- - -

Reference manuals

- -
    - -
  • -

    -The GNU Mach Reference Manual documents the architecture, the usage and -the programming of the GNU Mach microkernel. At the moment, the manual -documents the interface completely, but is not very useful as a tutorial or -introduction into the Mach architecture. -

    -Available Formats: -

    -

    -If you want to work on the manual, you're advised to make a checkout of the source tree. Be sure to get the -GNU Mach 1 branch when you intend to work on the manual. You -can then find the manual's sources in the doc/ directory. Please -submit any modifications to <bug-hurd@gnu.org> (if possible in -unidiff format, as produced by diff -u). - -

  • - -
  • -

    -The GNU Hurd Reference Manual documents the architecture, the usage -and the programming of the GNU Hurd. At the moment, the manual is -quite incomplete. -

    -Available Formats: -

    -

    -If you want to work on the manual, you're advised to make a checkout of the source tree. You can then find the manual's -sources in the doc/ directory. Please submit any modifications to -<bug-hurd@gnu.org> (if possible in -unidiff format, as produced by diff -u). - -

  • - -
- -
- -
- -[ - - - English -| Esperanto -| Spanish -] - -
- -

-Return to GNU's home page. -

- -Please send FSF & GNU inquiries & questions to - -gnu@gnu.org. -There are also other ways to -contact the FSF. -

- -Please send comments on these web pages to - -web-hurd@gnu.org, -send other questions to -gnu@gnu.org. -

-Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007 -Free Software Foundation, Inc., -59 Temple Place - Suite 330, Boston, MA 02111, USA -

-Verbatim copying and distribution of this entire article is -permitted in any medium, provided this notice is preserved. -

-Updated: - -$Date$ $Author$ - -


- - diff --git a/documentation.mdwn b/documentation.mdwn index 45bb5ffc..4e4b4b23 100644 --- a/documentation.mdwn +++ b/documentation.mdwn @@ -8,21 +8,13 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -# General +Documentation for... - * [GNU Hurd Documentation](http://www.gnu.org/software/hurd/docs.html) + * [[GNU_Hurd|hurd/documentation]] + * [[Mach|microkernel/mach/documentation]] -# Introductory Material - -## External - - * [*Examining the Legendary HURD - Kernel*](http://www.informit.com/articles/printerfriendly.aspx?p=1180992), - an article by David Chisnall. - - Also covers a bit of GNU's and the Hurd's history, fundamental techniques - applied, comparisions to other systems. + * [[MIG|microkernel/mach/mig/documentation]] # [[Unix]] Programming diff --git a/hurd-paper.html b/hurd-paper.html deleted file mode 100644 index bb49829c..00000000 --- a/hurd-paper.html +++ /dev/null @@ -1,812 +0,0 @@ - - - -Towards a New Strategy of OS Design - - - -

Towards a New Strategy of OS Design

- [image of a Hurd Metafont Logo] (jpeg 10k) -(jpeg 20k) -no gifs due to patent problems -
-
-[ - - - English -| Hebrew -| Turkish -] - -

-This article explains why FSF is developing a new operating system named the -Hurd, which will be a foundation of the whole GNU system. -The Hurd is built -on top of CMU's Mach 3.0 kernel and uses Mach's virtual memory management and -message-passing facilities. -The GNU C Library will provide the Unix system -call interface, and will call the Hurd for needed services it can't provide -itself. -The design and implementation of the Hurd is being lead by Michael -Bushnell, with assistance from Richard Stallman, Roland McGrath, -Jan Brittenson, and others. - -

Part 1: A More Usable Approach to OS Design

-

-The fundamental purpose of an operating system (OS) is to enable a variety of -programs to share a single computer efficiently and productively. -This -demands memory protection, preemptively scheduled timesharing, coordinated -access to I/O peripherals, and other services. -In addition, an OS can allow -several users to share a computer. -In this case, efficiency demands services -that protect users from harming each other, enable them to share without -prior arrangement, and mediate access to physical devices. -

-On today's computer systems, programmers usually implement these goals -through a large program called the kernel. -Since this program must be -accessible to all user programs, it is the natural place to add functionality -to the system. -Since the only model for process interaction is that of -specific, individual services provided by the kernel, no one creates other -places to add functionality. -As time goes by, more and more is added to the -kernel. -

-A traditional system allows users to add components to a kernel only if they -both understand most of it and have a privileged status within the system. -Testing new components requires a much more painful edit-compile-debug cycle -than testing other programs. -It cannot be done while others are using the -system. -Bugs usually cause fatal system crashes, further disrupting others' -use of the system. -The entire kernel is usually non-pageable. -(There are -systems with pageable kernels, but deciding what can be paged is difficult -and error prone. -Usually the mechanisms are complex, making them difficult -to use even when adding simple extensions.) -

-Because of these restrictions, functionality which properly belongs -behind -the wall of a traditional kernel is usually left out of systems unless it is -absolutely mandatory. -Many good ideas, best done with an open/read/write -interface cannot be implemented because of the problems inherent in the -monolithic nature of a traditional system. -Further, even among those with -the endurance to implement new ideas, only those who are privileged users of -their computers can do so. -The software copyright system darkens the mire by -preventing unlicensed people from even reading the kernel source. -

-Some systems have tried to address these difficulties. -Smalltalk-80 and -the Lisp Machine both represented one method of getting around the problem. -System code is not distinguished from user code; all of the system is -accessible to the user and can be changed as need be. -Both systems were -built around languages that facilitated such easy replacement and extension, -and were moderately successful. -But they both were fairly poor at insulating -users and programs from each other, failing one of the principal goals of OS -design. -

-Most projects that use the Mach 3.0 kernel carry on the hard-to-change -tradition of OS design. -The internal structure is different, but the same -heavy barrier between user and system remains. -The single-servers, while -fairly easy to construct, inherit all the deficiencies of the monolithic -kernels. -

-A multi-server divides the kernel functionality up into logical blocks with -well-defined interfaces. -Properly done, it is easier to make changes and add -functionality. -So most multi-server projects do somewhat better. -Much more -of the system is pageable. -You can debug the system more easily. -You can -test new system components without interfering with other users. -But the -wall between user and system remains; no user can cross it without special -privilege. -

-The GNU Hurd, by contrast, is designed to make the area of -system -code as -limited as possible. -Programs are required to communicate only with a few -essential parts of the kernel; the rest of the system is replaceable -dynamically. -Users can use whatever parts of the remainder of the system -they want, and can easily add components themselves for other users to take -advantage of. -No mutual trust need exist in advance for users to use each -other's services, nor does the system become vulnerable by trusting the -services of arbitrary users. -

-This has been done by identifying those system components which users -must -use in order to communicate with each other. -One of these is responsible for -identifying users' identities and is called the - -authentication server. - -In -order to establish each other's identities, programs must communicate, each -with an authentication server they trust. -Another component establishes -control over system components by the superuser, provides global bookkeeping -operations, and is called the - -process server. - -

-Not all user programs need to communicate with the process server; it is only -necessary for programs which require its services. -Likewise, the -authentication server is only necessary for programs that wish to communicate -their identity to another. -None of the remaining services carry any special -status; not the network implementation, the filesystems, the program -execution mechanism (including setuid), or any others. - -

The Translator Mechanism

-

-The Hurd uses Mach ports primarily as methods for communicating between users -and servers. -(A Mach port is a communication point on a Mach task where -messages are sent and received.) Each port implements a particular set of -protocols, representing operations that can be undertaken on the underlying -object represented by the port. -Some of the protocols specified by the Hurd -are the I/O protocol, used for generic I/O operations; the file protocol, -used for filesystem operations; the socket protocol, used for network -operations; and the process protocol, used for manipulating processes et al. -

-Most servers are accessed by opening files. -Normally, when you open a file, -you create a port associated with that file that is owned by the server -that owns the directory containing the file. -For example, a disk-based -filesystem will normally serve a large number of ports, each of which -represents an open file or directory. -When a file is opened, the server -creates a new port, associates it with the file, and returns the port to the -calling program. -

-However, a file can have a -translator -associated with it. -In this case, -rather than return its own port which refers to the contents of the file, the -server executes a translator program associated with that file. -This -translator is given a port to the actual contents of the file, and is then -asked to return a port to the original user to complete the open operation. -

-This mechanism is used for -mount -by having a translator associated with -each mount point. -When a program opens the mount point, the translator (in -this case, a program which understands the disk format of the mounted -filesystem) is executed and returns a port to the program. -After the -translator is started, it need not be run again unless it dies; the parent -filesystem retains a port to the translator to use in further requests. -

-The owner of a file can associate a translator with it without special -permission. -This means that any program can be specified as a translator. -Obviously the system will not work properly if the translator does not -implement the file protocol correctly. -However, the Hurd is constructed so -that the worst possible consequence is an interruptible hang. -

-One way to use translators is to access hierarchically structured data using -the file protocol. -For example, all the complexity of the user interface to -the -ftp -program is removed. -Users need only know that a particular -directory represents FTP and can use all the standard file manipulation -commands (e.g -ls -or -cp) -to access the remote system, rather than learning -a new set. -Similarly, a simple translator could ease the complexity of -tar -or -gzip. -(Such transparent access would have some added cost, but it would -be convenient.) - -

Generic Services

-

-With translators, the filesystem can act as a rendezvous for interfaces which -are not similar to files. -Consider a service which implements some version -of the X protocol, using Mach messages as an underlying transport. -For each -X display, a file can be created with the appropriate program as its -translator. -X clients would open that file. -At that point, few file -operations would be useful (read and write, for example, would be useless), -but new operations ( -XCreateWindow -or -XDrawText) -might become meaningful. -In this case, the filesystem protocol is used only to manipulate -characteristics of the node used for the rendezvous. -The node need not -support I/O operations, though it should reply to any such messages with a -message_not_understood -return code. -

-This translator technique is used to contact most of the services in the Hurd -that are not structured like hierarchical filesystems. -For example, the -password server, which hands out authorization tags in exchange for -passwords, is contacted this way. -Network protocol servers are also -contacted in this fashion. -Roland McGrath thought up this use of translators. - -

Clever Filesystem Pictures

-

-In the Hurd, translators can also be used to present a filesystem-like view -of another part of the filesystem, with some semantics changed. -For example, -it would be nice to have a filesystem that cannot itself be changed, but -nonetheless records changed versions of its files elsewhere. -(This could be -useful for source code management.) -

-The Hurd will have a translator which creates a directory which is a -conceptual union of other directories, with collision resolution rules of -various sorts. -This can be used to present a single directory to users that -contains all the programs they would want to execute. -There are other useful -variations on this theme. - -

What The User Can Do

-

-No translator gains extra privilege by virtue of being hooked into the -filesystem. -Translators run with the uid of the owner of the file being -translated, and can only be set or changed by that owner. -The I/O and -filesystem protocols are carefully designed to allow their use by mutually -untrusting clients and servers. -Indeed, translators are just ordinary -programs. -The GNU C library has a variety of facilities to make common sorts -of translators easier to write. -

-Some translators may need special privileges, such as the password server or -translators which allow setuid execution. -These translators could be run by -anyone, but only if they are set on a root-owned node would they be able to -provide all their services successfully. -This is analogous to letting any -user call the -reboot -system call, but only honoring it if that user is root. - -

Why This Is So Different

-

-What this design provides is completely novel to the Unix world. -Until now, -OSs have kept huge portions of their functionality in the realm of system -code, thus preventing its modification and extension except in extreme need. -Users cannot replace parts of the system in their programs no matter how much -easier that would make their task, and system managers are loath to install -random tweaks off the net into their kernels. -

-In the Hurd, users can change almost all of the things that are decided for -them in advance by traditional systems. -In combination with the tremendous -control given by the Mach kernel over task address spaces and properties, the -Hurd provides a system in which users will, for the first time, be able to -replace parts of the system they dislike, without disrupting other users. -

-Most Mach-based OSs to date have mostly implemented a wider set of the - -same old - -Unix semantics in a new environment. -In contrast, GNU is extending -those semantics to allow users to improve, bypass, or replace them. - - -

Part 2: A Look at Some of the Hurd's Beasts

-

The Authentication Server

-

-One of the Hurd's more central servers is the authentication server. -Each -port to this server identifies a user and is associated by this server with -an -id block. -Each id block contains sets of user and group ids. -Either -set may be empty. -This server is not the same as the password server -referred to above. -

-The authentication server exports three services. -First, it provides simple -boolean operations on authentication ports: given two authentication ports, -this server will provide a third port representing the union of the two sets -of uids and gids. -Second, this server allows any user with a uid of zero to -create an arbitrary authentication port. -Finally, this server provides RPCs -(Remote Procedure Calls between different programs and possibly different -hosts) which allow mutually untrusting clients and servers to establish their -identities and pass initial information on each other. -This is crucial to -the security of the filesystem and I/O protocols. -

-Any user could write a program which implements the authentication protocol; -this does not violate the system's security. -When a service needs to -authenticate a user, it communicates with its trusted authentication server. -If that user is using a different authentication server, the transaction will -fail and the server can refuse to communicate further. -Because, in effect, -this forces all programs on the system to use the same authentication server, -we have designed its interface to make any safe operation possible, and to -include no extraneous operations. -(This is why there is a separate password -server.) -

The Process Server

-

-The process server acts as an information categorization repository. -There -are four main services supported by this server. -First, the process server -keeps track of generic host-level information not handled by the Mach kernel. -For example, the hostname, the hostid, and the system version are maintained -by the process server. -Second, this server maintains the Posix notions of -sessions and process groups, to help out programs that wish to use Posix -features. -

-Third, the process server maintains a one-to-one mapping between Mach tasks -and Hurd processes. -Every task is assigned a pid. -Processes can register a -message port with this server, which can then be given out to any program -which requests it. -This server makes no attempt to keep these message ports -private, so user programs are expected to implement whatever security they -need themselves. -(The GNU C Library provides convenient functions for all -this.) Processes can tell the process server their current `argv' and `envp' -values; this server will then provide, on request, these vectors of arguments -and environment. -This is useful for writing -ps-like -programs and also -makes it easier to hide or change this information. -None of these features -are mandatory. -Programs are free to disregard all of this and never register -themselves with the process server at all. -They will, however, still have a -pid assigned. -

-Finally, the process server implements -process collections, -which are used -to collect a number of process message ports at the same time. -Also, -facilities are provided for converting between pids, process server ports, -and Mach task ports, while ensuring the security of the ports managed. -

-It is important to stress that the process server is optional. -Because of -restrictions in Mach, programs must run as root in order to identify all the -tasks in the system. -But given that, multiple process servers could -co-exist, each with their own clients, giving their own model of the -universe. -Those process server features which do not require root privileges -to be implemented could be done as per-user servers. -The user's hands are -not tied. -

Transparent FTP

-

-Transparent FTP is an intriguing idea whose time has come. -The popular -ange-ftp -package available for GNU Emacs makes access to FTP files -virtually transparent to all the Emacs file manipulation functions. -Transparent FTP does the same thing, but in a system wide fashion. -This -server is not yet written; the details remain to be fleshed out, and will -doubtless change with experience. -

-In a BSD kernel, a transparent FTP filesystem would be no harder to write -than in the Hurd. -But mention the idea to a BSD kernel hacker, and the -response is that ``such a thing doesn't belong in the kernel''. -In a sense, -this is correct. -It violates all the layering principles of such systems to -place such things in the kernel. -The unfortunate side effect, however, is -that the design methodology (which is based on preventing users from changing -things they don't like) is being used to prevent system designers from making -things better. -(Recent BSD kernels make it possible to write a user program -that provides transparent FTP. -An example is -alex, -but it needs to run -with full root privileges.) -

-In the Hurd, there are no obstacles to doing transparent FTP. -A translator -will be provided for the node -/ftp. -The contents of -/ftp -will probably -not be directly listable, though further subdirectories will be. -There will -be a variety of possible formats. -For example, to access files on uunet, one -could - -cd /ftp/ftp.uu.net:anonymous:mib@gnu. - -Or to access files on a remote -account, one might - -cd /ftp/gnu.org:mib:passwd. - -Parts of this -command could be left out and the transparent FTP program would read them -from a user's -.netrc -file. -In the last case, one might just - -cd /ftp/gnu.org; - -when the rest of the data is already in -.netrc. -

-There is no need to do a -cd -first--use any file command. -To find out about -RFC 1097 (the Telnet Subliminal Message Option), just type - -more /ftp/ftp.uu.net/inet/rfc/rfc1097. - -A copy command to a local disk -could be used if the RFC would be read frequently. -

Filesystems

-

-Ordinary filesystems are also being implemented. -The initial release of the -Hurd will contain a filesystem upwardly compatible with the BSD 4.4 Fast File -System. -In addition to the ordinary semantics, it will provide means to -record translators, offer thirty-two bit user ids and group ids, and supply a -new id per file, called the -author -of the file, which can be set by the -owner arbitrarily. -In addition, because users in the Hurd can have multiple -uids (or even none), there is an additional set of permission bits providing -access control for - -unknown user - -(no uids) as distinct from - -known but arbitrary user - -(some uids: the existing -world -category of file -permissions). -

-The Network File System protocol will be implemented using 4.4 BSD as a -starting point. -A log-structured filesystem will also be implemented using -the same ideas as in Sprite, but probably not the same format. -A GNU network -file protocol may be designed in time, or NFS may be extended to remove its -deficiencies. -There will also be various ``little'' filesystems, such as the -MS-DOS filesystem, to help people move files between GNU and other OSs. - -

Terminals

-

-An I/O server will provide the terminal semantics of Posix. -The GNU C -Library has features for keeping track of the controlling terminal and for -arranging to have proper job control signals sent at the proper times, as -well as features for obeying keyboard and hangup signals. -

-Programs will be able to insert a terminal driver into communications -channels in a variety of ways. -Servers like -rlogind -will be able to insert -the terminal protocol onto their network communication port. -Pseudo-terminals will not be necessary, though they will be provided for -backward compatibility with older programs. -No programs in GNU will depend -on them. -

-Nothing about a terminal driver is forced upon users. -A terminal driver -allows a user to get at the underlying communications channel easily, to -bypass itself on an as-needed basis or altogether, or to substitute a -different terminal driver-like program. -In the last case, provided the -alternate program implements the necessary interfaces, it will be used by the -C Library exactly as if it were the ordinary terminal driver. -

-Because of this flexibility, the original terminal driver will not provide -complex line editing features, restricting itself to the behavior found in -Posix and BSD. -In time, there will be a -readline-based -terminal driver, -which will provide complex line-editing features for those users who want -them. -

-The terminal driver will probably not provide good support for the -high-volume, rapid data transmission required by UUCP or SLIP. -Those -programs do not need any of its features. -Instead they will be using the -underlying Mach device ports for terminals, which support moving large -amounts of data efficiently. - -

Executing Programs

-

-The implementation of the -execve -call is spread across three programs. -The -library marshals the argument and environment vectors. -It then sends a -message to the file server that holds the file to be executed. -The file -server checks execute permissions and makes whatever changes it desires in -the exec call. -For example, if the file is marked setuid and the fileserver -has the ability, it will change the user identification of the new image. -The file server also decides if programs which had access to the old task -should continue to have access to the new task. -If the file server is -augmenting permissions, or executing an unreadable image, then the exec needs -to take place in a new Mach task to maintain security. -

-After deciding the policy associated with the new image, the filesystem calls -the exec server to load the task. -This server, using the BFD (Binary File -Descriptor) library, loads the image. -BFD supports a large number of object -file formats; almost any supported format will be executable. -This server -also handles scripts starting with -#!, -running them through the indicated -program. -

-The standard exec server also looks at the environment of the new image; if -it contains a variable -EXECSERVERS -then it uses the programs specified -there as exec servers instead of the system default. -(This is, of course, -not done for execs that the file server has requested be kept secure.) -

-The new image starts running in the GNU C Library, which sends a message to -the exec server to get the arguments, environment, umask, current directory, -etc. -None of this additional state is special to the file or exec servers; -if programs wish, they can use it in a different manner than the Library. - -

New Processes

-

-The -fork -call is implemented almost entirely in the GNU C Library. -The new -task is created by Mach kernel calls. -The C Library arranges to have its -image inherited properly. -The new task is registered with the process server -(though this is not mandatory). -The C Library provides vectors of functions -to be called at fork time: one vector to be called before the fork, one after -in the parent, and one after in the child. -(These features should not be -used to replace the normal fork-calling sequence; it is intended for -libraries which need to close ports or clean up before a fork occurs.) -The C -library will implement both fork calls specified by the draft Posix.4a (the -proposed standard dealing with the threads extension to the real-time -extension). -

-Nothing forces the user to create new tasks this way. -If a program wants to -use almost the normal fork, but with some special characteristics, then it -can do so. -Hooks will be provided by the C Library, or the function can even -be completely replaced. -None of this is possible in a traditional Unix -system. - -

Asynchronous Messages

-

-As mentioned above, the process server maintains a - -message port - -for each -task registered with it. -These ports are public, and are used to send -asynchronous messages to the task. -Signals, for example, are sent to the -message port. -The signal message also provides a port as an indication that -the sender should be trusted to send the signal. -The GNU C Library lists a -variety of ports in a table, each of which identifies a set of signals that -can be sent by anyone who possesses that port. -For example, if the user -possesses the task's kernel port, it is allowed to send any signal. -If the -user possesses a special - -terminal id - -port, it is allowed to send the -keyboard and hangup signals. -Users can add arbitrary new entries into the C -library's signal permissions table. -

-When a process's process group changes, the process server will send it a -message indicating the new process group. -In this case, the process server -proves its authority by providing the task's kernel port. -

-The C library also has messages to add and delete uids currently used by the -process. -If new uids are sent to the program, the library adds them to its -current set, and then exchanges messages with all the I/O servers it knows -about, proving to them its new authorization. -Similarly, a message can -delete uids. -In the latter case, the caller must provide the process's task -port. -(You can't harm a process by giving it extra permission, but you can -harm it by taking permission away.) The Hurd will provide user programs to -send these messages to processes. -For example, the -su -command will be able -to cause all the programs in your current login session, to gain a new uid, -rather than spawn a subshell. -

-The C library will allow programs to add asynchronous messages they wish to -recognize, as well as prevent recognition of the standard set. -

Making It Look Like Unix

-

-The C Library will implement all of the calls from BSD and Posix as well as -some obvious extensions to them. -This enables users to replace those calls -they dislike or bypass them entirely, whereas in Unix the calls must be used -``as they come'' with no alternatives possible. -

-In some environments binary compatibility will also be supported. -This works -by building a special version of the library which is then loaded somewhere -in the address space of the process. -(For example, on a VAX, it would be -tucked in above the stack.) A feature of Mach, called system call -redirection, is then used to trap Unix system calls and turn them into jumps -into this special version of the library. -(On almost all machines, the cost -of such a redirection is very small; this is a highly optimized path in Mach. -On a 386 it's about two dozen instructions. -This is little worse than a -simple procedure call.) -

-Many features of Unix, such as signal masks and vectors, are handled -completely by the library. -This makes such features significantly cheaper -than in Unix. -It is now reasonable to use -sigblock -extensively to protect -critical sections, rather than seeking out some other, less expensive method. - -

Network Protocols

-

-The Hurd will have a library that will make it very easy to port 4.4 BSD -protocol stacks into the Hurd. -This will enable operation, virtually for -free, of all the protocols supported by BSD. -Currently, this includes the -CCITT protocols, the TCP/IP protocols, the Xerox NS protocols, and the ISO -protocols. -

-For optimal performance some work would be necessary to take advantage of -Hurd features that provide for very high speed I/O. -For most protocols this -will require some thought, but not too much time. -The Hurd will run the -TCP/IP protocols as efficiently as possible. -

-As an interesting example of the flexibility of the Hurd design, consider the -case of IP trailers, used extensively in BSD for performance. -While the Hurd -will be willing to send and receive trailers, it will gain fairly little -advantage in doing so because there is no requirement that data be copied and -avoiding copies for page-aligned data is irrelevant. - -


- -[ - - - English -| Hebrew -| Turkish -] - -
- -Return to GNU's home page. -

-FSF & GNU inquiries & questions to -gnu@gnu.org. -Other ways to contact the FSF. -

-Comments on these web pages to -web-hurd@gnu.org, -send other questions to -gnu@gnu.org. -

-Copyright (C) 1996 Trent Fisher -
-Copyright (C) 1996, 1997, 1998, 2007 Free Software Foundation, Inc., -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -

-Verbatim copying and distribution of this entire article is -permitted in any medium, provided this notice is preserved.

-Updated: - -19 Dec 1998 jonas - -


- - diff --git a/hurd-talk.html b/hurd-talk.html deleted file mode 100644 index 630bbc7d..00000000 --- a/hurd-talk.html +++ /dev/null @@ -1,1151 +0,0 @@ - - - -The GNU Hurd - GNU Project - Free Software Foundation (FSF) - - - - - - - - - - - - -
- [image of the Hurd logo] -[ - - - English -] -
-What's New

-ChangeLogs

-Documentation
-

-GNU Hurd

-Installation
-Getting Help
-Source Code
-Development
-History

-GNU Mach

-Installation
-Source Code

-GNU MIG

-Source Code

-Related Projects -

-
-

Table of Contents

- -
-

Talk about the Hurd

-

-This talk about the Hurd was written by Marcus Brinkmann for -

    -
  • OSDEM, Brussels, 4. Feb 2001, -
  • Frühjahrsfachgespräche, Cologne, 2. Mar 2001 and -
  • Libre Software Meeting, Bordeaux, 4. Jul 2001. -
- -

Introduction

-

-When we talk about free software, we usually refer to the free -software licenses. We also need relief from software patents, so our -freedom is not restricted by them. But there is a third type of -freedom we need, and that's user freedom. - -

-Expert users don't take a system as it is. They like to change the -configuration, and they want to run the software that works best for -them. That includes window managers as well as your favourite text -editor. But even on a GNU/Linux system consisting only of free -software, you can not easily use the filesystem format, network -protocol or binary format you want without special privileges. In -traditional unix systems, user freedom is severly restricted by the -system administrator. - -

-The Hurd removes these restrictions from the user. It provides an -user extensible system framework without giving up POSIX compatibility -and the unix security model. Throughout this talk, we will see that -this brings further advantages beside freedom. - -

Overview

-
- -

-The Hurd is a POSIX compatible multi-server -system operating on top of the GNU Mach microkernel. - -

-Topics: -

    -
  • GNU Mach
  • -
  • The Hurd
  • -
  • Development
  • -
  • Debian GNU/Hurd
  • -
-
- -

-The Hurd is a POSIX compatible multi-server system operating on top of -the GNU Mach Microkernel. - -

-I will have to explain what GNU Mach is, so we start with that. Then -I will talk about the Hurd's architecture. After that, I will give a -short overview on the Hurd libraries. Finally, I will tell you how -the Debian project is related to the Hurd. - -

Historicals

- -
-
    -
  • 1983: Richard Stallman founds the GNU project.
  • -
  • 1988: Decision is made to use Mach 3.0 as the kernel.
  • -
  • 1991: Mach 3.0 is released under compatible license.
  • -
  • 1991: Thomas Bushnell, BSG, founds the Hurd project.
  • -
  • 1994: The Hurd boots the first time.
  • -
  • 1997: Version 0.2 of the Hurd is released.

  • -
  • 1998: Debian hurd-i386 archive is created.
  • -
  • 2001: Debian GNU/Hurd snapshot fills three CD images.
  • -
-
- -

-When Richard Stallman founded the GNU project in 1983, he wanted to -write an operating system consisting only of free software. Very -soon, a lot of the essential tools were implemented, and released -under the GPL. However, one critical piece was missing: The kernel. -

-After considering several alternatives, it was decided not to write a -new kernel from scratch, but to start with the Mach microkernel. This -was in 1988, and it was not before 1991 that Mach was released under a -license allowing the GNU project to distribute it as a part of the -system. -

-In 1998, I started the Debian GNU/Hurd project, and in 2001 the number -of available GNU/Hurd packages fills three CD images. - -

Kernel Architectures

-
-

-Microkernel: -

    -
  • Enforces resource management (paging, scheduling)
  • -
  • Manages tasks
  • -
  • Implements message passing for IPC
  • -
  • Provides basic hardware support
  • -
-

-Monolithic kernel: -

    -
  • No message passing necessary
  • -
  • Rich set of features (filesystems, authentication, network - sockets, POSIX interface, ...)
  • -
-
-

-Microkernels were very popular in the scientific world around that -time. They don't implement a full operating system, but only the -infrastructure needed to enable other tasks to implement most -features. In contrast, monolithical kernels like Linux contain -program code of device drivers, network protocols, process management, -authentication, file systems, POSIX compatible interfaces and much -more. -

-So what are the basic facilities a microkernel provides? In general, -this is resource management and message passing. Resource management, -because the kernel task needs to run in a special privileged mode of -the processor, to be able to manipulate the memory management unit and -perform context switches (also to manage interrupts). Message -passing, because without a basic communication facility the other -tasks could not interact to provide the system services. Some -rudimentary hardware device support is often necessary to bootstrap -the system. So the basic jobs of a microkernel are enforcing the -paging policy (the actual paging can be done by an external pager -task), scheduling, message passing and probably basic hardware device -support. -

-Mach was the obvious choice back then, as it provides a rich set of -interfaces to get the job done. Beside a rather brain-dead device -interface, it provides tasks and threads, a messaging system allowing -synchronous and asynchronous operation and a complex interface for -external pagers. It's certainly not one of the sexiest microkernels -that exist today, but more like a big old mama. The GNU project -maintains its own version of Mach, called GNU Mach, which is based on -Mach 4.0. In addition to the features contained in Mach 4.0, the GNU -version contains many of the Linux 2.0 block device and network card -drivers. -

-A complete treatment of the differences between a microkernel and -monolithical kernel design can not be provided here. But a couple of -advantages of a microkernel design are fairly obvious. - -

Micro vs Monolithic

-
-

-Microkernel -

    -
  • Clear cut responsibilities -
  • Flexibility in operating system design, easier debugging
  • -
  • More stability (less code to break)
  • -
  • New features are not added to the kernel
  • -
-

-Monolithic kernel -

    -
  • Intolerance or creeping featuritis
  • -
  • Danger of spaghetti code
  • -
  • Small changes can have far reaching side effects
  • -
-
-

-Because the system is split up into several components, clean -interfaces have to be developed, and the responsibilities of each part -of the system must be clear. -

-Once a microkernel is written, it can be used as the base for several -different operating systems. Those can even run in parallel which -makes debugging easier. When porting, most of the hardware dependant -code is in the kernel. -

-Much of the code that doesn't need to run in the special kernel mode -of the processor is not part of the kernel, so stability increases -because there is simply less code to break. -

-New features are not added to the kernel, so there is no need to hold -the barrier high for new operating system features. -

-Compare this to a monolithical kernel, where you either suffer from -creeping featuritis or you are intolerant of new features (we see both -in the Linux kernel). -

-Because in a monolithical kernel, all parts of the kernel can access -all data structures in other parts, it is more likely that short cuts -are used to avoid the overhead of a clean interface. This leads to a -simple speed up of the kernel, but also makes it less comprehensible -and more error prone. A small change in one part of the kernel can -break remote other parts. - -

Single Server vs Multi Server

-
-

-Single Server -

    -
  • A single task implements the functionality of the operating system.
  • -
-

-Multi Server -

    -
  • Many tasks cooperate to provide the system's functionality.
  • -
  • One server provides only a small but well-defined part of the - whole system.
  • -
  • The responsibilities are distributed logically among the servers.
  • -
-

-A single-server system is comparable to a monolithic kernel system. It -has similar -advantages and disadvantages. -

-

-There exist a couple of operating systems based on Mach, but they all -have the same disadvantages as a monolithical kernel, because those -operating systems are implemented in one single process running on top -of the kernel. This process provides all the services a monolithical -kernel would provide. This doesn't make a whole lot of sense (the -only advantage is that you can probably run several of such isolated -single servers on the same machine). Those systems are also called -single-server systems. The Hurd is the only usable multi-server -system on top of Mach. In the Hurd, there are many server programs, -each one responsible for a unique service provided by the operating -system. These servers run as Mach tasks, and communicate using the -Mach message passing facilities. One of them does only provide a -small part of the functionality of the system, but together they build -up a complete and functional POSIX compatible operating system. - -

Multi Server is superior, ...

-
-

-Any multi-server has advantages over single-server: -

    -
  • Clear cut responsibilities
  • -
  • More stability: If one server dies, all others remain
  • -
  • Easier development cycle: Testing without reboot (or replacing - running servers), debugging with gdb
  • -
  • Easier to make changes and add new features -
-
-

-Using several servers has many advantages, if done right. If a file -system server for a mounted partition crashes, it doesn't take down -the whole system. Instead the partition is "unmounted", and -you can try to start the server again, probably debugging it this time -with gdb. The system is less prone to errors in individual -components, and over-all stability increases. The functionality of -the system can be extended by writing and starting new servers -dynamically. (Developing these new servers is easier for the reasons -just mentioned.) -

-But even in a multi-server system the barrier between the system and -the users remains, and special privileges are needed to cross it. We -have not achieved user freedom yet. - -

The Hurd even more so.

-
-

-The Hurd goes beyond all this, and allows users to write and run their -servers, too! -

    -
  • Users can replace system servers dynamically with their own - implementations.
  • -
  • Users can decide what parts of the remainder of the system they - want to use.
  • -
  • Users can extend the functionality of the system.
  • -
  • No mutual trust necessary to make use of other users - services.
  • -
  • Security of the system is not harmed by trusting users - services.
  • -
-
-

-To quote Thomas Bushnell, BSG, from his paper -``A new strategy towards OS -design'' (1996): -

-The GNU Hurd, by contrast, is designed to make the area of system code -as limited as possible. Programs are required to communicate only -with a few essential parts of the kernel; the rest of the system is -replaceable dynamically. Users can use whatever parts of the -remainder of the system they want, and can easily add components -themselves for other users to take advantage of. No mutual trust need -exist in advance for users to use each other's services, nor does the -system become vulnerable by trusting the services of arbitrary users. -
- -

-So the Hurd is a set of servers running on top of the Mach -micro-kernel, providing a POSIX compatible and extensible operating -system. What servers are there? What functionality do they provide, -and how do they cooperate? - -

Mach Inter Process Communication

-
-

-Ports are message queues which can be used as one-way communication -channels. -

    -
  • Port rights are receive, send or send-once
  • -
  • Exactly one receiver
  • -
  • Potentially many senders
  • -
-

-MIG provides remote procedure calls on top of Mach IPC. RPCs look like -function calls to the user. -

-

-Inter-process communication in Mach is based on the ports concept. A -port is a message queue, used as a one-way communication channel. In -addition to a port, you need a port right, which can be a send right, -receive right, or send-once right. Depending on the port right, you -are allowed to send messages to the server, receive messages from it, -or send just one single message. -

-For every port, there exists exactly one task holding the receive -right, but there can be no or many senders. The send-once right is -useful for clients expecting a response message. They can give a -send-once right to the reply port along with the message. The kernel -guarantees that at some point, a message will be received on the reply -port (this can be a notification that the server destroyed the -send-once right). -

-You don't need to know much about the format a message takes to be -able to use the Mach IPC. The Mach interface generator mig hides the -details of composing and sending a message, as well as receiving the -reply message. To the user, it just looks like a function call, but -in truth the message could be sent over a network to a server running -on a different computer. The set of remote procedure calls a server -provides is the public interface of this server. - - -

How to get a port?

-
-

-Traditional Mach: -

    -
  • Nameserver provides ports to all registered servers.
  • -
  • The nameserver port itself is provided by Mach.
  • -
  • Like a phone book: One list.
  • -
-

-The Hurd: -

    -
  • The filesystem is used as the server namespace.
  • -
  • Root directory port is inserted into each task.
  • -
  • The C library finds other ports with hurd_file_name_lookup, - performing a pathname resolution.
  • -
  • Like a tree of phone books.
  • -
-
-

-So how does one get a port to a server? You need something like a -phone book for server ports, or otherwise you can only talk to -yourself. In the original Mach system, a special nameserver is -dedicated to that job. A task could get a port to the nameserver from -the Mach kernel and ask it for a port (with send right) to a server -that registered itself with the nameserver at some earlier time. -

-In the Hurd, there is no nameserver. Instead, the filesystem is used -as the server namespace. This works because there is always a root -filesystem in the Hurd (remember that the Hurd is a POSIX compatible -system); this is an assumption the people who developed Mach couldn't -make, so they had to choose a different strategy. You can use the -function hurd_file_name_lookup, which is part of the C library, to get -a port to the server belonging to a filename. Then you can start to -send messages to the server in the usual way. - -

Example of hurd_file_name_lookup

-
-mach_port_t identity;
-mach_port_t pwserver;
-kern_return_t err;
-
-pwserver = hurd_file_name_lookup
-                ("/servers/password");
-
-err = password_check_user (pwserver,
-                           0 /* root */, "supass",
-                           &identity);
-
-

-As a concrete example, the special filename -/servers/password can be used to request a port to the -Hurd password server, which is responsible to check user provided -passwords. -

-(explanation of the example) - -

Pathname resolution example

-
-

-Task: Lookup /mnt/readme.txt where /mnt has a mounted filesystem. -

    -
  • The C library asks the root filesystem server about - /mnt/readme.txt.
  • -
  • The root filesystem returns a port to the mnt filesystem server - (matching /mnt) and the retry name - /readme.txt.
  • -
  • The C library asks the mnt filesystem server about - /readme.txt.
  • -
  • The mnt filesystem server returns a port to itself and records - that this port refers to the regular file - /readme.txt.
  • -
-
-

-The C library itself does not have a full list of all available -servers. Instead pathname resolution is used to traverse through a -tree of servers. In fact, filesystems themselves are implemented by -servers (let us ignore the chicken and egg problem here). So all the -C library can do is to ask the root filesystem server about the -filename provided by the user (assuming that the user wants to resolve -an absolute path), using the dir_lookup RPC. If the -filename refers to a regular file or directory on the filesystem, the -root filesystem server just returns a port to itself and records that -this port corresponds to the file or directory in question. But if a -prefix of the full path matches the path of a server the root -filesystem knows about, it returns to the C library a port to this -server and the remaining part of the pathname that couldn't be -resolved. The C library than has to retry and query the other server -about the remaining path component. Eventually, the C library will -either know that the remaining path can't be resolved by the last -server in the list, or get a valid port to the server in question. - -

Mapping the POSIX Interface

-
- - - - - - - - - - - - - - - - - - - -
FiledescriptorPort to server providing the file
fd = open(name,...)dir_lookup(..,name,..,&port)
-[pathname resolution]
read(fd, ...)io_read(port, ...)
write(fd, ...)io_write(port, ...)
fstat(fd, ...)io_stat(port, ...)
...
-
-

-It should by now be obvious that the port returned by the server can -be used to query the files status, content and other information from -the server, if good remote procedure calls to do that are defined and -implemented by it. This is exactly what happens. Whenever a file is -opened using the C libraries open() call, the C library -uses the above pathname resolution to get a port to a server providing -the file. Then it wraps a file descriptor around it. So in the Hurd, -for every open file descriptor there is a port to a server providing -this file. Many other C library calls like read() and -write() just call a corresponding RPC using the port -associated with the file descriptor. - -

File System Servers

-
-
    -
  • Provide file and directory services for ports (and more).
  • -
  • These ports are returned by a directory lookup.
  • -
  • Translate filesystem accesses through their root path (hence the - name translator).
  • -
  • The C library maps the POSIX file and directory interface (and - more) to RPCs to the filesystem servers ports, but also does work on - its own.
  • -
  • Any user can install file system servers on inodes they own.
  • -
-
-

-So we don't have a single phone book listing all servers, but rather a -tree of servers keeping track of each other. That's really like -calling your friend and asking for the phone number of the blond girl -at the party yesterday. He might refer you to a friend who hopefully -knows more about it. Then you have to retry. -

-This mechanism has huge advantages over a single nameserver. First, -note that standard unix permissions on directories can be used to -restrict access to a server (this requires that the filesystems -providing those directories behave). You just have to set the -permissions of a parent directory accordingly and provide no other way -to get a server port. -

-But there are much deeper implications. Most of all, a pathname never -directly refers to a file, it refers to a port of a server. That -means that providing a regular file with static data is just one of -the many options the server has to service requests on the file port. -A server can also create the data dynamically. For example, a server -associated with /dev/random can provide new random data -on every io_read() on the port to it. A server -associated with /dev/fortune can provide a new fortune -cookie on every open(). -

-While a regular filesystem server will just serve the data as stored -in a filesystem on disk, there are servers providing purely virtual -information, or a mixture of both. It is up to the server to behave -and provide consistent and useful data on each remote procedure call. -If it does not, the results may not match the expectations of the user -and confuse him. -

-A footnote from the Hurd info manual: -

-(1) You are lost in a maze of twisty little filesystems, all -alike.... -
-

-Because a server installed in the filesystem namespace translates all -filesystem operations that go through its root path, such a server is -also called "active translator". You can install translators using -the settrans command with the -a option. - -

Active vs Passive

-
-

-Active Translators: -

    -
  • "settrans -a /cdrom /hurd/isofs /dev/hd2"
  • -
  • Are running filesystem servers.
  • -
  • Are attached to the root node they translate.
  • -
  • Run as a normal process.
  • -
  • Go away with every reboot, or even time out.
  • -
-
-

-Many translator settings remain constant for a long time. It would be -very lame to always repeat the same couple of dozens settrans calls -manually or at boot time. So the Hurd provides a filesystem extension -that allows to store translator settings inside the filesystem and let -the filesystem servers do the work to start those servers on demand. -Such translator settings are called "passive translators". A passive -translator is really just a command line string stored in an inode of -the filesystem. If during a pathname resolution a server encounters -such a passive translator, and no active translator does exist already -(for this node), it will use this string to start up a new translator -for this inode, and then let the C library continue with the path -resolution as described above. Passive translators are installed with -settrans using the -p option (which is already the -default). - -
-

-Passive Translators: -

    -
  • "settrans /mnt /hurd/ext2fs /dev/hd1s1"
  • -
  • Are stored as command strings into an inode.
  • -
  • Are used to start a new active translator if there isn't - one.
  • -
  • Startup is transparent to the user.
  • -
  • Startup happens the first time the server is needed.
  • -
  • Are permanent across reboots (like file data).
  • -
-
-

-So passive translators also serve as a sort of automounting feature, -because no manual interaction is required. The server start up is -deferred until the service is need, and it is transparent to the user. -

-When starting up a passive translator, it will run as a normal process -with the same user and group id as those of the underlying inode. Any -user is allowed to install passive and active translators on inodes -that he owns. This way the user can install new servers into the -global namespace (for example, in his home or tmp directory) and thus -extend the functionality of the system (recall that servers can -implement other remote procedure calls beside those used for files and -directories). A careful design of the trusted system servers makes -sure that no permissions leak out. -

-In addition, users can provide their own implementations of some of -the system servers instead the system default. For example, they can -use their own exec server to start processes. The user specific exec -server could for example start java programs transparently (without -invoking the interpreter manually). This is done by setting the -environment variable EXECSERVERS. The systems default -exec server will evaluate this environment variable and forward the -RPC to each of the servers listed in turn, until some server accepts -it and takes over. The system default exec server will only do this -if there are no security implications. (XXX There are other ways to -start new programs than by using the system exec server. Those are -still available.) -

-Let's take a closer look at some of the Hurd servers. It was already -mentioned that only few system servers are mandatory for users. To -establish your identity within the Hurd system, you have to -communicate with the trusted systems authentication server -auth. To put the system administrator into control over -the system components, the process server does some global -bookkeeping. -

-But even these servers can be ignored. However, registration with the -authentication server is the only way to establish your identity -towards other system servers. Likewise, only tasks registered as -processes with the process server can make use of its services. - -

Authentication

-
-

-A user identity is just a port to an authserver. The auth server -stores four set of ids for it: -

    -
  • effective user ids
  • -
  • effective group ids
  • -
  • available user ids
  • -
  • available group ids
  • -
-

-Basic properties: -

    -
  • Any of these can be empty.
  • -
  • A 0 among the user ids identifies the superuser.
  • -
  • Effective ids are used to check if the user has the - permission.
  • -
  • Available ids can be turned into effective ids on user - request.
  • -
-
-

-The Hurd auth server is used to establish the identity of a user for a -server. Such an identity (which is just a port to the auth server) -consists of a set of effective user ids, a set of effective group ids, -a set of available user ids and a set of available group ids. Any of -these sets can be empty. - -

Operations on authentication ports

-
-

-The auth server provides the following operations on ports: -

    -
  • Merge the ids of two ports into a new one.
  • -
  • Return a new port containing a subset of the ids in a port.
  • -
  • Create a new port with arbitrary ids (superuser only).
  • -
  • Establish a trusted connection between users and servers.
  • -
-
-

-If you have two identities, you can merge them and request an identity -consisting of the unions of the sets from the auth server. You can -also create a new identity consisting only of subsets of an identity -you already have. What you can't do is extending your sets, unless -you are the superuser which is denoted by having the user id 0. - -

Establishing trusted connections

-
-
    -
  • User provides a rendezvous port to the server (with - io_reauthenticate).
  • -
  • User calls auth_user_authenticate on the - authentication port (his identity), passing the rendezvous port.
  • -
  • Server calls auth_server_authenticate on its - authentication port (to a trusted auth server), passing the - rendezvous port and the server port.
  • -
  • If both authentication servers are the same, it can match the - rendezvous ports and return the server port to the user and the user - ids to the server.
  • -
-
-

-Finally, the auth server can establish the identity of a user for a -server. This is done by exchanging a server port and a user identity -if both match the same rendezvous port. The server port will be -returned to the user, while the server is informed about the id sets -of the user. The server can then serve or reject subsequent RPCs by -the user on the server port, based on the identity it received from -the auth server. -

-Anyone can write a server conforming to the auth protocol, but of -course all system servers use a trusted system auth server to -establish the identity of a user. If the user is not using the system -auth server, matching the rendezvous port will fail and no server port -will be returned to the user. Because this practically requires all -programs to use the same auth server, the system auth server is -minimal in every respect, and additional functionality is moved -elsewhere, so user freedom is not unnecessarily restricted. - -

Password Server

-
-

-The password server /servers/password runs as root and -returns a new authentication port in exchange for a unix password. -

-The ids corresponding to the authentication port match the unix user -and group ids. -

-Support for shadow passwords is implemented here. -

-

-The password server sits at /servers/password and runs as -root. It can hand out ports to the auth server in exchange for a unix -password, matching it against the password or shadow file. Several -utilities make use of this server, so they don't need to be setuid -root. - -

Process Server

-
-

-The superuser must remain control over user tasks, so: -

    -
  • All mach tasks are associated with a PID in the system default - proc server.
  • -
-

-Optionally, user tasks can store: -

    -
  • Their environment variables.
  • -
  • Their argument vector.
  • -
  • A port, which others can request based on the PID (like a - nameserver).
  • -
-

-Also implemented in the proc server: -

    -
  • Sessions and process groups.
  • -
  • Global configuration not in Mach, like hostname, hostid, system - version.
  • -
-
-

-The process server is responsible for some global bookkeeping. As -such it has to be trusted and is not replaceable by the user. -However, a user is not required to use any of its service. In that -case the user will not be able to take advantage of the POSIXish -appearance of the Hurd. -

-The Mach Tasks are not as heavy as POSIX processes. For example, -there is no concept of process groups or sessions in Mach. The proc -server fills in the gap. It provides a PID for all Mach tasks, and -also stores the argument line, environment variables and other -information about a process (if the mach tasks provide them, which is -usually the case if you start a process with the default -fork()/exec()). A process can also register -a message port with the proc server, which can then be requested by -anyone. So the proc server also functions as a nameserver using the -process id as the name. -

-The proc server also stores some other miscellaneous information not -provided by Mach, like the hostname, hostid and system version. -Finally, it provides facilities to group processes and their ports -together, as well as to convert between pids, process server ports and -mach task ports. -
-

-User tasks not registering themselve with proc only have a PID assigned. -

-Users can run their own proc server in addition to the system default, -at least for those parts of the interface that don't require superuser -privileges. -

-

-Although the system default proc server can't be avoided (all Mach -tasks spawned by users will get a pid assigned, so the system -administrator can control them), users can run their own additional -process servers if they want, implementing the features not requiring -superuser privileges. - -

Filesystems

-
-

-Store based filesystems -

    -
  • ext2fs
  • -
  • ufs
  • -
  • isofs (iso9660, RockRidge, GNU extensions)
  • -
  • fatfs (under development)
  • -
-

-Network file systems -

    -
  • nfs
  • -
  • ftpfs
  • -
-

-Miscellaneous -

    -
  • hostmux
  • -
  • usermux
  • -
  • tmpfs (under development)
  • -
-
-

-We already talked about translators and the file system service they -provide. Currently, we have translators for the ext2, ufs and iso9660 -filesystems. We also have an nfs client and an ftp filesystem. -Especially the latter is intriguing, as it provides transparent access -to ftp servers in the filesystem. Programs can start to move away -from implementing a plethora of network protocols, as the files are -directly available in the filesystem through the standard POSIX file -interface. - - -

Developing the Hurd

-
-

-Over a dozen libraries support the development of new servers. -

-For special server types highly specialized -libraries require only the implementation of a -number of callback functions. -

    -
  • Use libdiskfs for store based filesystems.
  • -
  • Use libnetfs for network filesystems, also for - virtual filesystems.
  • -
  • Use libtrivfs for simple filesystems providing only - a single file or directory.
  • -
-
-

-The Hurd server protocols are complex enough to allow for the -implementation of a POSIX compatible system with GNU extensions. -However, a lot of code can be shared by all or at least similar -servers. For example, all storage based filesystems need to be able to -read and write to a store medium splitted in blocks. The Hurd comes -with several libraries which make it easy to implement new servers. -Also, there are already a lot of examples of different server types in -the Hurd. This makes writing a new server easier. -

-libdiskfs is a library that supports writing store based -filesystems like ext2fs or ufs. It is not very useful for filesystems -which are purely virtual, like /proc or files in -/dev. -

-libnetfs is intended for filesystems which provide a rich -directory hierarchy, but don't use a backing store (for example ftpfs, -nfs). -

-libtrivfs is intended for filesystems which just provide -a single inode or directory. Most servers which are not intended to -provide a filesystem but other services (like -/servers/password) use it to provide a dummy file, so -that file operations on the servers node will not return errors. But -it can also be used to provide meaningful data in a single file, like -a device store or a character device. - -

Store Abstraction

-
-

-Another very useful library is libstore, which is used by all store -based filesystems. It provides a store media abstraction. A store -consists of a store class and a name (which itself can sometimes -contain stores). -

-Primitive store classes: -

    -
  • device store like device:hd2, device:hd0s1, device:fd0
  • -
  • file store like file:/tmp/disk_image
  • -
  • task store like task:PID
  • -
  • zero store like zero:4m (like /dev/zero, of size 4 MB)
  • -
-
-
-

-Composed store classes: -

    -
  • copy store like copy:zero:4m
  • -
  • gunzip/bunzip2 store like gunzip:device:fd0
  • -
  • concat store like concat:device:hd0s2:device:hd1s5
  • -
  • ileave store (RAID-0(2))
  • -
  • remap store like remap:10+20,50+:file:/tmp/blocks
  • -
  • ...
  • -
-

-Wanted: A similar abstraction for streams (based on channels), which -can be used by network and character device servers. -

-

-libstore provides a store abstraction, which is used by -all store based filesystems. The store is determined by a type and a -name, but some store types modify another store rather than providing -a new store, and thus stores can be stacked. For example, the device -store type expects a Mach device, but the remap store expects a list -of blocks to pick from another store, like remap:1+:device:hd2, which -would pick all blocks from hd2 but the first one, which skipped. -Because this functionality is provided in a library, all libstore -using filesystems support many different store kinds, and adding a new -store type is enough to make all store based filesystems support it. - -

Debian GNU/Hurd

-
-

-Goal: -

    -
  • Provide a binary distribution of the Hurd that is easy to - install.
  • -
-

-Constraints: -

    -
  • Use the same source packages as Debian GNU/Linux.
  • -
  • Use the same infrastructure: -
      -
    • Policy
    • -
    • Archive
    • -
    • Bug tracking system
    • -
    • Release process
    • -
  • -
-

-Side Goal: -

    -
  • Prepare Debian for the future: -
      -
    • More flexibility in the base system
    • -
    • Identify dependencies on the Linux kernel
    • -
  • -
-
-

-The Debian distribution of the GNU Hurd that I started in 1998 is -supposed to become a complete binary distribution of the Hurd that is -easy to install. - -

Status of the Debian GNU/Hurd binary archive

-

-See -http://buildd.debian.org/stats/graph.png -for the most current version of the statistic. - -

Status of the Debian infrastructure

-
-

-Plus: -

    -
  • Source packages can identify build and host OS using - dpkg-architecture.
  • -
-

-Minus: -

    -
  • The binary architecture field is insufficient.
  • -
  • The BTS has no architecture tag.
  • -
  • The policy/FHS need (small) Hurd specific extensions.
  • -
-
-

-While good compatibiity can be achieved at the source level, -the binary packages can not always express their relationship -to the available architectures sufficiently. -

-For example, the Linux version of makedev is binary-all, where -a binary-all-linux relationship would be more appropriate. -

-More work has to be done here to fix the tools. - -

Status of the Debian Source archive

-
-
    -
  • Most packages just work.
  • -
  • Maintainers are usually responsive and cooperative.
  • -
  • Turtle, the autobuilder, crunches through the whole list right - now.
  • -
-

-Common pitfalls are POSIX incompatibilities: -

    -
  • Upstream: -
      -
    • Unconditional use of PATH_MAX - (MAXPATHLEN), MAXHOSTNAMELEN.
    • -
    • Unguarded use of Linux kernel features.
    • -
    • Use of legacy interfaces (sys_errlist, - termio).
    • -
  • -
  • Debian: -
      -
    • Unguarded activation of extensions available with Linux.
    • -
    • Low quality patches.
    • -
    • Assuming GNU/Linux in package scripts.
    • -
  • -
-
-

-Most packages are POSIX compatible and can be compiled without -changes on the Hurd. The maintainers of the Debian source packages -are usually very kind, responsiver and helpful. -

-The Turtle autobuilder software (http://turtle.sourceforge.net) -builds the Debian packages on the Hurd automatically. - -

Debian GNU/Hurd: Good idea, bad idea?

-
-

-Upstream benefits: -

    -
  • Software packages become more portable.
  • -
-

-Debian benefits: -

    -
  • Debian becomes more portable.
  • -
  • Maintainers learn about portability and other systems.
  • -
  • Debian gets a lot of public recognition.
  • -
-

-GNU/Hurd benefits: -

    -
  • Large software base.
  • -
  • Great infrastructure.
  • -
  • Nice community to partner with.
  • -
-
-

-The sheet lists the advantages of all groups involved. - -

End

-
-

-Join us at -

-
-

-List of contacts. - -

-Some of these links are at other web sites not maintained by the -FSF. The FSF is not responsible for the content of these other web sites. - -

- -
- -[ - - - English -] - -
- -

-Return to GNU's home page. -

- -Please send FSF & GNU inquiries & questions to - -gnu@gnu.org. -There are also other ways to -contact the FSF. -

- -Please send comments on these web pages to - -web-hurd@gnu.org, -send other questions to -gnu@gnu.org. -

-Copyright (C) 2001 Marcus Brinkmann <marcus@gnu.org> -

-Verbatim copying and distribution of this entire article is -permitted in any medium, provided this notice is preserved. -

-Updated: - -$Date$ $Author$ - -


- - diff --git a/hurd.mdwn b/hurd.mdwn index 61e83d21..3c65bb4e 100644 --- a/hurd.mdwn +++ b/hurd.mdwn @@ -53,8 +53,6 @@ in the *unstable* branch of the Debian archive. * [[Critique]] - Analysis * [[Hurd_Hacking_Guide]] * [[Concepts]] -* Other resources - * [Docs at gnu.org](http://www.gnu.org/software/hurd/docs.html) # Using diff --git a/hurd/authentication.mdwn b/hurd/authentication.mdwn index cbb164c8..14144d8e 100644 --- a/hurd/authentication.mdwn +++ b/hurd/authentication.mdwn @@ -10,7 +10,7 @@ is included in the section entitled UIDs on the Hurd are separate from processes. A process has [[capabilities|capability]] designating so-called UID vectors that -are implemented by an [[auth]] server. This +are implemented by an [[translator/auth]] server. This makes them easily [[virtualizable|virtualization]]. When a process wishes to gain access to a resource provided by a third diff --git a/hurd/critique.mdwn b/hurd/critique.mdwn index 9770138e..dacd7bb8 100644 --- a/hurd/critique.mdwn +++ b/hurd/critique.mdwn @@ -8,8 +8,8 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*A Critique of -the GNU Hurd Multi-Server Operating +Neal Walfield and Marcus Brinkmann wrote a paper titled [*A Critique of +the GNU Hurd Multi-server Operating System*](http://walfield.org/papers/200707-walfield-critique-of-the-GNU-Hurd.pdf). This was published in ACM SIGOPS Operating Systems Review in July 2007. This is sometimes referred to as *the critique*. diff --git a/hurd/documentation.mdwn b/hurd/documentation.mdwn index bb37a8be..a8c3a988 100644 --- a/hurd/documentation.mdwn +++ b/hurd/documentation.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +Free Software Foundation, Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,10 +9,53 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] +# Introductory Material + * [[What_Is_the_GNU_Hurd]] * [[Advantages]] * [[FAQ]] - * + * [[*Towards_a_New_Strategy_of_OS_Design*|hurd-paper]], an architectural + overview by Thomas Bushnell, BSG. + + * [[*The_Hurd*|hurd-talk]], a presentation by Marcus Brinkmann. + + * [[*A_Critique_of_the_GNU_Hurd_Multi-server_Operating_System*|critique]], an + analysis of the GNU Hurd on GNU Mach system, written by Neal Walfield and + Marcus Brinkmann. + +## External + + * [*Examining the Legendary HURD + Kernel*](http://www.informit.com/articles/printerfriendly.aspx?p=1180992), + an article by David Chisnall. + + Also covers a bit of GNU's and the Hurd's history, fundamental techniques + applied, comparisions to other systems. + + +# Development + + * *[[The_GNU_Hurd_Reference_Manual|reference_manual]]*. + + * The *[[Hurd_Hacking_Guide]]*, an introduction to GNU Hurd and Mach + programming by Wolfgang Jährling. + + * [*Manually Bootstrapping a + Translator*](http://walfield.org/pub/people/neal/papers/hurd-misc/manual-bootstrap.txt), + a text by Neal Walfield about how to *manually connect the translator to + the filesystem*. + + * [[*The_Authentication_Server*|auth]], the transcript of a talk about the + details of the authentication mechanisms in the Hurd by Wolfgang Jährling. + + * [*The Mach Paging Interface as Used by the + Hurd*](http://lists.gnu.org/archive/html/l4-hurd/2002-06/msg00001.html), a + text by Neal Walfield. + + * In the + [[Position_paper_*Improving_Usability_via_Access_Decomposition_and_Policy*|ng/position_paper]] + Neal Walfield and Marcus Brinkmann give an overview about how a future, + subsequent system may be architected. diff --git a/hurd/documentation/auth.html b/hurd/documentation/auth.html new file mode 100644 index 00000000..487fc1fe --- /dev/null +++ b/hurd/documentation/auth.html @@ -0,0 +1,168 @@ +[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] + +[[meta license="Verbatim copying and distribution of this entire article is +permitted in any medium, provided this notice is preserved."]] + +[[meta title="The Authentication Server, the transcript of a talk about the +details of the authentication mechanisms in the Hurd by Wolfgang Jährling"]] + +

Table of Contents

+ +
+ +

Introduction

+

+In this text, which mostly resembles the talk I gave at Libre Software +Meeting 2002 in Bordeaux, I will describe what the auth server does, +why it is so important and which cool things you can do with it, both +on the programming and the user side. I will also describe related +programs like the password and fakeauth servers. Note that this text +is targeted at programmers who want to understand the auth mechanism +in detail and are already familiar with concepts like Remote Procedure +Calls (RPCs) as well as the way User- and Group-IDs are used in the +POSIX world. + +

+The auth server is a very small server, therefore it gives a useful +example when you want to learn how a server typically looks like. One +reason why it is so small is that the auth interface, which it +implements, consists of only four RPCs. You can find the interface in +hurd/hurd/auth.defs and the server itself in hurd/auth/. + +

How IDs are represented and used

+

+Each process holds (usually) one port to auth (an auth_t in C source, +which actually is a mach_port_t, of course). The purpose of auth is +to manage User-IDs and Group-IDs, which is the reason why users often +will have no choice but to make use of the systems main auth server, +which does not listen on /servers/auth; instead you inherit a port to +auth from your parent process. Each such port is (internally in the +auth server) associated with a set of effective User- and Group-IDs as +well as a set of available User- and Group-IDs. So we have four sets +of IDs in total. The available IDs can be turned into corresponding +effective IDs at any time. + +

+When you send an auth_getids RPC on the port you hold, you will get +information about which IDs are associated with it, so you can figure +out which permissions you have. But how will a server know that you +have these permissions and therefore know which actions (e.g. writing +into file "foo") it is supposed to do on your behalf and which not? +The establishing of a trusted connection to a server works as follows: + +

    +
  1. A user wants a server to know its IDs
  2. +
  3. The user requests a reauthentication from the server
  4. +
  5. In this request the user will include a port
  6. +
  7. Both will hand this port to auth
  8. +
  9. The user uses auth_user_authenticate
  10. +
  11. The server uses auth_server_authenticate
  12. +
  13. The server also passes a new port to auth
  14. +
  15. auth matches these two requests
  16. +
  17. The user gets the new port from auth
  18. +
  19. The server learns about the IDs of the user
  20. +
  21. The user uses the new port for further communication
  22. +
+ +

+We have different RPCs for users and servers because what we pass and +what we get back differs for them: Users get a port, and servers get +the sets of IDs, and have to specify the port which the user will get. + +

+It is interesting to note that auth can match the requests by +comparing two integers, because when you get the same port from two +people, you will have the same mach_port_t (which is nothing but an +integer). + +

+All of this of course only works if they use the same auth server, +which is why I said often you have no choice other than to use the +one main auth server. But this is no serious restriction, as the auth server has +almost no functionality one might want to replace. In fact, there is +one replacement for the default auth implementation, but more on that +later. + +

POSIX and beyond

+

+Before we examine what is possible with this design, let us take a +short look at how the POSIX semantics are implemented on top of this +design. When a program that comes out of POSIX-land asks for its own +effective User- or Group-ID, we will tell it about the first of the +effective IDs. In the same sense, the POSIX real User- or Group-ID is +the first available ID and the POSIX saved User- or Group-ID is the +second available ID, which is why you have the same ID two times in +the available IDs when you log into your GNU/Hurd machine (you can +figure out which IDs you have with the program "ids", that basically +just does an auth_getauth RPC). When you lack one of those IDs (for +example when you have no effective Group-ID), a POSIX program asking +for this particular information will get "-1" as the ID. + +

+But as you can imagine, we can do more than what POSIX specifies. Fox +example, we can modify our permissions. This is always done with the +auth_makeauth RPC. In this RPC, you specify the IDs that should be +associated with the new port. All of these IDs must be associated +with either the port where the RPC is sent to or one of the additional +ports you can specify; an exception is the superuser root, which is +allowed to creat ports that are associated with arbitrary IDs. +Hereby you can convert available into effective IDs. + +

+This opens the door to a bunch of nice features. For example, we have +the addauth program in the Hurd, which makes it possible to add an ID +to either a single process or a group of processes if you hold the ID or know the +appropriate password, and there is a corresponding rmauth program that +removes an ID. So when you are working on your computer with GNU +Emacs and want to edit a system configuration file, you switch to +Emacs' shell-mode, do an "addauth root", enter the password, edit the +file, and when you are done switch back to shell-mode and do "rmauth +root". These programs have some interesting options, and there are +various other programs, for setting the complete list of IDs (setauth) +and so on. + +

Related servers

+

+Finally, I want to explain two servers which are related to auth. The +first is the password server, which listens on /servers/password. If +you pass to it a User- or Group-ID and the correct password for it, it +will return a port to auth to you which is associated with the ID you +passed to it. It can create such a port because it is running as +root. So let us assume you are an FTP server process. You will start +as root, because you want to use port 21 (in this case, "port" does +not refer to a mach_port_t, of course). But then, you can drop all +your permissions so that you run without any ID. This makes it far +less dangerous to communicate with yet unknown users over the +network. But when someone now hands a username and password to you, +you can ask the password server for a new auth port. The password +server will check the data you pass to it, for example by looking into +/etc/shadow, and if it is valid, it will ask the auth server for a new +port. It receives this port from auth and then passes it on to you. +So you have raised your permissions. (And for the very curious: Yes, +we are well aware of the differences between this concept and +capabilities; and we also do have some kinds of capabilities in +various parts of the Hurd.) + +

+My second example is the fakeauth server. It also implements the auth +protocol. It is the part of the fakeroot implementation that gives a +process the impression that it runs as root, even if it doesn't. So +when the process asks fakeauth about its own IDs, fakeauth will tell +the process that it runs as root. But when the process wants to make +use of the authentication protocol described earlier in this text, +fakeauth will forward the request to its own auth server, which will +usually be the systems main auth server, which will then be able to +match the auth_*_authenticate requests. So what fakeauth does is +acting as a proxy auth server that gives someone the impression to run +as root, while not modifying what that one is allowed to do. + +

+At this point, I have said at least most of what can be said about the +auth server and the protocol it implements, so I will finish by saying +that it might be an interesting task (for you) to modify some existing +software to take advantage of the features I described here. diff --git a/hurd/documentation/hurd-paper.html b/hurd/documentation/hurd-paper.html new file mode 100644 index 00000000..15d2daec --- /dev/null +++ b/hurd/documentation/hurd-paper.html @@ -0,0 +1,760 @@ +[[meta copyright="Copyright © 1996, 1997, 1998, 2007, 2008 Free Software +Foundation, Inc."]] + +[[meta license="Verbatim copying and distribution of this entire article is +permitted in any medium, provided this notice is preserved."]] + +[[meta title="Towards a New Strategy of OS Design, an architectural overview by +Thomas Bushnell, BSG."]] + + +This article explains why FSF is developing a new operating system named the +Hurd, which will be a foundation of the whole GNU system. +The Hurd is built +on top of CMU's Mach 3.0 kernel and uses Mach's virtual memory management and +message-passing facilities. +The GNU C Library will provide the Unix system +call interface, and will call the Hurd for needed services it can't provide +itself. +The design and implementation of the Hurd is being lead by Michael +Bushnell, with assistance from Richard Stallman, Roland McGrath, +Jan Brittenson, and others. + +

Part 1: A More Usable Approach to OS Design

+

+The fundamental purpose of an operating system (OS) is to enable a variety of +programs to share a single computer efficiently and productively. +This +demands memory protection, preemptively scheduled timesharing, coordinated +access to I/O peripherals, and other services. +In addition, an OS can allow +several users to share a computer. +In this case, efficiency demands services +that protect users from harming each other, enable them to share without +prior arrangement, and mediate access to physical devices. +

+On today's computer systems, programmers usually implement these goals +through a large program called the kernel. +Since this program must be +accessible to all user programs, it is the natural place to add functionality +to the system. +Since the only model for process interaction is that of +specific, individual services provided by the kernel, no one creates other +places to add functionality. +As time goes by, more and more is added to the +kernel. +

+A traditional system allows users to add components to a kernel only if they +both understand most of it and have a privileged status within the system. +Testing new components requires a much more painful edit-compile-debug cycle +than testing other programs. +It cannot be done while others are using the +system. +Bugs usually cause fatal system crashes, further disrupting others' +use of the system. +The entire kernel is usually non-pageable. +(There are +systems with pageable kernels, but deciding what can be paged is difficult +and error prone. +Usually the mechanisms are complex, making them difficult +to use even when adding simple extensions.) +

+Because of these restrictions, functionality which properly belongs +behind +the wall of a traditional kernel is usually left out of systems unless it is +absolutely mandatory. +Many good ideas, best done with an open/read/write +interface cannot be implemented because of the problems inherent in the +monolithic nature of a traditional system. +Further, even among those with +the endurance to implement new ideas, only those who are privileged users of +their computers can do so. +The software copyright system darkens the mire by +preventing unlicensed people from even reading the kernel source. +

+Some systems have tried to address these difficulties. +Smalltalk-80 and +the Lisp Machine both represented one method of getting around the problem. +System code is not distinguished from user code; all of the system is +accessible to the user and can be changed as need be. +Both systems were +built around languages that facilitated such easy replacement and extension, +and were moderately successful. +But they both were fairly poor at insulating +users and programs from each other, failing one of the principal goals of OS +design. +

+Most projects that use the Mach 3.0 kernel carry on the hard-to-change +tradition of OS design. +The internal structure is different, but the same +heavy barrier between user and system remains. +The single-servers, while +fairly easy to construct, inherit all the deficiencies of the monolithic +kernels. +

+A multi-server divides the kernel functionality up into logical blocks with +well-defined interfaces. +Properly done, it is easier to make changes and add +functionality. +So most multi-server projects do somewhat better. +Much more +of the system is pageable. +You can debug the system more easily. +You can +test new system components without interfering with other users. +But the +wall between user and system remains; no user can cross it without special +privilege. +

+The GNU Hurd, by contrast, is designed to make the area of +system +code as +limited as possible. +Programs are required to communicate only with a few +essential parts of the kernel; the rest of the system is replaceable +dynamically. +Users can use whatever parts of the remainder of the system +they want, and can easily add components themselves for other users to take +advantage of. +No mutual trust need exist in advance for users to use each +other's services, nor does the system become vulnerable by trusting the +services of arbitrary users. +

+This has been done by identifying those system components which users +must +use in order to communicate with each other. +One of these is responsible for +identifying users' identities and is called the + +authentication server. + +In +order to establish each other's identities, programs must communicate, each +with an authentication server they trust. +Another component establishes +control over system components by the superuser, provides global bookkeeping +operations, and is called the + +process server. + +

+Not all user programs need to communicate with the process server; it is only +necessary for programs which require its services. +Likewise, the +authentication server is only necessary for programs that wish to communicate +their identity to another. +None of the remaining services carry any special +status; not the network implementation, the filesystems, the program +execution mechanism (including setuid), or any others. + +

The Translator Mechanism

+

+The Hurd uses Mach ports primarily as methods for communicating between users +and servers. +(A Mach port is a communication point on a Mach task where +messages are sent and received.) Each port implements a particular set of +protocols, representing operations that can be undertaken on the underlying +object represented by the port. +Some of the protocols specified by the Hurd +are the I/O protocol, used for generic I/O operations; the file protocol, +used for filesystem operations; the socket protocol, used for network +operations; and the process protocol, used for manipulating processes et al. +

+Most servers are accessed by opening files. +Normally, when you open a file, +you create a port associated with that file that is owned by the server +that owns the directory containing the file. +For example, a disk-based +filesystem will normally serve a large number of ports, each of which +represents an open file or directory. +When a file is opened, the server +creates a new port, associates it with the file, and returns the port to the +calling program. +

+However, a file can have a +translator +associated with it. +In this case, +rather than return its own port which refers to the contents of the file, the +server executes a translator program associated with that file. +This +translator is given a port to the actual contents of the file, and is then +asked to return a port to the original user to complete the open operation. +

+This mechanism is used for +mount +by having a translator associated with +each mount point. +When a program opens the mount point, the translator (in +this case, a program which understands the disk format of the mounted +filesystem) is executed and returns a port to the program. +After the +translator is started, it need not be run again unless it dies; the parent +filesystem retains a port to the translator to use in further requests. +

+The owner of a file can associate a translator with it without special +permission. +This means that any program can be specified as a translator. +Obviously the system will not work properly if the translator does not +implement the file protocol correctly. +However, the Hurd is constructed so +that the worst possible consequence is an interruptible hang. +

+One way to use translators is to access hierarchically structured data using +the file protocol. +For example, all the complexity of the user interface to +the +ftp +program is removed. +Users need only know that a particular +directory represents FTP and can use all the standard file manipulation +commands (e.g +ls +or +cp) +to access the remote system, rather than learning +a new set. +Similarly, a simple translator could ease the complexity of +tar +or +gzip. +(Such transparent access would have some added cost, but it would +be convenient.) + +

Generic Services

+

+With translators, the filesystem can act as a rendezvous for interfaces which +are not similar to files. +Consider a service which implements some version +of the X protocol, using Mach messages as an underlying transport. +For each +X display, a file can be created with the appropriate program as its +translator. +X clients would open that file. +At that point, few file +operations would be useful (read and write, for example, would be useless), +but new operations ( +XCreateWindow +or +XDrawText) +might become meaningful. +In this case, the filesystem protocol is used only to manipulate +characteristics of the node used for the rendezvous. +The node need not +support I/O operations, though it should reply to any such messages with a +message_not_understood +return code. +

+This translator technique is used to contact most of the services in the Hurd +that are not structured like hierarchical filesystems. +For example, the +password server, which hands out authorization tags in exchange for +passwords, is contacted this way. +Network protocol servers are also +contacted in this fashion. +Roland McGrath thought up this use of translators. + +

Clever Filesystem Pictures

+

+In the Hurd, translators can also be used to present a filesystem-like view +of another part of the filesystem, with some semantics changed. +For example, +it would be nice to have a filesystem that cannot itself be changed, but +nonetheless records changed versions of its files elsewhere. +(This could be +useful for source code management.) +

+The Hurd will have a translator which creates a directory which is a +conceptual union of other directories, with collision resolution rules of +various sorts. +This can be used to present a single directory to users that +contains all the programs they would want to execute. +There are other useful +variations on this theme. + +

What The User Can Do

+

+No translator gains extra privilege by virtue of being hooked into the +filesystem. +Translators run with the uid of the owner of the file being +translated, and can only be set or changed by that owner. +The I/O and +filesystem protocols are carefully designed to allow their use by mutually +untrusting clients and servers. +Indeed, translators are just ordinary +programs. +The GNU C library has a variety of facilities to make common sorts +of translators easier to write. +

+Some translators may need special privileges, such as the password server or +translators which allow setuid execution. +These translators could be run by +anyone, but only if they are set on a root-owned node would they be able to +provide all their services successfully. +This is analogous to letting any +user call the +reboot +system call, but only honoring it if that user is root. + +

Why This Is So Different

+

+What this design provides is completely novel to the Unix world. +Until now, +OSs have kept huge portions of their functionality in the realm of system +code, thus preventing its modification and extension except in extreme need. +Users cannot replace parts of the system in their programs no matter how much +easier that would make their task, and system managers are loath to install +random tweaks off the net into their kernels. +

+In the Hurd, users can change almost all of the things that are decided for +them in advance by traditional systems. +In combination with the tremendous +control given by the Mach kernel over task address spaces and properties, the +Hurd provides a system in which users will, for the first time, be able to +replace parts of the system they dislike, without disrupting other users. +

+Most Mach-based OSs to date have mostly implemented a wider set of the + +same old + +Unix semantics in a new environment. +In contrast, GNU is extending +those semantics to allow users to improve, bypass, or replace them. + + +

Part 2: A Look at Some of the Hurd's Beasts

+

The Authentication Server

+

+One of the Hurd's more central servers is the authentication server. +Each +port to this server identifies a user and is associated by this server with +an +id block. +Each id block contains sets of user and group ids. +Either +set may be empty. +This server is not the same as the password server +referred to above. +

+The authentication server exports three services. +First, it provides simple +boolean operations on authentication ports: given two authentication ports, +this server will provide a third port representing the union of the two sets +of uids and gids. +Second, this server allows any user with a uid of zero to +create an arbitrary authentication port. +Finally, this server provides RPCs +(Remote Procedure Calls between different programs and possibly different +hosts) which allow mutually untrusting clients and servers to establish their +identities and pass initial information on each other. +This is crucial to +the security of the filesystem and I/O protocols. +

+Any user could write a program which implements the authentication protocol; +this does not violate the system's security. +When a service needs to +authenticate a user, it communicates with its trusted authentication server. +If that user is using a different authentication server, the transaction will +fail and the server can refuse to communicate further. +Because, in effect, +this forces all programs on the system to use the same authentication server, +we have designed its interface to make any safe operation possible, and to +include no extraneous operations. +(This is why there is a separate password +server.) +

The Process Server

+

+The process server acts as an information categorization repository. +There +are four main services supported by this server. +First, the process server +keeps track of generic host-level information not handled by the Mach kernel. +For example, the hostname, the hostid, and the system version are maintained +by the process server. +Second, this server maintains the Posix notions of +sessions and process groups, to help out programs that wish to use Posix +features. +

+Third, the process server maintains a one-to-one mapping between Mach tasks +and Hurd processes. +Every task is assigned a pid. +Processes can register a +message port with this server, which can then be given out to any program +which requests it. +This server makes no attempt to keep these message ports +private, so user programs are expected to implement whatever security they +need themselves. +(The GNU C Library provides convenient functions for all +this.) Processes can tell the process server their current `argv' and `envp' +values; this server will then provide, on request, these vectors of arguments +and environment. +This is useful for writing +ps-like +programs and also +makes it easier to hide or change this information. +None of these features +are mandatory. +Programs are free to disregard all of this and never register +themselves with the process server at all. +They will, however, still have a +pid assigned. +

+Finally, the process server implements +process collections, +which are used +to collect a number of process message ports at the same time. +Also, +facilities are provided for converting between pids, process server ports, +and Mach task ports, while ensuring the security of the ports managed. +

+It is important to stress that the process server is optional. +Because of +restrictions in Mach, programs must run as root in order to identify all the +tasks in the system. +But given that, multiple process servers could +co-exist, each with their own clients, giving their own model of the +universe. +Those process server features which do not require root privileges +to be implemented could be done as per-user servers. +The user's hands are +not tied. +

Transparent FTP

+

+Transparent FTP is an intriguing idea whose time has come. +The popular +ange-ftp +package available for GNU Emacs makes access to FTP files +virtually transparent to all the Emacs file manipulation functions. +Transparent FTP does the same thing, but in a system wide fashion. +This +server is not yet written; the details remain to be fleshed out, and will +doubtless change with experience. +

+In a BSD kernel, a transparent FTP filesystem would be no harder to write +than in the Hurd. +But mention the idea to a BSD kernel hacker, and the +response is that ``such a thing doesn't belong in the kernel''. +In a sense, +this is correct. +It violates all the layering principles of such systems to +place such things in the kernel. +The unfortunate side effect, however, is +that the design methodology (which is based on preventing users from changing +things they don't like) is being used to prevent system designers from making +things better. +(Recent BSD kernels make it possible to write a user program +that provides transparent FTP. +An example is +alex, +but it needs to run +with full root privileges.) +

+In the Hurd, there are no obstacles to doing transparent FTP. +A translator +will be provided for the node +/ftp. +The contents of +/ftp +will probably +not be directly listable, though further subdirectories will be. +There will +be a variety of possible formats. +For example, to access files on uunet, one +could + +cd /ftp/ftp.uu.net:anonymous:mib@gnu. + +Or to access files on a remote +account, one might + +cd /ftp/gnu.org:mib:passwd. + +Parts of this +command could be left out and the transparent FTP program would read them +from a user's +.netrc +file. +In the last case, one might just + +cd /ftp/gnu.org; + +when the rest of the data is already in +.netrc. +

+There is no need to do a +cd +first--use any file command. +To find out about +RFC 1097 (the Telnet Subliminal Message Option), just type + +more /ftp/ftp.uu.net/inet/rfc/rfc1097. + +A copy command to a local disk +could be used if the RFC would be read frequently. +

Filesystems

+

+Ordinary filesystems are also being implemented. +The initial release of the +Hurd will contain a filesystem upwardly compatible with the BSD 4.4 Fast File +System. +In addition to the ordinary semantics, it will provide means to +record translators, offer thirty-two bit user ids and group ids, and supply a +new id per file, called the +author +of the file, which can be set by the +owner arbitrarily. +In addition, because users in the Hurd can have multiple +uids (or even none), there is an additional set of permission bits providing +access control for + +unknown user + +(no uids) as distinct from + +known but arbitrary user + +(some uids: the existing +world +category of file +permissions). +

+The Network File System protocol will be implemented using 4.4 BSD as a +starting point. +A log-structured filesystem will also be implemented using +the same ideas as in Sprite, but probably not the same format. +A GNU network +file protocol may be designed in time, or NFS may be extended to remove its +deficiencies. +There will also be various ``little'' filesystems, such as the +MS-DOS filesystem, to help people move files between GNU and other OSs. + +

Terminals

+

+An I/O server will provide the terminal semantics of Posix. +The GNU C +Library has features for keeping track of the controlling terminal and for +arranging to have proper job control signals sent at the proper times, as +well as features for obeying keyboard and hangup signals. +

+Programs will be able to insert a terminal driver into communications +channels in a variety of ways. +Servers like +rlogind +will be able to insert +the terminal protocol onto their network communication port. +Pseudo-terminals will not be necessary, though they will be provided for +backward compatibility with older programs. +No programs in GNU will depend +on them. +

+Nothing about a terminal driver is forced upon users. +A terminal driver +allows a user to get at the underlying communications channel easily, to +bypass itself on an as-needed basis or altogether, or to substitute a +different terminal driver-like program. +In the last case, provided the +alternate program implements the necessary interfaces, it will be used by the +C Library exactly as if it were the ordinary terminal driver. +

+Because of this flexibility, the original terminal driver will not provide +complex line editing features, restricting itself to the behavior found in +Posix and BSD. +In time, there will be a +readline-based +terminal driver, +which will provide complex line-editing features for those users who want +them. +

+The terminal driver will probably not provide good support for the +high-volume, rapid data transmission required by UUCP or SLIP. +Those +programs do not need any of its features. +Instead they will be using the +underlying Mach device ports for terminals, which support moving large +amounts of data efficiently. + +

Executing Programs

+

+The implementation of the +execve +call is spread across three programs. +The +library marshals the argument and environment vectors. +It then sends a +message to the file server that holds the file to be executed. +The file +server checks execute permissions and makes whatever changes it desires in +the exec call. +For example, if the file is marked setuid and the fileserver +has the ability, it will change the user identification of the new image. +The file server also decides if programs which had access to the old task +should continue to have access to the new task. +If the file server is +augmenting permissions, or executing an unreadable image, then the exec needs +to take place in a new Mach task to maintain security. +

+After deciding the policy associated with the new image, the filesystem calls +the exec server to load the task. +This server, using the BFD (Binary File +Descriptor) library, loads the image. +BFD supports a large number of object +file formats; almost any supported format will be executable. +This server +also handles scripts starting with +#!, +running them through the indicated +program. +

+The standard exec server also looks at the environment of the new image; if +it contains a variable +EXECSERVERS +then it uses the programs specified +there as exec servers instead of the system default. +(This is, of course, +not done for execs that the file server has requested be kept secure.) +

+The new image starts running in the GNU C Library, which sends a message to +the exec server to get the arguments, environment, umask, current directory, +etc. +None of this additional state is special to the file or exec servers; +if programs wish, they can use it in a different manner than the Library. + +

New Processes

+

+The +fork +call is implemented almost entirely in the GNU C Library. +The new +task is created by Mach kernel calls. +The C Library arranges to have its +image inherited properly. +The new task is registered with the process server +(though this is not mandatory). +The C Library provides vectors of functions +to be called at fork time: one vector to be called before the fork, one after +in the parent, and one after in the child. +(These features should not be +used to replace the normal fork-calling sequence; it is intended for +libraries which need to close ports or clean up before a fork occurs.) +The C +library will implement both fork calls specified by the draft Posix.4a (the +proposed standard dealing with the threads extension to the real-time +extension). +

+Nothing forces the user to create new tasks this way. +If a program wants to +use almost the normal fork, but with some special characteristics, then it +can do so. +Hooks will be provided by the C Library, or the function can even +be completely replaced. +None of this is possible in a traditional Unix +system. + +

Asynchronous Messages

+

+As mentioned above, the process server maintains a + +message port + +for each +task registered with it. +These ports are public, and are used to send +asynchronous messages to the task. +Signals, for example, are sent to the +message port. +The signal message also provides a port as an indication that +the sender should be trusted to send the signal. +The GNU C Library lists a +variety of ports in a table, each of which identifies a set of signals that +can be sent by anyone who possesses that port. +For example, if the user +possesses the task's kernel port, it is allowed to send any signal. +If the +user possesses a special + +terminal id + +port, it is allowed to send the +keyboard and hangup signals. +Users can add arbitrary new entries into the C +library's signal permissions table. +

+When a process's process group changes, the process server will send it a +message indicating the new process group. +In this case, the process server +proves its authority by providing the task's kernel port. +

+The C library also has messages to add and delete uids currently used by the +process. +If new uids are sent to the program, the library adds them to its +current set, and then exchanges messages with all the I/O servers it knows +about, proving to them its new authorization. +Similarly, a message can +delete uids. +In the latter case, the caller must provide the process's task +port. +(You can't harm a process by giving it extra permission, but you can +harm it by taking permission away.) The Hurd will provide user programs to +send these messages to processes. +For example, the +su +command will be able +to cause all the programs in your current login session, to gain a new uid, +rather than spawn a subshell. +

+The C library will allow programs to add asynchronous messages they wish to +recognize, as well as prevent recognition of the standard set. +

Making It Look Like Unix

+

+The C Library will implement all of the calls from BSD and Posix as well as +some obvious extensions to them. +This enables users to replace those calls +they dislike or bypass them entirely, whereas in Unix the calls must be used +``as they come'' with no alternatives possible. +

+In some environments binary compatibility will also be supported. +This works +by building a special version of the library which is then loaded somewhere +in the address space of the process. +(For example, on a VAX, it would be +tucked in above the stack.) A feature of Mach, called system call +redirection, is then used to trap Unix system calls and turn them into jumps +into this special version of the library. +(On almost all machines, the cost +of such a redirection is very small; this is a highly optimized path in Mach. +On a 386 it's about two dozen instructions. +This is little worse than a +simple procedure call.) +

+Many features of Unix, such as signal masks and vectors, are handled +completely by the library. +This makes such features significantly cheaper +than in Unix. +It is now reasonable to use +sigblock +extensively to protect +critical sections, rather than seeking out some other, less expensive method. + +

Network Protocols

+

+The Hurd will have a library that will make it very easy to port 4.4 BSD +protocol stacks into the Hurd. +This will enable operation, virtually for +free, of all the protocols supported by BSD. +Currently, this includes the +CCITT protocols, the TCP/IP protocols, the Xerox NS protocols, and the ISO +protocols. +

+For optimal performance some work would be necessary to take advantage of +Hurd features that provide for very high speed I/O. +For most protocols this +will require some thought, but not too much time. +The Hurd will run the +TCP/IP protocols as efficiently as possible. +

+As an interesting example of the flexibility of the Hurd design, consider the +case of IP trailers, used extensively in BSD for performance. +While the Hurd +will be willing to send and receive trailers, it will gain fairly little +advantage in doing so because there is no requirement that data be copied and +avoiding copies for page-aligned data is irrelevant. diff --git a/hurd/documentation/hurd-talk.html b/hurd/documentation/hurd-talk.html new file mode 100644 index 00000000..d608e12a --- /dev/null +++ b/hurd/documentation/hurd-talk.html @@ -0,0 +1,1061 @@ +[[meta copyright="Copyright © 2001 Marcus Brinkmann"]] + +[[meta license="Verbatim copying and distribution of this entire article is +permitted in any medium, provided this notice is preserved."]] + +[[meta title="The Hurd, a presentation by Marcus Brinkmann"]] + + +

Table of Contents

+ +
+

Talk about the Hurd

+

+This talk about the Hurd was written by Marcus Brinkmann for +

    +
  • OSDEM, Brussels, 4. Feb 2001, +
  • Frühjahrsfachgespräche, Cologne, 2. Mar 2001 and +
  • Libre Software Meeting, Bordeaux, 4. Jul 2001. +
+ +

Introduction

+

+When we talk about free software, we usually refer to the free +software licenses. We also need relief from software patents, so our +freedom is not restricted by them. But there is a third type of +freedom we need, and that's user freedom. + +

+Expert users don't take a system as it is. They like to change the +configuration, and they want to run the software that works best for +them. That includes window managers as well as your favourite text +editor. But even on a GNU/Linux system consisting only of free +software, you can not easily use the filesystem format, network +protocol or binary format you want without special privileges. In +traditional unix systems, user freedom is severly restricted by the +system administrator. + +

+The Hurd removes these restrictions from the user. It provides an +user extensible system framework without giving up POSIX compatibility +and the unix security model. Throughout this talk, we will see that +this brings further advantages beside freedom. + +

Overview

+
+ +

+The Hurd is a POSIX compatible multi-server +system operating on top of the GNU Mach microkernel. + +

+Topics: +

    +
  • GNU Mach
  • +
  • The Hurd
  • +
  • Development
  • +
  • Debian GNU/Hurd
  • +
+
+ +

+The Hurd is a POSIX compatible multi-server system operating on top of +the GNU Mach Microkernel. + +

+I will have to explain what GNU Mach is, so we start with that. Then +I will talk about the Hurd's architecture. After that, I will give a +short overview on the Hurd libraries. Finally, I will tell you how +the Debian project is related to the Hurd. + +

Historicals

+ +
+
    +
  • 1983: Richard Stallman founds the GNU project.
  • +
  • 1988: Decision is made to use Mach 3.0 as the kernel.
  • +
  • 1991: Mach 3.0 is released under compatible license.
  • +
  • 1991: Thomas Bushnell, BSG, founds the Hurd project.
  • +
  • 1994: The Hurd boots the first time.
  • +
  • 1997: Version 0.2 of the Hurd is released.

  • +
  • 1998: Debian hurd-i386 archive is created.
  • +
  • 2001: Debian GNU/Hurd snapshot fills three CD images.
  • +
+
+ +

+When Richard Stallman founded the GNU project in 1983, he wanted to +write an operating system consisting only of free software. Very +soon, a lot of the essential tools were implemented, and released +under the GPL. However, one critical piece was missing: The kernel. +

+After considering several alternatives, it was decided not to write a +new kernel from scratch, but to start with the Mach microkernel. This +was in 1988, and it was not before 1991 that Mach was released under a +license allowing the GNU project to distribute it as a part of the +system. +

+In 1998, I started the Debian GNU/Hurd project, and in 2001 the number +of available GNU/Hurd packages fills three CD images. + +

Kernel Architectures

+
+

+Microkernel: +

    +
  • Enforces resource management (paging, scheduling)
  • +
  • Manages tasks
  • +
  • Implements message passing for IPC
  • +
  • Provides basic hardware support
  • +
+

+Monolithic kernel: +

    +
  • No message passing necessary
  • +
  • Rich set of features (filesystems, authentication, network + sockets, POSIX interface, ...)
  • +
+
+

+Microkernels were very popular in the scientific world around that +time. They don't implement a full operating system, but only the +infrastructure needed to enable other tasks to implement most +features. In contrast, monolithical kernels like Linux contain +program code of device drivers, network protocols, process management, +authentication, file systems, POSIX compatible interfaces and much +more. +

+So what are the basic facilities a microkernel provides? In general, +this is resource management and message passing. Resource management, +because the kernel task needs to run in a special privileged mode of +the processor, to be able to manipulate the memory management unit and +perform context switches (also to manage interrupts). Message +passing, because without a basic communication facility the other +tasks could not interact to provide the system services. Some +rudimentary hardware device support is often necessary to bootstrap +the system. So the basic jobs of a microkernel are enforcing the +paging policy (the actual paging can be done by an external pager +task), scheduling, message passing and probably basic hardware device +support. +

+Mach was the obvious choice back then, as it provides a rich set of +interfaces to get the job done. Beside a rather brain-dead device +interface, it provides tasks and threads, a messaging system allowing +synchronous and asynchronous operation and a complex interface for +external pagers. It's certainly not one of the sexiest microkernels +that exist today, but more like a big old mama. The GNU project +maintains its own version of Mach, called GNU Mach, which is based on +Mach 4.0. In addition to the features contained in Mach 4.0, the GNU +version contains many of the Linux 2.0 block device and network card +drivers. +

+A complete treatment of the differences between a microkernel and +monolithical kernel design can not be provided here. But a couple of +advantages of a microkernel design are fairly obvious. + +

Micro vs Monolithic

+
+

+Microkernel +

    +
  • Clear cut responsibilities +
  • Flexibility in operating system design, easier debugging
  • +
  • More stability (less code to break)
  • +
  • New features are not added to the kernel
  • +
+

+Monolithic kernel +

    +
  • Intolerance or creeping featuritis
  • +
  • Danger of spaghetti code
  • +
  • Small changes can have far reaching side effects
  • +
+
+

+Because the system is split up into several components, clean +interfaces have to be developed, and the responsibilities of each part +of the system must be clear. +

+Once a microkernel is written, it can be used as the base for several +different operating systems. Those can even run in parallel which +makes debugging easier. When porting, most of the hardware dependant +code is in the kernel. +

+Much of the code that doesn't need to run in the special kernel mode +of the processor is not part of the kernel, so stability increases +because there is simply less code to break. +

+New features are not added to the kernel, so there is no need to hold +the barrier high for new operating system features. +

+Compare this to a monolithical kernel, where you either suffer from +creeping featuritis or you are intolerant of new features (we see both +in the Linux kernel). +

+Because in a monolithical kernel, all parts of the kernel can access +all data structures in other parts, it is more likely that short cuts +are used to avoid the overhead of a clean interface. This leads to a +simple speed up of the kernel, but also makes it less comprehensible +and more error prone. A small change in one part of the kernel can +break remote other parts. + +

Single Server vs Multi Server

+
+

+Single Server +

    +
  • A single task implements the functionality of the operating system.
  • +
+

+Multi Server +

    +
  • Many tasks cooperate to provide the system's functionality.
  • +
  • One server provides only a small but well-defined part of the + whole system.
  • +
  • The responsibilities are distributed logically among the servers.
  • +
+

+A single-server system is comparable to a monolithic kernel system. It +has similar +advantages and disadvantages. +

+

+There exist a couple of operating systems based on Mach, but they all +have the same disadvantages as a monolithical kernel, because those +operating systems are implemented in one single process running on top +of the kernel. This process provides all the services a monolithical +kernel would provide. This doesn't make a whole lot of sense (the +only advantage is that you can probably run several of such isolated +single servers on the same machine). Those systems are also called +single-server systems. The Hurd is the only usable multi-server +system on top of Mach. In the Hurd, there are many server programs, +each one responsible for a unique service provided by the operating +system. These servers run as Mach tasks, and communicate using the +Mach message passing facilities. One of them does only provide a +small part of the functionality of the system, but together they build +up a complete and functional POSIX compatible operating system. + +

Multi Server is superior, ...

+
+

+Any multi-server has advantages over single-server: +

    +
  • Clear cut responsibilities
  • +
  • More stability: If one server dies, all others remain
  • +
  • Easier development cycle: Testing without reboot (or replacing + running servers), debugging with gdb
  • +
  • Easier to make changes and add new features +
+
+

+Using several servers has many advantages, if done right. If a file +system server for a mounted partition crashes, it doesn't take down +the whole system. Instead the partition is "unmounted", and +you can try to start the server again, probably debugging it this time +with gdb. The system is less prone to errors in individual +components, and over-all stability increases. The functionality of +the system can be extended by writing and starting new servers +dynamically. (Developing these new servers is easier for the reasons +just mentioned.) +

+But even in a multi-server system the barrier between the system and +the users remains, and special privileges are needed to cross it. We +have not achieved user freedom yet. + +

The Hurd even more so.

+
+

+The Hurd goes beyond all this, and allows users to write and run their +servers, too! +

    +
  • Users can replace system servers dynamically with their own + implementations.
  • +
  • Users can decide what parts of the remainder of the system they + want to use.
  • +
  • Users can extend the functionality of the system.
  • +
  • No mutual trust necessary to make use of other users + services.
  • +
  • Security of the system is not harmed by trusting users + services.
  • +
+
+

+To quote Thomas Bushnell, BSG, from his paper +[[``Towards_a_New_Strategy_of_OS_design''_(1996)|hurd-paper]]: +

+The GNU Hurd, by contrast, is designed to make the area of system code +as limited as possible. Programs are required to communicate only +with a few essential parts of the kernel; the rest of the system is +replaceable dynamically. Users can use whatever parts of the +remainder of the system they want, and can easily add components +themselves for other users to take advantage of. No mutual trust need +exist in advance for users to use each other's services, nor does the +system become vulnerable by trusting the services of arbitrary users. +
+ +

+So the Hurd is a set of servers running on top of the Mach +micro-kernel, providing a POSIX compatible and extensible operating +system. What servers are there? What functionality do they provide, +and how do they cooperate? + +

Mach Inter Process Communication

+
+

+Ports are message queues which can be used as one-way communication +channels. +

    +
  • Port rights are receive, send or send-once
  • +
  • Exactly one receiver
  • +
  • Potentially many senders
  • +
+

+MIG provides remote procedure calls on top of Mach IPC. RPCs look like +function calls to the user. +

+

+Inter-process communication in Mach is based on the ports concept. A +port is a message queue, used as a one-way communication channel. In +addition to a port, you need a port right, which can be a send right, +receive right, or send-once right. Depending on the port right, you +are allowed to send messages to the server, receive messages from it, +or send just one single message. +

+For every port, there exists exactly one task holding the receive +right, but there can be no or many senders. The send-once right is +useful for clients expecting a response message. They can give a +send-once right to the reply port along with the message. The kernel +guarantees that at some point, a message will be received on the reply +port (this can be a notification that the server destroyed the +send-once right). +

+You don't need to know much about the format a message takes to be +able to use the Mach IPC. The Mach interface generator mig hides the +details of composing and sending a message, as well as receiving the +reply message. To the user, it just looks like a function call, but +in truth the message could be sent over a network to a server running +on a different computer. The set of remote procedure calls a server +provides is the public interface of this server. + + +

How to get a port?

+
+

+Traditional Mach: +

    +
  • Nameserver provides ports to all registered servers.
  • +
  • The nameserver port itself is provided by Mach.
  • +
  • Like a phone book: One list.
  • +
+

+The Hurd: +

    +
  • The filesystem is used as the server namespace.
  • +
  • Root directory port is inserted into each task.
  • +
  • The C library finds other ports with hurd_file_name_lookup, + performing a pathname resolution.
  • +
  • Like a tree of phone books.
  • +
+
+

+So how does one get a port to a server? You need something like a +phone book for server ports, or otherwise you can only talk to +yourself. In the original Mach system, a special nameserver is +dedicated to that job. A task could get a port to the nameserver from +the Mach kernel and ask it for a port (with send right) to a server +that registered itself with the nameserver at some earlier time. +

+In the Hurd, there is no nameserver. Instead, the filesystem is used +as the server namespace. This works because there is always a root +filesystem in the Hurd (remember that the Hurd is a POSIX compatible +system); this is an assumption the people who developed Mach couldn't +make, so they had to choose a different strategy. You can use the +function hurd_file_name_lookup, which is part of the C library, to get +a port to the server belonging to a filename. Then you can start to +send messages to the server in the usual way. + +

Example of hurd_file_name_lookup

+
+mach_port_t identity;
+mach_port_t pwserver;
+kern_return_t err;
+
+pwserver = hurd_file_name_lookup
+                ("/servers/password");
+
+err = password_check_user (pwserver,
+                           0 /* root */, "supass",
+                           &identity);
+
+

+As a concrete example, the special filename +/servers/password can be used to request a port to the +Hurd password server, which is responsible to check user provided +passwords. +

+(explanation of the example) + +

Pathname resolution example

+
+

+Task: Lookup /mnt/readme.txt where /mnt has a mounted filesystem. +

    +
  • The C library asks the root filesystem server about + /mnt/readme.txt.
  • +
  • The root filesystem returns a port to the mnt filesystem server + (matching /mnt) and the retry name + /readme.txt.
  • +
  • The C library asks the mnt filesystem server about + /readme.txt.
  • +
  • The mnt filesystem server returns a port to itself and records + that this port refers to the regular file + /readme.txt.
  • +
+
+

+The C library itself does not have a full list of all available +servers. Instead pathname resolution is used to traverse through a +tree of servers. In fact, filesystems themselves are implemented by +servers (let us ignore the chicken and egg problem here). So all the +C library can do is to ask the root filesystem server about the +filename provided by the user (assuming that the user wants to resolve +an absolute path), using the dir_lookup RPC. If the +filename refers to a regular file or directory on the filesystem, the +root filesystem server just returns a port to itself and records that +this port corresponds to the file or directory in question. But if a +prefix of the full path matches the path of a server the root +filesystem knows about, it returns to the C library a port to this +server and the remaining part of the pathname that couldn't be +resolved. The C library than has to retry and query the other server +about the remaining path component. Eventually, the C library will +either know that the remaining path can't be resolved by the last +server in the list, or get a valid port to the server in question. + +

Mapping the POSIX Interface

+
+ + + + + + + + + + + + + + + + + + + +
FiledescriptorPort to server providing the file
fd = open(name,...)dir_lookup(..,name,..,&port)
+[pathname resolution]
read(fd, ...)io_read(port, ...)
write(fd, ...)io_write(port, ...)
fstat(fd, ...)io_stat(port, ...)
...
+
+

+It should by now be obvious that the port returned by the server can +be used to query the files status, content and other information from +the server, if good remote procedure calls to do that are defined and +implemented by it. This is exactly what happens. Whenever a file is +opened using the C libraries open() call, the C library +uses the above pathname resolution to get a port to a server providing +the file. Then it wraps a file descriptor around it. So in the Hurd, +for every open file descriptor there is a port to a server providing +this file. Many other C library calls like read() and +write() just call a corresponding RPC using the port +associated with the file descriptor. + +

File System Servers

+
+
    +
  • Provide file and directory services for ports (and more).
  • +
  • These ports are returned by a directory lookup.
  • +
  • Translate filesystem accesses through their root path (hence the + name translator).
  • +
  • The C library maps the POSIX file and directory interface (and + more) to RPCs to the filesystem servers ports, but also does work on + its own.
  • +
  • Any user can install file system servers on inodes they own.
  • +
+
+

+So we don't have a single phone book listing all servers, but rather a +tree of servers keeping track of each other. That's really like +calling your friend and asking for the phone number of the blond girl +at the party yesterday. He might refer you to a friend who hopefully +knows more about it. Then you have to retry. +

+This mechanism has huge advantages over a single nameserver. First, +note that standard unix permissions on directories can be used to +restrict access to a server (this requires that the filesystems +providing those directories behave). You just have to set the +permissions of a parent directory accordingly and provide no other way +to get a server port. +

+But there are much deeper implications. Most of all, a pathname never +directly refers to a file, it refers to a port of a server. That +means that providing a regular file with static data is just one of +the many options the server has to service requests on the file port. +A server can also create the data dynamically. For example, a server +associated with /dev/random can provide new random data +on every io_read() on the port to it. A server +associated with /dev/fortune can provide a new fortune +cookie on every open(). +

+While a regular filesystem server will just serve the data as stored +in a filesystem on disk, there are servers providing purely virtual +information, or a mixture of both. It is up to the server to behave +and provide consistent and useful data on each remote procedure call. +If it does not, the results may not match the expectations of the user +and confuse him. +

+A footnote from the Hurd info manual: +

+(1) You are lost in a maze of twisty little filesystems, all +alike.... +
+

+Because a server installed in the filesystem namespace translates all +filesystem operations that go through its root path, such a server is +also called "active translator". You can install translators using +the settrans command with the -a option. + +

Active vs Passive

+
+

+Active Translators: +

    +
  • "settrans -a /cdrom /hurd/isofs /dev/hd2"
  • +
  • Are running filesystem servers.
  • +
  • Are attached to the root node they translate.
  • +
  • Run as a normal process.
  • +
  • Go away with every reboot, or even time out.
  • +
+
+

+Many translator settings remain constant for a long time. It would be +very lame to always repeat the same couple of dozens settrans calls +manually or at boot time. So the Hurd provides a filesystem extension +that allows to store translator settings inside the filesystem and let +the filesystem servers do the work to start those servers on demand. +Such translator settings are called "passive translators". A passive +translator is really just a command line string stored in an inode of +the filesystem. If during a pathname resolution a server encounters +such a passive translator, and no active translator does exist already +(for this node), it will use this string to start up a new translator +for this inode, and then let the C library continue with the path +resolution as described above. Passive translators are installed with +settrans using the -p option (which is already the +default). + +
+

+Passive Translators: +

    +
  • "settrans /mnt /hurd/ext2fs /dev/hd1s1"
  • +
  • Are stored as command strings into an inode.
  • +
  • Are used to start a new active translator if there isn't + one.
  • +
  • Startup is transparent to the user.
  • +
  • Startup happens the first time the server is needed.
  • +
  • Are permanent across reboots (like file data).
  • +
+
+

+So passive translators also serve as a sort of automounting feature, +because no manual interaction is required. The server start up is +deferred until the service is need, and it is transparent to the user. +

+When starting up a passive translator, it will run as a normal process +with the same user and group id as those of the underlying inode. Any +user is allowed to install passive and active translators on inodes +that he owns. This way the user can install new servers into the +global namespace (for example, in his home or tmp directory) and thus +extend the functionality of the system (recall that servers can +implement other remote procedure calls beside those used for files and +directories). A careful design of the trusted system servers makes +sure that no permissions leak out. +

+In addition, users can provide their own implementations of some of +the system servers instead the system default. For example, they can +use their own exec server to start processes. The user specific exec +server could for example start java programs transparently (without +invoking the interpreter manually). This is done by setting the +environment variable EXECSERVERS. The systems default +exec server will evaluate this environment variable and forward the +RPC to each of the servers listed in turn, until some server accepts +it and takes over. The system default exec server will only do this +if there are no security implications. (XXX There are other ways to +start new programs than by using the system exec server. Those are +still available.) +

+Let's take a closer look at some of the Hurd servers. It was already +mentioned that only few system servers are mandatory for users. To +establish your identity within the Hurd system, you have to +communicate with the trusted systems authentication server +auth. To put the system administrator into control over +the system components, the process server does some global +bookkeeping. +

+But even these servers can be ignored. However, registration with the +authentication server is the only way to establish your identity +towards other system servers. Likewise, only tasks registered as +processes with the process server can make use of its services. + +

Authentication

+
+

+A user identity is just a port to an authserver. The auth server +stores four set of ids for it: +

    +
  • effective user ids
  • +
  • effective group ids
  • +
  • available user ids
  • +
  • available group ids
  • +
+

+Basic properties: +

    +
  • Any of these can be empty.
  • +
  • A 0 among the user ids identifies the superuser.
  • +
  • Effective ids are used to check if the user has the + permission.
  • +
  • Available ids can be turned into effective ids on user + request.
  • +
+
+

+The Hurd auth server is used to establish the identity of a user for a +server. Such an identity (which is just a port to the auth server) +consists of a set of effective user ids, a set of effective group ids, +a set of available user ids and a set of available group ids. Any of +these sets can be empty. + +

Operations on authentication ports

+
+

+The auth server provides the following operations on ports: +

    +
  • Merge the ids of two ports into a new one.
  • +
  • Return a new port containing a subset of the ids in a port.
  • +
  • Create a new port with arbitrary ids (superuser only).
  • +
  • Establish a trusted connection between users and servers.
  • +
+
+

+If you have two identities, you can merge them and request an identity +consisting of the unions of the sets from the auth server. You can +also create a new identity consisting only of subsets of an identity +you already have. What you can't do is extending your sets, unless +you are the superuser which is denoted by having the user id 0. + +

Establishing trusted connections

+
+
    +
  • User provides a rendezvous port to the server (with + io_reauthenticate).
  • +
  • User calls auth_user_authenticate on the + authentication port (his identity), passing the rendezvous port.
  • +
  • Server calls auth_server_authenticate on its + authentication port (to a trusted auth server), passing the + rendezvous port and the server port.
  • +
  • If both authentication servers are the same, it can match the + rendezvous ports and return the server port to the user and the user + ids to the server.
  • +
+
+

+Finally, the auth server can establish the identity of a user for a +server. This is done by exchanging a server port and a user identity +if both match the same rendezvous port. The server port will be +returned to the user, while the server is informed about the id sets +of the user. The server can then serve or reject subsequent RPCs by +the user on the server port, based on the identity it received from +the auth server. +

+Anyone can write a server conforming to the auth protocol, but of +course all system servers use a trusted system auth server to +establish the identity of a user. If the user is not using the system +auth server, matching the rendezvous port will fail and no server port +will be returned to the user. Because this practically requires all +programs to use the same auth server, the system auth server is +minimal in every respect, and additional functionality is moved +elsewhere, so user freedom is not unnecessarily restricted. + +

Password Server

+
+

+The password server /servers/password runs as root and +returns a new authentication port in exchange for a unix password. +

+The ids corresponding to the authentication port match the unix user +and group ids. +

+Support for shadow passwords is implemented here. +

+

+The password server sits at /servers/password and runs as +root. It can hand out ports to the auth server in exchange for a unix +password, matching it against the password or shadow file. Several +utilities make use of this server, so they don't need to be setuid +root. + +

Process Server

+
+

+The superuser must remain control over user tasks, so: +

    +
  • All mach tasks are associated with a PID in the system default + proc server.
  • +
+

+Optionally, user tasks can store: +

    +
  • Their environment variables.
  • +
  • Their argument vector.
  • +
  • A port, which others can request based on the PID (like a + nameserver).
  • +
+

+Also implemented in the proc server: +

    +
  • Sessions and process groups.
  • +
  • Global configuration not in Mach, like hostname, hostid, system + version.
  • +
+
+

+The process server is responsible for some global bookkeeping. As +such it has to be trusted and is not replaceable by the user. +However, a user is not required to use any of its service. In that +case the user will not be able to take advantage of the POSIXish +appearance of the Hurd. +

+The Mach Tasks are not as heavy as POSIX processes. For example, +there is no concept of process groups or sessions in Mach. The proc +server fills in the gap. It provides a PID for all Mach tasks, and +also stores the argument line, environment variables and other +information about a process (if the mach tasks provide them, which is +usually the case if you start a process with the default +fork()/exec()). A process can also register +a message port with the proc server, which can then be requested by +anyone. So the proc server also functions as a nameserver using the +process id as the name. +

+The proc server also stores some other miscellaneous information not +provided by Mach, like the hostname, hostid and system version. +Finally, it provides facilities to group processes and their ports +together, as well as to convert between pids, process server ports and +mach task ports. +
+

+User tasks not registering themselve with proc only have a PID assigned. +

+Users can run their own proc server in addition to the system default, +at least for those parts of the interface that don't require superuser +privileges. +

+

+Although the system default proc server can't be avoided (all Mach +tasks spawned by users will get a pid assigned, so the system +administrator can control them), users can run their own additional +process servers if they want, implementing the features not requiring +superuser privileges. + +

Filesystems

+
+

+Store based filesystems +

    +
  • ext2fs
  • +
  • ufs
  • +
  • isofs (iso9660, RockRidge, GNU extensions)
  • +
  • fatfs (under development)
  • +
+

+Network file systems +

    +
  • nfs
  • +
  • ftpfs
  • +
+

+Miscellaneous +

    +
  • hostmux
  • +
  • usermux
  • +
  • tmpfs (under development)
  • +
+
+

+We already talked about translators and the file system service they +provide. Currently, we have translators for the ext2, ufs and iso9660 +filesystems. We also have an nfs client and an ftp filesystem. +Especially the latter is intriguing, as it provides transparent access +to ftp servers in the filesystem. Programs can start to move away +from implementing a plethora of network protocols, as the files are +directly available in the filesystem through the standard POSIX file +interface. + + +

Developing the Hurd

+
+

+Over a dozen libraries support the development of new servers. +

+For special server types highly specialized +libraries require only the implementation of a +number of callback functions. +

    +
  • Use libdiskfs for store based filesystems.
  • +
  • Use libnetfs for network filesystems, also for + virtual filesystems.
  • +
  • Use libtrivfs for simple filesystems providing only + a single file or directory.
  • +
+
+

+The Hurd server protocols are complex enough to allow for the +implementation of a POSIX compatible system with GNU extensions. +However, a lot of code can be shared by all or at least similar +servers. For example, all storage based filesystems need to be able to +read and write to a store medium splitted in blocks. The Hurd comes +with several libraries which make it easy to implement new servers. +Also, there are already a lot of examples of different server types in +the Hurd. This makes writing a new server easier. +

+libdiskfs is a library that supports writing store based +filesystems like ext2fs or ufs. It is not very useful for filesystems +which are purely virtual, like /proc or files in +/dev. +

+libnetfs is intended for filesystems which provide a rich +directory hierarchy, but don't use a backing store (for example ftpfs, +nfs). +

+libtrivfs is intended for filesystems which just provide +a single inode or directory. Most servers which are not intended to +provide a filesystem but other services (like +/servers/password) use it to provide a dummy file, so +that file operations on the servers node will not return errors. But +it can also be used to provide meaningful data in a single file, like +a device store or a character device. + +

Store Abstraction

+
+

+Another very useful library is libstore, which is used by all store +based filesystems. It provides a store media abstraction. A store +consists of a store class and a name (which itself can sometimes +contain stores). +

+Primitive store classes: +

    +
  • device store like device:hd2, device:hd0s1, device:fd0
  • +
  • file store like file:/tmp/disk_image
  • +
  • task store like task:PID
  • +
  • zero store like zero:4m (like /dev/zero, of size 4 MB)
  • +
+
+
+

+Composed store classes: +

    +
  • copy store like copy:zero:4m
  • +
  • gunzip/bunzip2 store like gunzip:device:fd0
  • +
  • concat store like concat:device:hd0s2:device:hd1s5
  • +
  • ileave store (RAID-0(2))
  • +
  • remap store like remap:10+20,50+:file:/tmp/blocks
  • +
  • ...
  • +
+

+Wanted: A similar abstraction for streams (based on channels), which +can be used by network and character device servers. +

+

+libstore provides a store abstraction, which is used by +all store based filesystems. The store is determined by a type and a +name, but some store types modify another store rather than providing +a new store, and thus stores can be stacked. For example, the device +store type expects a Mach device, but the remap store expects a list +of blocks to pick from another store, like remap:1+:device:hd2, which +would pick all blocks from hd2 but the first one, which skipped. +Because this functionality is provided in a library, all libstore +using filesystems support many different store kinds, and adding a new +store type is enough to make all store based filesystems support it. + +

Debian GNU/Hurd

+
+

+Goal: +

    +
  • Provide a binary distribution of the Hurd that is easy to + install.
  • +
+

+Constraints: +

    +
  • Use the same source packages as Debian GNU/Linux.
  • +
  • Use the same infrastructure: +
      +
    • Policy
    • +
    • Archive
    • +
    • Bug tracking system
    • +
    • Release process
    • +
  • +
+

+Side Goal: +

    +
  • Prepare Debian for the future: +
      +
    • More flexibility in the base system
    • +
    • Identify dependencies on the Linux kernel
    • +
  • +
+
+

+The Debian distribution of the GNU Hurd that I started in 1998 is +supposed to become a complete binary distribution of the Hurd that is +easy to install. + +

Status of the Debian GNU/Hurd binary archive

+

+See +http://buildd.debian.org/stats/graph.png +for the most current version of the statistic. + +

Status of the Debian infrastructure

+
+

+Plus: +

    +
  • Source packages can identify build and host OS using + dpkg-architecture.
  • +
+

+Minus: +

    +
  • The binary architecture field is insufficient.
  • +
  • The BTS has no architecture tag.
  • +
  • The policy/FHS need (small) Hurd specific extensions.
  • +
+
+

+While good compatibiity can be achieved at the source level, +the binary packages can not always express their relationship +to the available architectures sufficiently. +

+For example, the Linux version of makedev is binary-all, where +a binary-all-linux relationship would be more appropriate. +

+More work has to be done here to fix the tools. + +

Status of the Debian Source archive

+
+
    +
  • Most packages just work.
  • +
  • Maintainers are usually responsive and cooperative.
  • +
  • Turtle, the autobuilder, crunches through the whole list right + now.
  • +
+

+Common pitfalls are POSIX incompatibilities: +

    +
  • Upstream: +
      +
    • Unconditional use of PATH_MAX + (MAXPATHLEN), MAXHOSTNAMELEN.
    • +
    • Unguarded use of Linux kernel features.
    • +
    • Use of legacy interfaces (sys_errlist, + termio).
    • +
  • +
  • Debian: +
      +
    • Unguarded activation of extensions available with Linux.
    • +
    • Low quality patches.
    • +
    • Assuming GNU/Linux in package scripts.
    • +
  • +
+
+

+Most packages are POSIX compatible and can be compiled without +changes on the Hurd. The maintainers of the Debian source packages +are usually very kind, responsiver and helpful. +

+The Turtle autobuilder software (http://turtle.sourceforge.net) +builds the Debian packages on the Hurd automatically. + +

Debian GNU/Hurd: Good idea, bad idea?

+
+

+Upstream benefits: +

    +
  • Software packages become more portable.
  • +
+

+Debian benefits: +

    +
  • Debian becomes more portable.
  • +
  • Maintainers learn about portability and other systems.
  • +
  • Debian gets a lot of public recognition.
  • +
+

+GNU/Hurd benefits: +

    +
  • Large software base.
  • +
  • Great infrastructure.
  • +
  • Nice community to partner with.
  • +
+
+

+The sheet lists the advantages of all groups involved. + +

End

+
+

+Join us at +

+
+

+List of contacts. diff --git a/hurd/hurd_hacking_guide.mdwn b/hurd/hurd_hacking_guide.mdwn index 0cb96f32..2ef08f8a 100644 --- a/hurd/hurd_hacking_guide.mdwn +++ b/hurd/hurd_hacking_guide.mdwn @@ -8,6 +8,16 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -Originally written by Wolfgang Jährling, the [Hurd Hacking Guide](http://www.gnu.org/software/hurd/hacking-guide/hhg.html) -contains an overview of some of the Hurd's features. -Also contains a tutorial on writing your own [[translator]]. +Originally written by Wolfgang Jährling, the *Hurd Hacking Guide* contains an +introduction to GNU Hurd and GNU Mach programming, an overview of some of the +Hurd's features. It also contains a tutorial on writing your own +[[translator]]. + + * [HTML version](http://www.gnu.org/software/hurd/hacking-guide/hhg.html) for + browsing online, + * [PostScript version](http://www.gnu.org/software/hurd/hacking-guide/hhg.ps) + [187kB, 37 pages], + * [ASCII text + version](http://www.gnu.org/software/hurd/hacking-guide/hhg.txt) [59kB], + * [Texinfo source](http://www.gnu.org/software/hurd/hacking-guide/hhg.texi) + [60kB]. diff --git a/hurd/ng/position_paper.mdwn b/hurd/ng/position_paper.mdwn index 3240a41d..e0f4bf60 100644 --- a/hurd/ng/position_paper.mdwn +++ b/hurd/ng/position_paper.mdwn @@ -8,7 +8,8 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[NealWalfield]] and [[MarcusBrinkmann]] wrote a paper titled [*Improving -Usability via Access Decomposition and Policy -Refinement*](http://walfield.org/papers/20070104-walfield-access-decomposition-policy-refinement.pdf). -This is sometimes referred to as *the position paper*. +Neal Walfield and Marcus Brinkmann wrote a paper titled [*Improving Usability +via Access Decomposition and Policy +Refinement*](http://walfield.org/papers/20070104-walfield-access-decomposition-policy-refinement.pdf) +where they give an overview about how a future, subsequent system may be +architected. This is sometimes referred to as *the position paper*. diff --git a/hurd/reference_manual.mdwn b/hurd/reference_manual.mdwn new file mode 100644 index 00000000..5b5bff2d --- /dev/null +++ b/hurd/reference_manual.mdwn @@ -0,0 +1,18 @@ +[[meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +*The GNU Hurd Reference Manual* documents the architecture, the usage and the +programming of the GNU Hurd. At the moment, the manual is quite incomplete. + + * [HTML version](http://www.gnu.org/software/hurd/doc/hurd_toc.html) for + browsing online, + * [PostScript version](http://www.gnu.org/software/hurd/doc/hurd.ps) + [1020KiB, 91 pages]. diff --git a/hurd/running/distrib.mdwn b/hurd/running/distrib.mdwn index fc42e862..b0a6badd 100644 --- a/hurd/running/distrib.mdwn +++ b/hurd/running/distrib.mdwn @@ -94,7 +94,7 @@ about getting applications to work (if possible). * GNU [Coding Standards](http://www.gnu.org/prep/standards.html) * [[TestSuites]] - Posix, Perl, results feedback, etc. -* [docs and papers](http://www.gnu.org/software/hurd/docs.html) +* [[Documentation]] * [[SystemAPILimits]] * [[CodeAnnouncements]] - Recent coding projects related to the Hurd diff --git a/hurd/running/gnu/universal_package_manager.mdwn b/hurd/running/gnu/universal_package_manager.mdwn index 009b26bf..440f1122 100644 --- a/hurd/running/gnu/universal_package_manager.mdwn +++ b/hurd/running/gnu/universal_package_manager.mdwn @@ -127,7 +127,7 @@ OK. I will give you steps. i. Install a GNU System by folowing [[these_instructions|setup]] -ii. Read about GNU Design +ii. Read about GNU Design: [[Towards_a_New_Strategy_of_OS_Design|documentation/hurd-paper]] iii. Read about translators diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index b9952931..889f02a6 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -43,6 +43,7 @@ See some [[examples]] about how to use translators. # Existing Translators +* [[auth]] * [[pfinet]] * [[pflocal]] * [[hostmux]] diff --git a/hurd/translator/auth.mdwn b/hurd/translator/auth.mdwn new file mode 100644 index 00000000..73e7e025 --- /dev/null +++ b/hurd/translator/auth.mdwn @@ -0,0 +1,13 @@ +[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +[[*The_Authentication_Server*|documentation/auth]], the transcript of a talk +about the details of the authentication mechanisms in the Hurd by Wolfgang +Jährling. diff --git a/microkernel/faq/multiserver_microkernel.mdwn b/microkernel/faq/multiserver_microkernel.mdwn index da690425..68ed332c 100644 --- a/microkernel/faq/multiserver_microkernel.mdwn +++ b/microkernel/faq/multiserver_microkernel.mdwn @@ -22,5 +22,5 @@ use, but now, because the server runs in user space as the user that started it, they may, for instance, mount an FTP filesystem in their home directory. For more information about the design of the Hurd, read the paper by Thomas -Bushnell, BSG: [Towards a new strategy on OS -design](http://www.gnu.org/software/hurd/hurd-paper.html). +Bushnell, BSG: +[[Towards_a_New_Strategy_of_OS_Design|hurd/documentation/hurd-paper]]. diff --git a/microkernel/mach/documentation.mdwn b/microkernel/mach/documentation.mdwn index fe870386..f6f2eb79 100644 --- a/microkernel/mach/documentation.mdwn +++ b/microkernel/mach/documentation.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +Free Software Foundation, Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -11,12 +12,27 @@ is included in the section entitled - [Meet Mach](http://www.stepwise.com/Articles/Technical/MeetMach.html), a summary of Mach's history and main concepts. + * *[[The_GNU_Mach_Reference_Manual|gnu_mach/reference_manual]]*. + - OSF's [Kernel Interface (ps)](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps) [Kernel Interface (pdf)](http://shakthimaan.com/downloads/hurd/kernel_interface.pdf) - OSF's [Kernel Principles (ps)](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps) [Kernel Principles (pdf)](http://shakthimaan.com/downloads/hurd/kernel_principles.pdf) + * [*The Unofficial GNU Mach IPC beginner's + guide*](http://hurdextras.nongnu.org/ipc_guide/), an easy introduction to + Inter Process Comunication in the Mach microkernel by Manuel Pavón + Valderrama. + + * [*Mach IPC without + MIG*](http://walfield.org/pub/people/neal/papers/hurd-misc/mach-ipc-without-mig.txt), + an exercise by Neal Walfield *to understand Mach IPC at one of its lowest + application levels*. + + * [*ipc-hello.c*](http://walfield.org/pub/people/neal/papers/hurd-misc/ipc-hello.c): + *Hello world à la mach ipc*. + - [Porting and Modifying the Mach 3.0 Microkernel](http://shakthimaan.com/downloads/hurd/Porting%20and%20Modifying%20the%20Mach%203.0%20Microkernel.pdf) - [An IO System for Mach](http://shakthimaan.com/downloads/hurd/An%20IO%20System%20for%20Mach.pdf) diff --git a/microkernel/mach/gnu_mach.mdwn b/microkernel/mach/gnu_mach.mdwn index cdb43a6f..19e1ea53 100644 --- a/microkernel/mach/gnu_mach.mdwn +++ b/microkernel/mach/gnu_mach.mdwn @@ -71,6 +71,7 @@ GNU/Hurd. # Development + * [[Reference_Manual]] * [[Building]] * [[Debugging]] * [[Boot_Trace]] diff --git a/microkernel/mach/gnu_mach/reference_manual.mdwn b/microkernel/mach/gnu_mach/reference_manual.mdwn new file mode 100644 index 00000000..225ab176 --- /dev/null +++ b/microkernel/mach/gnu_mach/reference_manual.mdwn @@ -0,0 +1,26 @@ +[[meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +*The GNU Mach Reference Manual* documents the architecture, the usage and the +programming of the GNU Mach microkernel. At the moment, the manual documents +the interface completely, but is not very useful as a tutorial or introduction +into the Mach architecture. + + * [HTML version](http://www.gnu.org/software/hurd/gnumach-doc/index.html) + for browsing online, + * [PostScript + version](http://www.gnu.org/software/hurd/gnumach-doc/mach.ps) [around + 900KiB], + * [gzipped PostScript + version](http://www.gnu.org/software/hurd/gnumach-doc/mach.ps.gz) + [around 300KiB], + * [PDF version](http://www.gnu.org/software/hurd/gnumach-doc/mach.pdf) + [around 700KiB]. diff --git a/microkernel/mach/mig/documentation.mdwn b/microkernel/mach/mig/documentation.mdwn index 8c977e55..a0bbbe14 100644 --- a/microkernel/mach/mig/documentation.mdwn +++ b/microkernel/mach/mig/documentation.mdwn @@ -66,8 +66,7 @@ pp. 67--77." # Further Relevant Documentation - * The [GNU Mach Reference - Manual](http://www.gnu.org/software/hurd/docs.html#manuals), espacially + * The [[GNU_Mach_Reference_Manual|gnu_mach/reference_manual]], espacially [Chapter 4, Inter Process Communication](http://www.gnu.org/software/hurd/gnumach-doc/Inter-Process-Communication.html), which, for example, explains how the `dealloc` flag -- cgit v1.2.3 From 7a67fff454fddda32c4ce789cde8449ec9a88f52 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 22 Nov 2008 23:56:16 +0100 Subject: Tidy inline directives. --- hurd/debugging/translator.mdwn | 4 +++- hurd/faq.mdwn | 1 + hurd/open_issues.mdwn | 1 + hurd/running/debian/faq.mdwn | 1 + hurd/running/debian/porting.mdwn | 1 + hurd/translator/tmpfs.mdwn | 4 ++-- index.mdwn | 7 +++++++ microkernel/faq.mdwn | 1 + microkernel/mach/gnumach/open_issues.mdwn | 1 + microkernel/mach/mig/gnu_mig/open_issues.mdwn | 1 + news.mdwn | 1 + 11 files changed, 20 insertions(+), 3 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/debugging/translator.mdwn b/hurd/debugging/translator.mdwn index 22c8cc2c..8e8dd6fb 100644 --- a/hurd/debugging/translator.mdwn +++ b/hurd/debugging/translator.mdwn @@ -10,4 +10,6 @@ is included in the section entitled [[inline pages="hurd/debugging/translator/* and !*/discussion" -show=0]] +show=0 +feeds=no +actions=yes]] diff --git a/hurd/faq.mdwn b/hurd/faq.mdwn index aab538d9..0227f1c1 100644 --- a/hurd/faq.mdwn +++ b/hurd/faq.mdwn @@ -13,5 +13,6 @@ is included in the section entitled [[inline pages="hurd/faq/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="hurd/faq" postformtext="Add a new item titled:"]] diff --git a/hurd/open_issues.mdwn b/hurd/open_issues.mdwn index d7dc4d99..c4bcce09 100644 --- a/hurd/open_issues.mdwn +++ b/hurd/open_issues.mdwn @@ -15,5 +15,6 @@ This is a dumping ground for open issues for the GNU Hurd. [[inline pages="hurd/open_issues/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="hurd/open_issues" postformtext="Add a new item titled:"]] diff --git a/hurd/running/debian/faq.mdwn b/hurd/running/debian/faq.mdwn index f4b607bf..227ade02 100644 --- a/hurd/running/debian/faq.mdwn +++ b/hurd/running/debian/faq.mdwn @@ -15,5 +15,6 @@ See also the [[Hurd_FAQ|hurd/FAQ]] and [[after_install]]. [[inline pages="hurd/running/debian/faq/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="hurd/running/debian/faq" postformtext="Add a new item titled:"]] diff --git a/hurd/running/debian/porting.mdwn b/hurd/running/debian/porting.mdwn index 7ca91d37..eb46c4c3 100644 --- a/hurd/running/debian/porting.mdwn +++ b/hurd/running/debian/porting.mdwn @@ -33,5 +33,6 @@ guidelines. [[inline pages="hurd/running/debian/porting/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="hurd/running/debian/porting" postformtext="Add a new item titled:"]] diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index 6d10c163..bb9ef269 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -18,5 +18,5 @@ It's not working correctly at the moment. [[inline pages="hurd/translator/tmpfs/*" show=0 -actions=yes -rootpage="hurd/translator/tmpfs" postformtext="Add a new item titled:"]] +feeds=no +actions=yes]] diff --git a/index.mdwn b/index.mdwn index 3103f8f7..8754baab 100644 --- a/index.mdwn +++ b/index.mdwn @@ -23,9 +23,16 @@ kernels (such as Linux). *[[More_detailed.|hurd/what_is_the_gnu_hurd]]* ## News +[[inline +pages="news/* and !*/discussion" +feedonly=yes +feedshow=10 +sort=title +reverse=yes]] [[inline pages="news/* and !*/discussion" show=5 +feeds=no sort=title reverse=yes template=newsitem diff --git a/microkernel/faq.mdwn b/microkernel/faq.mdwn index 0e129095..f83c65ca 100644 --- a/microkernel/faq.mdwn +++ b/microkernel/faq.mdwn @@ -13,5 +13,6 @@ is included in the section entitled [[inline pages="microkernel/faq/* and !*/discussion" show=0 +feeds=no actions=yes rootpage=microkernel/faq" postformtext="Add a new item titled:"]] diff --git a/microkernel/mach/gnumach/open_issues.mdwn b/microkernel/mach/gnumach/open_issues.mdwn index 433ec3ef..ec289708 100644 --- a/microkernel/mach/gnumach/open_issues.mdwn +++ b/microkernel/mach/gnumach/open_issues.mdwn @@ -15,5 +15,6 @@ This is a dumping ground for open issues for GNU Mach. [[inline pages="microkernel/mach/gnumach/open_issues/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="microkernel/mach/gnumach/open_issues" postformtext="Add a new item titled:"]] diff --git a/microkernel/mach/mig/gnu_mig/open_issues.mdwn b/microkernel/mach/mig/gnu_mig/open_issues.mdwn index 7a6233da..225f9cfc 100644 --- a/microkernel/mach/mig/gnu_mig/open_issues.mdwn +++ b/microkernel/mach/mig/gnu_mig/open_issues.mdwn @@ -15,6 +15,7 @@ This is a dumping ground for open issues for GNU MIG. [[inline pages="microkernel/mach/mig/gnu_mig/open_issues/* and !*/discussion" show=0 +feeds=no actions=yes rootpage="microkernel/mach/mig/gnu_mig/open_issues" postformtext="Add a new item titled:"]] diff --git a/news.mdwn b/news.mdwn index 71058f85..8e5d73da 100644 --- a/news.mdwn +++ b/news.mdwn @@ -11,6 +11,7 @@ is included in the section entitled [[inline pages="news/* and !*/discussion" show=0 +feeds=no sort=title reverse=yes actions=yes]] -- cgit v1.2.3 From 65d63f90786ff11cd35c4ee64fa7c099d1deafbc Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 9 Jan 2009 15:25:22 +0100 Subject: Stub page for a devfs translator. --- hurd/translator.mdwn | 5 ++++- hurd/translator/devfs.mdwn | 15 +++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 hurd/translator/devfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index d333da5a..0823f0db 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -74,6 +75,8 @@ available. # Translator wishlist +* [[devfs]] + * FUSE(fuse.sourceforge.net/) compatilbility library. : just modify FUSE apps a and compile little to work as translator :-) * File Finder. (uses find, grep, a combination or a custom command (htdig, mp3 info) diff --git a/hurd/translator/devfs.mdwn b/hurd/translator/devfs.mdwn new file mode 100644 index 00000000..bc1cf11f --- /dev/null +++ b/hurd/translator/devfs.mdwn @@ -0,0 +1,15 @@ +[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +`devfs` is a translator sitting on `/dev` and providing what is to be provided +in there in a dynamic fashion -- as compared to static passive translator +settings as they're used now. + +`devfs` has not yet been written. -- cgit v1.2.3 From 19914d1594d40388652c78ade1289691d6abfbb8 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 9 Jan 2009 15:26:44 +0100 Subject: About page-in. --- hurd/translator/devfs.mdwn | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/devfs.mdwn b/hurd/translator/devfs.mdwn index bc1cf11f..7a00519c 100644 --- a/hurd/translator/devfs.mdwn +++ b/hurd/translator/devfs.mdwn @@ -13,3 +13,8 @@ in there in a dynamic fashion -- as compared to static passive translator settings as they're used now. `devfs` has not yet been written. + +--- + +If applicable, it has to be taken care that all code concerning the page-in +path is resident at all times. -- cgit v1.2.3 From 27d13175ccd378e4d3531176276475dd84af5fed Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 19 Jan 2009 13:09:16 +0100 Subject: Move some pages, remove others that are either out of date or whose content is duplicated somewhere else. --- grub.mdwn | 72 ++++++++++++ grub/tftp_boot.mdwn | 42 +++++++ hurd/libstore.mdwn | 6 +- hurd/running/debian/CrossInstall.mdwn | 2 +- hurd/running/debian/after_install.mdwn | 2 +- hurd/running/distrib.mdwn | 4 +- hurd/running/qemu.mdwn | 2 +- hurd/translator.mdwn | 124 +-------------------- hurd/translator/wishlist_1.mdwn | 129 ++++++++++++++++++++++ hurd/translator/wishlist_2.mdwn | 189 ++++++++++++++++++++++++++++++++ unsorted/ABITransitionStatus.mdwn | 9 -- unsorted/AdvancedGrubUsage.mdwn | 42 ------- unsorted/AptConfOffline.mdwn | 28 ----- unsorted/BootProcess.mdwn | 36 ------ unsorted/GNOME.mdwn | 11 -- unsorted/GrubNotes.mdwn | 70 ------------ unsorted/InstallNotes.mdwn | 2 +- unsorted/InstallTips.mdwn | 2 +- unsorted/LuisBustamanteHurdPage.mdwn | 11 -- unsorted/NewMachHistory.mdwn | 27 ----- unsorted/OskitMach.mdwn | 2 +- unsorted/PppDaemon.mdwn | 6 - unsorted/TranslatorExamples.mdwn | 61 ----------- unsorted/TranslatorPages.mdwn | 51 --------- unsorted/TranslatorWishList.mdwn | 193 --------------------------------- 25 files changed, 449 insertions(+), 674 deletions(-) create mode 100644 grub.mdwn create mode 100644 grub/tftp_boot.mdwn create mode 100644 hurd/translator/wishlist_1.mdwn create mode 100644 hurd/translator/wishlist_2.mdwn delete mode 100644 unsorted/ABITransitionStatus.mdwn delete mode 100644 unsorted/AdvancedGrubUsage.mdwn delete mode 100644 unsorted/AptConfOffline.mdwn delete mode 100644 unsorted/BootProcess.mdwn delete mode 100644 unsorted/GNOME.mdwn delete mode 100644 unsorted/GrubNotes.mdwn delete mode 100644 unsorted/LuisBustamanteHurdPage.mdwn delete mode 100644 unsorted/NewMachHistory.mdwn delete mode 100644 unsorted/PppDaemon.mdwn delete mode 100644 unsorted/TranslatorExamples.mdwn delete mode 100644 unsorted/TranslatorPages.mdwn delete mode 100644 unsorted/TranslatorWishList.mdwn (limited to 'hurd/translator') diff --git a/grub.mdwn b/grub.mdwn new file mode 100644 index 00000000..a63ad181 --- /dev/null +++ b/grub.mdwn @@ -0,0 +1,72 @@ +# [GRUB](http://www.gnu.org/software/grub/) + +This section complements the [[InstallNotes]] with complete information regarding the GRUB boot loader. The syntax is different from Lilo's and so to scratch my own itch I'm creating this quick reference. The [Grub manual](http://www.gnu.org/software/grub/manual/grub.html) is another good reference. + +* update-grub is **Debian specific** and very nice. It will automatically create a /boot/grub/menu.lst file for the kernels in /boot/. It will also append a manually configured set for other partitions like the GNU/Hurd. +* grub-floppy is a **Debian specific** boot floppy creation script. +* mkbimage is a **Debian specific** boot disk image creation script. +* contains a Debian packaged makefile for creating CD & floppy images. Looks like it doesn't work properly. If you fix it, please send patches to the maintainer. +* essential GRUB commands & disk syntax + * root + * kernel + * module + * boot +* sample file + + title GNU/Linux + root (hd0,11) + kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro + initrd /boot/initrd.img-2.4.18 + savedefault + + title GNU + root (hd0,15) + kernel /boot/oskit-mach root=device:hd0s16 -- + module /hurd/ext2fs.static \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + savedefault + + title DOS + rootnoverify (hd0,0) + chainloader +1 + +-- [[Main/GrantBow]] - 01 Oct 2002
-- [[Main/GrantBow]] - 22 Dec 2002 + +Another example, just as good, but a lot easier to read. The backslash at the end of each line is to "escape" the enter-key. So make sure there are no spaces following the backslashes! + + title GNU/Linux (Linux 2.4.18) + root (hd0,11) + kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro + initrd /boot/initrd.img-2.4.18 + savedefault + + title GNUmach 1.3 + root (hd0,1) + kernel /boot/gnumach.gz root=device:hd0s2 + module /hurd/ext2fs.static --readonly \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + + title GNUmach 1.90 (CVS) + root (hd0,1) + kernel /boot/oskit-mach.gz root=device:hd0s2 -- + module /hurd/ext2fs.static --readonly \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + +Note the differences between GNUmach and OSKit-Mach. The latter **needs** the two dashes after the root specification! + +-- [[Main/JoachimNilsson]] - 09 Nov 2002 diff --git a/grub/tftp_boot.mdwn b/grub/tftp_boot.mdwn new file mode 100644 index 00000000..8e307b4f --- /dev/null +++ b/grub/tftp_boot.mdwn @@ -0,0 +1,42 @@ +## Advanced Grub + +[Grub](http://www.gnu.org/software/grub/) is a capable boot loader. This document is intended to capture some of its most interesting features and try to explain them a bit better than the texinfo documentation. + +### Debian Grub + +The Debian grub packages do not have networking enabled, so you have to apt-get the source, modify the debian/rules file to include --enable-network-card and dpkg-buildpackage to get a .deb of grub that supports TFTP. + +1. cd /usr/src/debian +2. apt-get source grub +3. cd grub-\_VERSION\_ +4. Add `--enable-tulip` or similar for your NIC to the `./configure` line of the `configure-stamp` target in the `debian/rules` file. +5. `dpkg-buildpackage` (as `root`) +6. `cd ..` +7. `dpkg -i grub*.deb` +8. cp /lib/grub/\_ARCH\_/\* /boot/grub/, e.g., _ARCH_ is `i386-pc` +9. Edit your `/boot/grub/menu.lst` (see below) +10. If your boot disk is `/dev/hda` ==> `grub-install (hd0)` + +### TFTP Boot + +Using trivial ftp to load a kernel is one of the best features of Grub. Here is how it is done. + +The `menu.lst` can look something like this: + + ifconfig --address=192.168.1.2 --server=192.168.1.1 + root (nd) + kernel /gnu/boot/oskit-mach.gz root=device:hd0s2 -- + root (hd0,1) + module /hurd/ext2fs.static \ + --multiboot-command-line=${kernel-command-line} \ + --host-priv-port=${host-port} \ + --device-master-port=${device-port} \ + --exec-server-task=${exec-task} \ + -T typed ${root} $(task-create) $(task-resume) + module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) + +**Note: Make sure there are NO spaces after the trailing backslases (\\)!!** + +For more information on GNUmach modules lines and installation setup, see [[Hurd/InstallNotes]] + +-- [[Main/JoachimNilsson]] - 13 Apr 2005 diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index ab649ebc..6b81691b 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -31,3 +32,6 @@ device node below `/dev`... At you can find some effort to make some crypto store. + +At , another package +can be found. diff --git a/hurd/running/debian/CrossInstall.mdwn b/hurd/running/debian/CrossInstall.mdwn index 9a07424e..1cde150c 100644 --- a/hurd/running/debian/CrossInstall.mdwn +++ b/hurd/running/debian/CrossInstall.mdwn @@ -34,7 +34,7 @@ Now the program starts retrieving all the necessary base packages. ### Preparing to reboot -When all packages have been extracted we must prepare [[GrubNotes]] for the Hurd when we reboot. Add the below entry to your `/boot/grub/menu.lst` file to boot the Hurd in single user mode (-s). Single user mode is needed only for the two reboots when running the Native Install. +When all packages have been extracted we must prepare [[GRUB]] for the Hurd when we reboot. Add the below entry to your `/boot/grub/menu.lst` file to boot the Hurd in single user mode (-s). Single user mode is needed only for the two reboots when running the Native Install. title GNU (kernel GNUmach 1.3) root (hd0,2) diff --git a/hurd/running/debian/after_install.mdwn b/hurd/running/debian/after_install.mdwn index b795fd2b..4cdcaea9 100644 --- a/hurd/running/debian/after_install.mdwn +++ b/hurd/running/debian/after_install.mdwn @@ -35,7 +35,7 @@ In order to use DHCP, you need to install the `dhcp-client` package and run `dhc You surely want grub to have a nice menu entry able to boot GNU, instead of typing a boring arcane. There are Debian-specific scripts that may help -you. See the [[GrubNotes]] for this. +you. See [[GRUB]]'s page for this. # Setup `apt-get` diff --git a/hurd/running/distrib.mdwn b/hurd/running/distrib.mdwn index b0a6badd..935c0c2d 100644 --- a/hurd/running/distrib.mdwn +++ b/hurd/running/distrib.mdwn @@ -30,8 +30,8 @@

-
[[GrubNotes]]
-
A quick reference and explanation. There's also a topic for the new [[GrubConf]].
+
[[GRUB]]
+
A quick reference and explanation.
diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn index 7e4816f5..f13ef5c8 100644 --- a/hurd/running/qemu.mdwn +++ b/hurd/running/qemu.mdwn @@ -23,7 +23,7 @@ volunteers and may not have been tested extensively. # What is Needed to create a QEMU image 1. First thing is to install [[/QEMU]]. -2. A [grub](http://www.gnu.org/software/grub/) boot disk for the floppy disk image needed for booting. The [0\.97 version](ftp://alpha.gnu.org/gnu/grub/grub-0.97-i386-pc.ext2fs) works fine. I downloaded it an renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well. +2. A [[grub]] boot disk for the floppy disk image needed for booting. The [0\.97 version](ftp://alpha.gnu.org/gnu/grub/grub-0.97-i386-pc.ext2fs) works fine. I downloaded it an renamed to `floppy.img`. Alternatively, the Debian grub-disk package (up till version 0.97-28) is fine as well. 3. You will need a [Debian/Hurd installation CD](http://www.debian.org/ports/hurd/hurd-cd). K16 works fine. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 0823f0db..0cfcc5fa 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -73,123 +73,7 @@ available. * ... -# Translator wishlist - -* [[devfs]] - -* FUSE(fuse.sourceforge.net/) compatilbility library. : just modify FUSE apps a and compile little to work as translator :-) - -* File Finder. (uses find, grep, a combination or a custom command (htdig, mp3 info) - * Files found will be available under one directory and then can be used like a normal directory - * usefull to generate Albums, Share only resulting files over the et, etc.. - * The filefinder can be scheduled or can be connected over some ipc like dbus to the VFS system if any to keep a watch for new files. - -* GNOKII, BitPim and openobex as translators - * grep through your SMSs! - * share your addressbook! - * "Attach" that funny SMS/MMS to your email. - * "svn commit" your joke collection :-D - -* Real Language Translator [[br]] - * cat /usr/translator/de-en/usr/share/doc/something.txt should take /usr/share/doc/something.txt , submit it to google's website and bring back results. - -* Mozilla Bookmarks = del.ici.ous - * Need more explanation ? ;-) - -* - * having a directory structure for a file can allow to "svn commit" the hnb document in a more "node-safe" manner, thus allowing multiple people to work on the same hnb document. - * This must be fairly easy as HNB can already export to XML and XMLfs already exists. - -* DavFS - * Just setup a 'WebDav share' as a directory. The implimentation of the protocol is already available in nautilus and konqueror. - -* Compiled form of your project - * you have your project in /somedir/project with source in /somedir/project/src .. /somedir/project/bin should always have the compiled version.. is it possible? - * The source has to have a MakeFile. - * creating /somedir/project/bin-somearch should aotomatically crosscompile - * Seems feasible for a small project. - -* Report generation FrameWork - an idea to be hugged by app developers..not kernel developers. - * You have financial data in some Spreadsheet like format in /yourFinance directory - * You add report templates to /yourFinance/repTemplates - * Once you save data in /yourFinance the next cat /yourFinance/reports/areportname will give you an uptodate report. - * This will be usefull for any purpose including serving by static page web servers, sharing over samba/nfs/ftp etc.! - * The advantage is any save to the spreadsheet will update the report.. not just from one software. - -* SVN (Subversion suite) - * like [[cvsfs]]. /svndir/version/version-no should automatically have subversion - * I think it is nice to write a generalised version control system framework library which will help in writing version control translators and other tools easily. - -* Flexi-acls - * First of all - Can this be done? : A translator bound to a directory must be able to access the contents of the directory which would have been accessible in the absence of the translator.. - * This will enable to wirte translators that can implement custom "Access Control Lists". Just imagine having advanced ACLs even if underlying FileSystem is dumb! Imagine changing the type of ACLs implemented with Just two commands - one to unattach previous translator and the next to attach a different ACL translator! The ACLs themselves may be stored in a different directory - -* The translator manager! - * Some translators will need to be inserted automatically - like for eg: hardware drivers .. - * Each hardware translator will pubish its capabilities. - * The "top" translator will query the capabilities of different hardware and match capabilities with the "slave" translators. That is it's only Job. - * The control is then handed over to the slave translator. - * The ranking not only looks who can handle the "most" capabilites of the hardware. If it finds that multiple translators can handle the same hardware, It will use other parameters to choose between them.. like may be the size in memory? The revision date? Stability (inferred from version number)? And to go to the extreme, the profiling data of the driver ;-P - * Advantage : The best driver wins! - -* An eg. Skip it if you understood the above :-): - * You have a driver that can handle VGA + SVGA + Super3d acceleration + Particle graphics + Works for nvidea card. - * You have a driver that can handle SVGA + VGA . - * You have a driver that can handle VGA. - * Case 1: Your card: A VGA card with some extra fonts.. - * First the VGA driver will be quireied .. ok can handle essential capability. - * Next SVGA driver: can handle but has extra module.. unnecassary weight . - * The Nvidia driver: can handle , but again unnecassary weight : ruled out. - * Winner : VGA driver: - * Case 2: Your card An SVGA card: - * First the VGA driver will be quireied .. ok can handle one essential capability. - * Next SVGA driver: can handle essential and one extra capability no extra weight.. - * The Nvidia driver: can handle , but unnecassary weight : ruled out. - * Winner : SVGA driver.. - * Case 3 : You have an VGA .. but no VGA driver .. then the SVGA driver would win. - -* Sound Server - * /ahsa - stands for Advanced HURD sound architecture :-) Just a temporary name .. for fun. - * /ahsa/out - directory wich will hold "plug"s where apllications come and join the server .. see below. - * /ahsa/out/mixer - main mixer - * /ahsa/out/nextfree - the file when "cat"ed gives the number of the next free plug - * /ahsa/plugins/ - info about available plugins - * /ahsa/out/[1..n]/ - dynamically generated directories for applications to plug on.. - * /ahsa/out/[1..n]/data this is where you should do a "cat somerawsoundfile>/ahsa/out/`cat /ahsa/nextfree`/data" - * /ahsa/out/[1..n]/plugins - the plugin stack .. volume is also a plugin.. - * /ahsa/out/[1..n]/plugins/[1..m]/ - echo "plugin param1 param2 param3" > /ahsa/out/[1..n]/plugins/`cat /ahsa/out/[1..n]/plugins/nextfree`/add - * /ahsa/out/[1..n]/plugins/[1..m]/params/{param1.. paramn} - * /ahsa/out/[1..n]/data.out - can be catted to get data processed through the server - * /ahsa/in - similar to /ahsa/out .. with except for an extra file to choose input devices. - * /ahsa/devs/{1..n} - devices detected .. can be dynamic .. there are usb soundcards and and midi devices. - * /ahsa/out/[1..n]/plugins/[1..m]/0/params/dev - * Dont get tempted for :/ahsa/out/[1..n]/params/{rate, channels, and other stuff} - * that goes into /ahsa/out/[1..n]/plugins/0/params if /ahsa/out/[1..n]/plugins/0/detected == "headerless audio" - * There are a lot more things I can continue about the "sound server" .. The Ideas simply dont seem to exhaust.. - * Some features/advantages - * set output's translator plugin as ordinary text -- have text to speech conversion done by sound server! - * Create and apply plugin presets by simply copying directories! - * Me getting dizzy thinking of the zillion more advantages. - * If you are really doing some ordinary output , all you need to do is "cat" data into next free "plug" and everything will be autodetected including the format of the data and sent to the final sound "merge"r - * Dizzy ... - -* /usr/share/menu !!!! extension for package management idea .. - * cat mymenuitem.menu >> /usr/share/menu/menu - * cat /usr/share/menu/debian/kde ... :-) - -* Spam/Malware Control - * /usr/antimalware/ - put your mail here.. it will automatically be scanned. when finished it will vanish from here .. - * /usr/antimalware/clean - ... and pop out from here - * /usr/antimalware/malware - or here. - -* NetDevice - * !JustImagine(tm)... settrans -ac /netdevices /hurd/netdevfs - [ host | net ] - * One can access device files remotely - * This could be acheived by allowing translators talk to one another over a network - * This will need translators to catch and handle ioctls (if there is such a thing in HURD). - * The device server which will listen to requests from the translators can be run even on a Linux machine!!! - * !JustImagine(tm)... accessing the crwriter/webcam on that GNU/Linux machine on the network using cdrecord of your local hurd machine! - * !JustImagine(tm)... running GNU/HURD on a minimalistic GNU/Linux(but with all the drivers) through a specially modified and optimised Qemu. The device server runs on the host machine, and the client translators access over the virtual network created by Qemu. You got most of the drivers for free! - -* Emacs File VFS - * I came to know from my Emacs loving friend that there are lots of VFS handlers in Emacs.. I was wondering if there can be translator which can tap into these Emacs VFS handlers. +# Translator Wishlists + + * [[wishlist_1]] + * [[wishlist_2]] diff --git a/hurd/translator/wishlist_1.mdwn b/hurd/translator/wishlist_1.mdwn new file mode 100644 index 00000000..6a4d591a --- /dev/null +++ b/hurd/translator/wishlist_1.mdwn @@ -0,0 +1,129 @@ +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] + +[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU_Free_Documentation_License|/fdl]]."]]"""]] + +* [[devfs]] + +* FUSE(fuse.sourceforge.net/) compatilbility library. : just modify FUSE apps a and compile little to work as translator :-) + +* File Finder. (uses find, grep, a combination or a custom command (htdig, mp3 info) + * Files found will be available under one directory and then can be used like a normal directory + * usefull to generate Albums, Share only resulting files over the et, etc.. + * The filefinder can be scheduled or can be connected over some ipc like dbus to the VFS system if any to keep a watch for new files. + +* GNOKII, BitPim and openobex as translators + * grep through your SMSs! + * share your addressbook! + * "Attach" that funny SMS/MMS to your email. + * "svn commit" your joke collection :-D + +* Real Language Translator [[br]] + * cat /usr/translator/de-en/usr/share/doc/something.txt should take /usr/share/doc/something.txt , submit it to google's website and bring back results. + +* Mozilla Bookmarks = del.ici.ous + * Need more explanation ? ;-) + +* + * having a directory structure for a file can allow to "svn commit" the hnb document in a more "node-safe" manner, thus allowing multiple people to work on the same hnb document. + * This must be fairly easy as HNB can already export to XML and XMLfs already exists. + +* DavFS + * Just setup a 'WebDav share' as a directory. The implimentation of the protocol is already available in nautilus and konqueror. + +* Compiled form of your project + * you have your project in /somedir/project with source in /somedir/project/src .. /somedir/project/bin should always have the compiled version.. is it possible? + * The source has to have a MakeFile. + * creating /somedir/project/bin-somearch should aotomatically crosscompile + * Seems feasible for a small project. + +* Report generation FrameWork - an idea to be hugged by app developers..not kernel developers. + * You have financial data in some Spreadsheet like format in /yourFinance directory + * You add report templates to /yourFinance/repTemplates + * Once you save data in /yourFinance the next cat /yourFinance/reports/areportname will give you an uptodate report. + * This will be usefull for any purpose including serving by static page web servers, sharing over samba/nfs/ftp etc.! + * The advantage is any save to the spreadsheet will update the report.. not just from one software. + +* SVN (Subversion suite) + * like [[cvsfs]]. /svndir/version/version-no should automatically have subversion + * I think it is nice to write a generalised version control system framework library which will help in writing version control translators and other tools easily. + +* Flexi-acls + * First of all - Can this be done? : A translator bound to a directory must be able to access the contents of the directory which would have been accessible in the absence of the translator.. + * This will enable to wirte translators that can implement custom "Access Control Lists". Just imagine having advanced ACLs even if underlying FileSystem is dumb! Imagine changing the type of ACLs implemented with Just two commands - one to unattach previous translator and the next to attach a different ACL translator! The ACLs themselves may be stored in a different directory + +* The translator manager! + * Some translators will need to be inserted automatically - like for eg: hardware drivers .. + * Each hardware translator will pubish its capabilities. + * The "top" translator will query the capabilities of different hardware and match capabilities with the "slave" translators. That is it's only Job. + * The control is then handed over to the slave translator. + * The ranking not only looks who can handle the "most" capabilites of the hardware. If it finds that multiple translators can handle the same hardware, It will use other parameters to choose between them.. like may be the size in memory? The revision date? Stability (inferred from version number)? And to go to the extreme, the profiling data of the driver ;-P + * Advantage : The best driver wins! + +* An eg. Skip it if you understood the above :-): + * You have a driver that can handle VGA + SVGA + Super3d acceleration + Particle graphics + Works for nvidea card. + * You have a driver that can handle SVGA + VGA . + * You have a driver that can handle VGA. + * Case 1: Your card: A VGA card with some extra fonts.. + * First the VGA driver will be quireied .. ok can handle essential capability. + * Next SVGA driver: can handle but has extra module.. unnecassary weight . + * The Nvidia driver: can handle , but again unnecassary weight : ruled out. + * Winner : VGA driver: + * Case 2: Your card An SVGA card: + * First the VGA driver will be quireied .. ok can handle one essential capability. + * Next SVGA driver: can handle essential and one extra capability no extra weight.. + * The Nvidia driver: can handle , but unnecassary weight : ruled out. + * Winner : SVGA driver.. + * Case 3 : You have an VGA .. but no VGA driver .. then the SVGA driver would win. + +* Sound Server + * /ahsa - stands for Advanced HURD sound architecture :-) Just a temporary name .. for fun. + * /ahsa/out - directory wich will hold "plug"s where apllications come and join the server .. see below. + * /ahsa/out/mixer - main mixer + * /ahsa/out/nextfree - the file when "cat"ed gives the number of the next free plug + * /ahsa/plugins/ - info about available plugins + * /ahsa/out/[1..n]/ - dynamically generated directories for applications to plug on.. + * /ahsa/out/[1..n]/data this is where you should do a "cat somerawsoundfile>/ahsa/out/`cat /ahsa/nextfree`/data" + * /ahsa/out/[1..n]/plugins - the plugin stack .. volume is also a plugin.. + * /ahsa/out/[1..n]/plugins/[1..m]/ - echo "plugin param1 param2 param3" > /ahsa/out/[1..n]/plugins/`cat /ahsa/out/[1..n]/plugins/nextfree`/add + * /ahsa/out/[1..n]/plugins/[1..m]/params/{param1.. paramn} + * /ahsa/out/[1..n]/data.out - can be catted to get data processed through the server + * /ahsa/in - similar to /ahsa/out .. with except for an extra file to choose input devices. + * /ahsa/devs/{1..n} - devices detected .. can be dynamic .. there are usb soundcards and and midi devices. + * /ahsa/out/[1..n]/plugins/[1..m]/0/params/dev + * Dont get tempted for :/ahsa/out/[1..n]/params/{rate, channels, and other stuff} + * that goes into /ahsa/out/[1..n]/plugins/0/params if /ahsa/out/[1..n]/plugins/0/detected == "headerless audio" + * There are a lot more things I can continue about the "sound server" .. The Ideas simply dont seem to exhaust.. + * Some features/advantages + * set output's translator plugin as ordinary text -- have text to speech conversion done by sound server! + * Create and apply plugin presets by simply copying directories! + * Me getting dizzy thinking of the zillion more advantages. + * If you are really doing some ordinary output , all you need to do is "cat" data into next free "plug" and everything will be autodetected including the format of the data and sent to the final sound "merge"r + * Dizzy ... + +* /usr/share/menu !!!! extension for package management idea .. + * cat mymenuitem.menu >> /usr/share/menu/menu + * cat /usr/share/menu/debian/kde ... :-) + +* Spam/Malware Control + * /usr/antimalware/ - put your mail here.. it will automatically be scanned. when finished it will vanish from here .. + * /usr/antimalware/clean - ... and pop out from here + * /usr/antimalware/malware - or here. + +* NetDevice + * !JustImagine(tm)... settrans -ac /netdevices /hurd/netdevfs - [ host | net ] + * One can access device files remotely + * This could be acheived by allowing translators talk to one another over a network + * This will need translators to catch and handle ioctls (if there is such a thing in HURD). + * The device server which will listen to requests from the translators can be run even on a Linux machine!!! + * !JustImagine(tm)... accessing the crwriter/webcam on that GNU/Linux machine on the network using cdrecord of your local hurd machine! + * !JustImagine(tm)... running GNU/HURD on a minimalistic GNU/Linux(but with all the drivers) through a specially modified and optimised Qemu. The device server runs on the host machine, and the client translators access over the virtual network created by Qemu. You got most of the drivers for free! + +* Emacs File VFS + * I came to know from my Emacs loving friend that there are lots of VFS handlers in Emacs.. I was wondering if there can be translator which can tap into these Emacs VFS handlers. diff --git a/hurd/translator/wishlist_2.mdwn b/hurd/translator/wishlist_2.mdwn new file mode 100644 index 00000000..3ea68999 --- /dev/null +++ b/hurd/translator/wishlist_2.mdwn @@ -0,0 +1,189 @@ +## Introduction + +The idea behind file system translators is a powerful concept which hasn't recieved much attention in the mainstream computing world. So here is a list of interesting translators I've been able to dream up. I'm sure there are many more ideas floating around out there, so add them to the list! + +The [ferris project](http://witme.sourceforge.net/libferris.web/features.html) has some great ideas and code in the area of userspace dynamic filesystems, as has the [FUSE project](http://fuse.sourceforge.net/). + +## Audio\_cdfs + +A translator which produces a directory of \*.wav files when you have an audio CD in the drive. + +## Ogg + +This translator could be a sub-directory of the Audio\_cdfs translator and it would translate the \*.wav files into Ogg Vorbis/MP3 format. + +## CDDB + +Of course it would be a lot nicer if the above two translators didn't name their files something worthless like track001.ogg. So we would want a translator which would hook up with a database on the web and produce meaningful file names. + +## Crypto + +A cryptographic/steganographic seem like a nice match with the concept of user-land file systems. I like the idea of something like `settrans -a /secure stegfs --mpeg file001.mpg` + +## Revision control + +All of the empty space on your drive is now being wasted. Why not have a revision control translator which tracks changes to your documents? See also [this guy](http://www.linuxjournal.com/article.php?sid=5976). And then you'd do something like `cd /time-machine/2003/sept/14/` to see what your system looked like on the 14th of septempber 2003. + +## CVSFS + +See [cvsFS for Linux](http://cvsfs.sourceforge.net/). This provides a package which presents the CVS contents as mountable file system. It allows to view the versioned files as like they were ordinary files on a disk. There is also a possibility to check in/out some files for editing. A read-only version has been written by Stefan Siegl and is available at [Berlios](http://cvs.berlios.de/cgi-bin/viewcvs.cgi/cvsfs4hurd/cvsfs/). + +## tar and gzip + +Rumor has it that they are on the way. Actually, a tar + gzip/bzip2 translator does exist (although it hasn't been used much...) : see [the Hurdextras project](http://savannah.nongnu.org/projects/hurdextras/) on Savannah. + +## ROM + +How about a translator which makes it look like you can write to read only media (like CDs), or change files which I don't have permission to change. This translator would make it seem like you could copy files to places where you normally couldn't. Think about combining this translator with the ftp translator and the tar and gzip translators. (cd /ftp/gnu.org/gnome.tar.gz/writes\_allowed; make install). It could be that unionfs does this very thing. + +## Super\_FIFO + +It's like a named pipe which is smart enough to start a process everytime something new tries to read from it. For example, let's say I have a script that reads in a JPEG image and spits out a smaller thumbnail \*.jpg to STDOUT. With a standard fifo (`mknod -p fifo`) this would almost works (`script big.jpg > fifo`). But what if there are two processes trying to read the fifo at once? Ick. And of course the standard way only works once without rerunning the command. I'm not quite sure what the syntax should look like, but I'm sure someone out there has a great idea waiting to happen. + +## Perl + +Perl is a wonderful language for hacking together something useful in a short amount of time. No concept is complete without being able to use it in a perl one-liner. And that goes for Hurd translators too. Right? + + #!/usr/bin/perl + use Hurd::translator; + + #file named "two" can produce an endless supply of twos, etc. (a la /dev/zero) + my $i=0; + for $filename ([zero one two three four]) + { + $libtrivfsread_codehash{$filename}= + sub{ $num_bytes=shift; my $data=$i; return chr($data) x $num_bytes; }; + #that's a hash of references to closures + $i++; + } + translator_startup(); + +A Perl translator has been started by [John Edwin Tobey](http://john-edwin-tobey.org/Hurd/) (pith). + +## Source code + +Here's a crazy thought. How about a translator for source code. You have a C source file like `hello.c` which is your normal everyday file. But there's a translator sitting underneath, so when you `cd hello.c` you get a directory with files like `main()` which represent the subroutines in `hello.c`. And of course you should be able to edit/remove those and have it modify the original source. + +## Libraries + +Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html) from the people making [userspace drivers in Linux](http://www.circlemud.org/~jelson/software/fusd/): + +* "One particularly interesting application of FUSD that we've found very useful is as a way to let regular user-space libraries export device file APIs. For example, imagine you had a library which factored large composite numbers. Typically, it might have a C interface--say, a function called `int *factorize(int bignum)`. With FUSD, it's possible to create a device file interface--say, a device called `/dev/factorize` to which clients can `write(2)` a big number, then `read(2)` back its factors. + +* This may sound strange, but device file APIs have at least three advantages over a typical library API. First, it becomes much more language independent--any language that can make system calls can access the factorization library. Second, the factorization code is running in a different address space; if it crashes, it won't crash or corrupt the caller. Third, and most interestingly, it is possible to use `select(2)` to wait for the factorization to complete. `select(2)` would make it easy for a client to factor a large number while remaining responsive to other events that might happen in the meantime. In other words, FUSD allows normal user-space libraries to integrate seamlessly with UNIX's existing, POSIX-standard event notification interface: `select(2)`." + +## Mail + +Am I off my rocker, or does an IMAP/POP translator sound like a good idea? It would make your remote mail servers look like local ones. Or what about a translator that makes a mbox format mail spool look like a directory. Can anyone think of a good use for an SMTP translator? + +## UUEncode + +How about a UUEncode translator for those places you can only store ASCII. Combine this with a NNTP translator and store your data in someone's Usenet archive. Or since, (as far as I know), there are no size limitations on file names in the Hurd, why not have a filesystem translator whose underlying store is a file name. (Now ls becomes cat). + +## Computation + +This is from the revenge of the command-line department. Make a directory translator whose contents are a result of the computation specified in the directory name. Here's an example... + + $ settrans -a /comp /hurd/computationfs + $ cd "/comp/3+4" + $ ls -l + total 0 + -rw-r--r-- 1 nobody users 0 Oct 16 11:41 7 + $ + $ cd "/comp/sqrt(2)" + $ ls -l + total 0 + -rw-r--r-- 1 nobody users 0 Oct 16 11:42 1.4142135623731 + $ + +...etc. Now think about your favorite GUI HTML editor and using File->Open on the following directory name, ``"/comp/for i in $( find / -name *.html ); do ln -s $i `basename $i`;done"`` Which would produce a directory listing with soft links to all of the \*.html files on your system. You could have all of the comforts of the shell from within that little File->Open dialog box. + +## Other + +Just found Wolfgang J�hrling's translator [wishlist](http://www.8ung.at/shell/trans.html). + +## Bochs + +A translator which works with [Bochs](http://bochs.sourceforge.net/) disk images would be nice. + +## Rollover + +A translator that uses a circular buffer to store log files. The translated node only contains the last N (mega,kilo)bytes. + +## Birthday + +A translator that provides an interface into the birthday program. + +You can cat your calendar, eg. bd/calendar/today bd/calendar/this-week or bd/calendar/this-month. + +And you could write new events into files located in bd/events/DATE/event-name. + +DATE is of the format the birthday expects DD/MM/YYYY. + +The contents of the file are any or none of the following birthday options: ann (An anniversary), bd (A birthday), ev (Some other event), wN (Warn N days in advance of date), toDATE (Event lasts until this DATE), forDAYS (Event runs for DAYS). + +You can optionally just edit the bd/birthdays file if you want to edit the configuration file by hand. It might make sense to write changes from bd/birthdays into ~/.birthdays. + + $ settrans -c bd /hurd/birthday -f ~/.birthdays + $ ls bd/ + birthdays calendar events + $ find bd -print + bd + bd/calendar + bd/calendar/daily + bd/calendar/this-week + bd/calendar/this-month + bd/events + bd/birthdays + $ + +## LVM + +A translator to access block devices from Linux's [Logical Volume Management](http://www.tldp.org/HOWTO/LVM-HOWTO/) would be an useful addition. + + # settrans -cap /dev/VolumeGroup0 /hurd/lvm /dev/PhysicalVolume0 /dev/PhysicalVolume1 ... + # ls /dev/VolumeGroup0/ + home + var + # settrans -cap /home /hurd/ext2fs /dev/VolumeGroup0/home + # settrans -cap /var /hurd/ext2fs /dev/VolumeGroup0/var + +Probably both [LVM2](http://sourceware.org/lvm2/) and the [Device-mapper](http://sourceware.org/dm/) need to be ported. + +## bridging translator + +A [bridging](http://bridge.sourceforge.net/faq.html) translator could improve the Hurd's networking facilities. + + # settrans -cap /dev/br0 /hurd/bridge -i eth0 -i eth1 ... + # settrans -cap /servers/socket/2 /hurd/pfinet -i /dev/br0 -a ... -g ... -m ... + +Perhaps Linux's bridging code and [utilities](http://bridge.sourceforge.net/) can be ported (or glued in) or code from one of the BSDs. + +## SSH translator + +Presenting remote file systems through SSH similar to what gnome-vfs does. + +## SMB translator + +Presenting remote file systems through Samba similar to what gnome-vfs does. Guiseppe Scrivano has worked on this and smbfs is available at [hurdextras](http://savannah.nongnu.org/cgi-bin/viewcvs/hurdextras/smbfs/). + +## Crontab translator + +Presenting a user's crontab in a filesystem where cron entries are files. + +## globlink + +Firmlink to a file according to a filename matching pattern. When a file goes away, the next file that is matched is automatically linked to. + + $ settrans -ac libfoo.so /hurd/globlink '/lib/libfoo*' + +## alphabetfs + +Organize a large group of files by their first letter. Present one subdirectory for each letter in the alphabet. + +## fsysoptsctl + +Send an fsysopts command to a set of translators. When you have a directory full of translators and you want to send each of them the same runtime option, this translator can do it for you. + + $ settrans -ac all /hurd/fsysoptsctl '/tmp/mystuff/*' + $ fsysopts all --update diff --git a/unsorted/ABITransitionStatus.mdwn b/unsorted/ABITransitionStatus.mdwn deleted file mode 100644 index 123e8f8c..00000000 --- a/unsorted/ABITransitionStatus.mdwn +++ /dev/null @@ -1,9 +0,0 @@ -Several transitions have occured recently. - -* [ABI Switch](http://lists.debian.org/debian-hurd/2002/debian-hurd-200204/msg00096.html) from April 17, 2002 - -* [Phase I accomplished](http://lists.debian.org/debian-hurd/2002/debian-hurd-200204/msg00157.html) from April 26, 2002 - -* [status of the ABI transition](http://lists.debian.org/debian-hurd/2002/debian-hurd-200205/msg00242.html) from May 15, 2002 - --- [[Main/GrantBow]] - 15 May 2002 diff --git a/unsorted/AdvancedGrubUsage.mdwn b/unsorted/AdvancedGrubUsage.mdwn deleted file mode 100644 index 8e307b4f..00000000 --- a/unsorted/AdvancedGrubUsage.mdwn +++ /dev/null @@ -1,42 +0,0 @@ -## Advanced Grub - -[Grub](http://www.gnu.org/software/grub/) is a capable boot loader. This document is intended to capture some of its most interesting features and try to explain them a bit better than the texinfo documentation. - -### Debian Grub - -The Debian grub packages do not have networking enabled, so you have to apt-get the source, modify the debian/rules file to include --enable-network-card and dpkg-buildpackage to get a .deb of grub that supports TFTP. - -1. cd /usr/src/debian -2. apt-get source grub -3. cd grub-\_VERSION\_ -4. Add `--enable-tulip` or similar for your NIC to the `./configure` line of the `configure-stamp` target in the `debian/rules` file. -5. `dpkg-buildpackage` (as `root`) -6. `cd ..` -7. `dpkg -i grub*.deb` -8. cp /lib/grub/\_ARCH\_/\* /boot/grub/, e.g., _ARCH_ is `i386-pc` -9. Edit your `/boot/grub/menu.lst` (see below) -10. If your boot disk is `/dev/hda` ==> `grub-install (hd0)` - -### TFTP Boot - -Using trivial ftp to load a kernel is one of the best features of Grub. Here is how it is done. - -The `menu.lst` can look something like this: - - ifconfig --address=192.168.1.2 --server=192.168.1.1 - root (nd) - kernel /gnu/boot/oskit-mach.gz root=device:hd0s2 -- - root (hd0,1) - module /hurd/ext2fs.static \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -**Note: Make sure there are NO spaces after the trailing backslases (\\)!!** - -For more information on GNUmach modules lines and installation setup, see [[Hurd/InstallNotes]] - --- [[Main/JoachimNilsson]] - 13 Apr 2005 diff --git a/unsorted/AptConfOffline.mdwn b/unsorted/AptConfOffline.mdwn deleted file mode 100644 index c4cc85be..00000000 --- a/unsorted/AptConfOffline.mdwn +++ /dev/null @@ -1,28 +0,0 @@ - APT - { - /* This file belongs in Debian GNU/Hurd's /etc/apt/apt.conf.offline - and will be used when running Debian GNU/Linux. This is only - required when the GNU/Hurd does not have network access. */ - - Architecture "hurd-i386"; - - Get::Download-Only "true"; - }; - - Dir - { - /* Use the disc for state information and redirect the status file from - the /var/lib/dpkg default - assumes Debian GNU/Hurd mounted on /misc/hurd and /var mounted underneath this if necessary */ - - // State::lists should be here, the lists subdirectory. - State "/misc/hurd/var/lib/apt/"; - State::status "/misc/hurd/var/lib/dpkg/status"; - - // Binary caches will be stored locally - Cache::archives "/misc/hurd/var/cache/apt/archives/"; - Cache "/tmp/"; - - // Location of the source list. - Etc "/misc/hurd/etc/apt/"; - }; diff --git a/unsorted/BootProcess.mdwn b/unsorted/BootProcess.mdwn deleted file mode 100644 index 17f7bba7..00000000 --- a/unsorted/BootProcess.mdwn +++ /dev/null @@ -1,36 +0,0 @@ -Describes the GNU/Hurd boot process. - -# Bootloader - -[GRUB](http://www.gnu.org/software/grub/) (GRand Unified Bootloader) is the default (and as far as I know the only supported ) bootloader for GNU/Hurd and is the initial process. - -GRUB can be used for booting multiple Operating Systems on a given machine. Device naming convention for GRUB is different than that of the Hurd. Where the first partition on the primary IDE drive in GNU/Hurd is hd0s1, in GRUB it is (hd0,0). In the case of GNU/Hurd, the first thing that GRUB loads is kernel image. - -Here is a copy of GNU/Hurd multi-user entry from menu.lst. The first two lines are primarily informational and are what get displayed on the GRUB boot menu. - - # Entry 2: 1st partition on first HDD - title GNU/Hurd (IDE 1st partition - hd0s1 multi-user) - root (hd0,0) - kernel /boot/gnumach.gz root=device:hd0s1 - module /hurd/ext2fs.static --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -**_N.B. the escaped new lines above should end in only a back slash, no spaces!_** - -The line "root (hd0,0)" tells GRUB where to look for the root partition. Notice that the (hd0,0) is using GRUB naming conventions. - -The next line loads the gnumach kernel image itself. Notice here the root=device:hd0s1 argument. This is now using GNU/Hurd device naming convention, telling the Hurd where the root partition exists. - ----- - --- [[Main/BarryDeFreese]] - 29 May 2003 - -Minor formatting and edit check. - -On a side note. The actual description of the GNU/Hurd boot process is a good idea but keeping duplicated information to a bare minimum must be the guide line for a "book" like this. See other topics for more information on Grub configuration for instance. - --- [[Main/JoachimNilsson]] - 30 May 2003 diff --git a/unsorted/GNOME.mdwn b/unsorted/GNOME.mdwn deleted file mode 100644 index 1dbef091..00000000 --- a/unsorted/GNOME.mdwn +++ /dev/null @@ -1,11 +0,0 @@ -![gnome-hurd.png](http://people.debian.org/~mbanck/media/gnome-hurd.png) - -GNOME can now be ported with the new [[Pthreads]], but is still being worked on.The packages are at - -deb ./ - -The caveats: - -Some applications are not yet built, not even all the ones from gnome-core. 'apt-get install gnome-applets gnome-control-center gnome-icon-theme gnome-panel gnome-session metacity nautilus scrollkeeper' (along with the above APT source) should get you started. - -See also: [[Xfree86]]. diff --git a/unsorted/GrubNotes.mdwn b/unsorted/GrubNotes.mdwn deleted file mode 100644 index b0b1fdf5..00000000 --- a/unsorted/GrubNotes.mdwn +++ /dev/null @@ -1,70 +0,0 @@ -This section complements the [[InstallNotes]] with complete information regarding the GRUB boot loader. The syntax is different from Lilo's and so to scratch my own itch I'm creating this quick reference. The [Grub manual](http://www.gnu.org/software/grub/manual/grub.html) is another good reference. - -* update-grub is **Debian specific** and very nice. It will automatically create a /boot/grub/menu.lst file for the kernels in /boot/. It will also append a manually configured set for other partitions like the GNU/Hurd. -* grub-floppy is a **Debian specific** boot floppy creation script. -* mkbimage is a **Debian specific** boot disk image creation script. -* contains a Debian packaged makefile for creating CD & floppy images. Looks like it doesn't work properly. If you fix it, please send patches to the maintainer. -* essential GRUB commands & disk syntax - * root - * kernel - * module - * boot -* sample file - - title GNU/Linux - root (hd0,11) - kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro - initrd /boot/initrd.img-2.4.18 - savedefault - - title GNU - root (hd0,15) - kernel /boot/oskit-mach root=device:hd0s16 -- - module /hurd/ext2fs.static \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - savedefault - - title DOS - rootnoverify (hd0,0) - chainloader +1 - --- [[Main/GrantBow]] - 01 Oct 2002
-- [[Main/GrantBow]] - 22 Dec 2002 - -Another example, just as good, but a lot easier to read. The backslash at the end of each line is to "escape" the enter-key. So make sure there are no spaces following the backslashes! - - title GNU/Linux (Linux 2.4.18) - root (hd0,11) - kernel /boot/vmlinuz-2.4.18 root=/dev/hda12 ro - initrd /boot/initrd.img-2.4.18 - savedefault - - title GNUmach 1.3 - root (hd0,1) - kernel /boot/gnumach.gz root=device:hd0s2 - module /hurd/ext2fs.static --readonly \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - - title GNUmach 1.90 (CVS) - root (hd0,1) - kernel /boot/oskit-mach.gz root=device:hd0s2 -- - module /hurd/ext2fs.static --readonly \ - --multiboot-command-line=${kernel-command-line} \ - --host-priv-port=${host-port} \ - --device-master-port=${device-port} \ - --exec-server-task=${exec-task} \ - -T typed ${root} $(task-create) $(task-resume) - module /lib/ld.so.1 /hurd/exec $(exec-task=task-create) - -Note the differences between GNUmach and OSKit-Mach. The latter **needs** the two dashes after the root specification! - --- [[Main/JoachimNilsson]] - 09 Nov 2002 diff --git a/unsorted/InstallNotes.mdwn b/unsorted/InstallNotes.mdwn index 49dcd53d..1cdfca9c 100644 --- a/unsorted/InstallNotes.mdwn +++ b/unsorted/InstallNotes.mdwn @@ -47,7 +47,7 @@ You can always install GRUB onto your hard drive at a later date. For instructions on using GRUB, see either the info documentation or the quick reference notes on this wiki: -* [[Distrib/GrubNotes]] - quick reference +* [[GRUB]] - quick reference ## 4. Cross Install - Cross Installing GNU diff --git a/unsorted/InstallTips.mdwn b/unsorted/InstallTips.mdwn index a735fbf7..c9f5bdc2 100644 --- a/unsorted/InstallTips.mdwn +++ b/unsorted/InstallTips.mdwn @@ -60,7 +60,7 @@ now mount the floppy and copy the files to your partition you may also wish to put my menu.lst file in your grub directory which can be obtained here you will need to edit it to include a -s at the end of the line starting with kernel. Be sure modify the partition numbers, my system is using the third partition of the second harddrive. -More detailed samples for grub config files can be found at the [[GrubNotes]] +More detailed samples for GRUB config files can be found at the [[GRUB]] page. To install grub reboot using the grub floppy and issue: diff --git a/unsorted/LuisBustamanteHurdPage.mdwn b/unsorted/LuisBustamanteHurdPage.mdwn deleted file mode 100644 index abbf1531..00000000 --- a/unsorted/LuisBustamanteHurdPage.mdwn +++ /dev/null @@ -1,11 +0,0 @@ -Nothing much to see right now, I'll add some stuff I'm working in the near future! :) - -Cheers, - --- [[Main/LuisBustamante]] - 16 May 2002 - -After making some trivial/incorrect patches (thanks Neal :) for building um-pppd with gcc 3.0.4 in Debian (see [\#147085](http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=147085&repeatmerged=yes)) this weekend I'll finally give it a try, I got an external modem... anyway serial drivers seem to be broken in GNUmach iirc, I won't get much more than 300b/s :). - -Keep Hurding! - --- [[Main/LuisBustamante]] - 17 May 2002 diff --git a/unsorted/NewMachHistory.mdwn b/unsorted/NewMachHistory.mdwn deleted file mode 100644 index 562d1cac..00000000 --- a/unsorted/NewMachHistory.mdwn +++ /dev/null @@ -1,27 +0,0 @@ -# Table of Contents - -%TOC% - -# Early beginnings - -GNUMach is based on Mach4 from University of Utah, which in turn is based on Mach3 from Carnegie-Mellon University. The last release of Mach4 was the [UK22 release](http://www.cs.utah.edu/flux/mach4-i386/html/mach4-UK22.html). - -The oskit-mach version of GNU Mach was presented in November 1999 by Roland McGrath. The purpose of the port was to get better hardware support through new drivers and platform code available in the OSKit. - -On May 27 2002, after the Gnumach 1.3 release, Roland McGrath merged OSKit-Mach onto the HEAD of CVS making it the Gnumach 2.x mainline. - -# Status of the project - -GNU Mach 1.3 was released in May 2002, and features advanced boot script support, support for large disks (>= 10GB) and an improved console. - -GNU Mach is used as the default microkernel in the GNU/Hurd system. It is compatible with other popular Mach distributions. The device drivers for block devices and network cards are taken from Linux 2.0.x kernel versions, and so a broad range of common hardware is supported. - -However, the Linux device drivers have been improved greatly since the 2.0.x version, and a new version of GNU Mach based on the OSKit library is being worked on, which uses newer drivers and in general has cleaner machine specific support code. - ----- - -Copyright (C) 2001 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA - -Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. - --- [[Main/JoachimNilsson]] - 24 Oct 2002 diff --git a/unsorted/OskitMach.mdwn b/unsorted/OskitMach.mdwn index c28f2d89..b5b92d68 100644 --- a/unsorted/OskitMach.mdwn +++ b/unsorted/OskitMach.mdwn @@ -37,7 +37,7 @@ First you need to get the latest OSKit release and, preferrably, the latest CVS ## Starting -You start Oskit-Mach almost the same way as the old 1.x version of GNUmach. Using [[Hurd/GrubNotes]] an entry can look like this: +You start Oskit-Mach almost the same way as the old 1.x version of GNUmach. Using [[GRUB]] an entry can look like this: title GNUmach 1.90 (CVS) root (hd0,1) diff --git a/unsorted/PppDaemon.mdwn b/unsorted/PppDaemon.mdwn deleted file mode 100644 index f667d449..00000000 --- a/unsorted/PppDaemon.mdwn +++ /dev/null @@ -1,6 +0,0 @@ -There is no PPP solution present for the Hurd. - -* Filed Debian [um-ppp bug](http://bugs.debian.org/cgi-bin/bugreport.cgi?archive=no\&bug=147085) -* Clemmitt [asked about um-pppd](http://mail.gnu.org/pipermail/help-hurd/2002-October/006664.html) in this thread of 9 posts beginning Oct 10, 2002. - --- [[Main/GrantBow]] - 20 Oct 2002 diff --git a/unsorted/TranslatorExamples.mdwn b/unsorted/TranslatorExamples.mdwn deleted file mode 100644 index 0c2e5741..00000000 --- a/unsorted/TranslatorExamples.mdwn +++ /dev/null @@ -1,61 +0,0 @@ -## Introduction - -Translators are probably the most known feature of the Hurd, the first thing you should show when doing a demo. - -## run - -Couldn't manage to compile it, but allows you to do nice things with eg. fortune. - -## ftpfs - -hurd:~# settrans -c ftp /hurd/ftpfs 128.101.80.131:/ - -hurd:~# cd ftp - -hurd:~/ftp# ls - -debian debian-archive lost+found - -hurd:~/ftp# cd debian - -hurd:~/ftp/debian# ls - -README README.mirrors.txt doc ls-lR.patch.gz - -README.CD-manufacture README.non-US indices pool - -README.html README.pgp ls-lR project - -README.mirrors.html dists ls-lR.gz tools - -hurd:~/ftp/debian# cp README ~ - -hurd:~/ftp/debian# - -You have to specify the server address with its IP, or your computer will buy a farm or something. - -## ftpfs and hostmux - -currently (28/02/2004) not working, but should be. - -hurd:~# settrans -c ftp /hurd/hostmux /hurd/ftpfs / - -hurd:~# cd ftp - -hurd:~/ftp# cd ftp.debian.org - --bash: cd: ftp.debian.org: Computer bought the farm - -hurd:~/ftp# host ftp.debian.org - -ftp.debian.org A 128.101.80.131 - -ftp.debian.org A 208.185.25.38 - -hurd:~/ftp# cd 128.101.80.131 - --bash: cd: 128.101.80.131: Computer bought the farm - -## Articles about translators - -* [The GNU Hurd - Translators by Gael le Mignot](http://kilobug.free.fr/hurd/pres-en/html/node8.html) diff --git a/unsorted/TranslatorPages.mdwn b/unsorted/TranslatorPages.mdwn deleted file mode 100644 index 8e954521..00000000 --- a/unsorted/TranslatorPages.mdwn +++ /dev/null @@ -1,51 +0,0 @@ -
-
[[NeighborHurd]]
-
A concept possible with microkernels.
-
[[InteractiveTranslators]]
-
Translators that interact with user
-
[[TranslatorExamples]]
-
Examples of what you can do with translators
-
[[TranslatorWishList]]
-
Interesting file translator ideas
-
- -Here are the translators that currently exist: - -* [[AuthTranslator]] -* [[CrashTranslator]] -* [[ExecTranslator]] -* [[ExtTwofsTranslator]] - (actually named ext2fs) Ext2 filesystems, also ext2fs.static -* [[FifoTranslator]] - also [[NewfifoTranslator]] (actually named new-fifo) -* [[FirmlinkTranslator]] -* [[FtpfsTranslator]] - ftp as a filesystem -* [[FwdTranslator]] -* [[HelloTranslator]] - also [[HellomtTranslator]] (actually named hello-mt) -* [[HostmuxTranslator]] -* [[IfsockTranslator]] -* [[InitTranslator]] -* [[IsofsTranslator]] -* [[KbdTranslator]] -* [[MachdefpagerTranslator]] - (actually named mach-defpager) -* [[hurd/translator/magic]] -* [[MouseTranslator]] -* [[NfsTranslator]] -* [[NullTranslator]] -* [[PasswordTranslator]] -* [[PfinetTranslator]] - also [[PflocalTranslator]] -* [[ProcTranslator]] -* [[SmbfsTranslator]] -* [[StoreioTranslator]] -* [[StreamioTranslator]] -* [[SymlinkTranslator]] -* [[TermTranslator]] -* [[TmpfsTranslator]] -* [[UfsTranslator]] - also ufs.static -* [[UsermuxTranslator]] - -Here are the contributed translators: - -* [[CryptTranslator]] - - -This is an old list and might need some updating, please check if you have a Hurd system that this list is accurate. - --- [[Main/GrantBow]] - 03 Mar 2004 diff --git a/unsorted/TranslatorWishList.mdwn b/unsorted/TranslatorWishList.mdwn deleted file mode 100644 index 38bd87d9..00000000 --- a/unsorted/TranslatorWishList.mdwn +++ /dev/null @@ -1,193 +0,0 @@ -## Introduction - -The idea behind file system translators is a powerful concept which hasn't recieved much attention in the mainstream computing world. So here is a list of interesting translators I've been able to dream up. I'm sure there are many more ideas floating around out there, so add them to the list! - -The [ferris project](http://witme.sourceforge.net/libferris.web/features.html) has some great ideas and code in the area of userspace dynamic filesystems, as has the [FUSE project](http://fuse.sourceforge.net/). - -## Audio\_cdfs - -A translator which produces a directory of \*.wav files when you have an audio CD in the drive. - -## Ogg - -This translator could be a sub-directory of the Audio\_cdfs translator and it would translate the \*.wav files into Ogg Vorbis/MP3 format. - -## CDDB - -Of course it would be a lot nicer if the above two translators didn't name their files something worthless like track001.ogg. So we would want a translator which would hook up with a database on the web and produce meaningful file names. - -## Crypto - -A cryptographic/steganographic seem like a nice match with the concept of user-land file systems. I like the idea of something like `settrans -a /secure stegfs --mpeg file001.mpg` - -## Revision control - -All of the empty space on your drive is now being wasted. Why not have a revision control translator which tracks changes to your documents? See also [this guy](http://www.linuxjournal.com/article.php?sid=5976). And then you'd do something like `cd /time-machine/2003/sept/14/` to see what your system looked like on the 14th of septempber 2003. - -## CVSFS - -See [cvsFS for Linux](http://cvsfs.sourceforge.net/). This provides a package which presents the CVS contents as mountable file system. It allows to view the versioned files as like they were ordinary files on a disk. There is also a possibility to check in/out some files for editing. A read-only version has been written by Stefan Siegl and is available at [Berlios](http://cvs.berlios.de/cgi-bin/viewcvs.cgi/cvsfs4hurd/cvsfs/). - -## tar and gzip - -Rumor has it that they are on the way. Actually, a tar + gzip/bzip2 translator does exist (although it hasn't been used much...) : see [the Hurdextras project](http://savannah.nongnu.org/projects/hurdextras/) on Savannah. - -## ROM - -How about a translator which makes it look like you can write to read only media (like CDs), or change files which I don't have permission to change. This translator would make it seem like you could copy files to places where you normally couldn't. Think about combining this translator with the ftp translator and the tar and gzip translators. (cd /ftp/gnu.org/gnome.tar.gz/writes\_allowed; make install). It could be that unionfs does this very thing. - -## Super\_FIFO - -It's like a named pipe which is smart enough to start a process everytime something new tries to read from it. For example, let's say I have a script that reads in a JPEG image and spits out a smaller thumbnail \*.jpg to STDOUT. With a standard fifo (`mknod -p fifo`) this would almost works (`script big.jpg > fifo`). But what if there are two processes trying to read the fifo at once? Ick. And of course the standard way only works once without rerunning the command. I'm not quite sure what the syntax should look like, but I'm sure someone out there has a great idea waiting to happen. - -## Perl - -Perl is a wonderful language for hacking together something useful in a short amount of time. No concept is complete without being able to use it in a perl one-liner. And that goes for Hurd translators too. Right? - - #!/usr/bin/perl - use Hurd::translator; - - #file named "two" can produce an endless supply of twos, etc. (a la /dev/zero) - my $i=0; - for $filename ([zero one two three four]) - { - $libtrivfsread_codehash{$filename}= - sub{ $num_bytes=shift; my $data=$i; return chr($data) x $num_bytes; }; - #that's a hash of references to closures - $i++; - } - translator_startup(); - -A Perl translator has been started by [John Edwin Tobey](http://john-edwin-tobey.org/Hurd/) (pith). - -## Source code - -Here's a crazy thought. How about a translator for source code. You have a C source file like `hello.c` which is your normal everyday file. But there's a translator sitting underneath, so when you `cd hello.c` you get a directory with files like `main()` which represent the subroutines in `hello.c`. And of course you should be able to edit/remove those and have it modify the original source. - -## Libraries - -Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html) from the people making [userspace drivers in Linux](http://www.circlemud.org/~jelson/software/fusd/): - -* "One particularly interesting application of FUSD that we've found very useful is as a way to let regular user-space libraries export device file APIs. For example, imagine you had a library which factored large composite numbers. Typically, it might have a C interface--say, a function called `int *factorize(int bignum)`. With FUSD, it's possible to create a device file interface--say, a device called `/dev/factorize` to which clients can `write(2)` a big number, then `read(2)` back its factors. - -* This may sound strange, but device file APIs have at least three advantages over a typical library API. First, it becomes much more language independent--any language that can make system calls can access the factorization library. Second, the factorization code is running in a different address space; if it crashes, it won't crash or corrupt the caller. Third, and most interestingly, it is possible to use `select(2)` to wait for the factorization to complete. `select(2)` would make it easy for a client to factor a large number while remaining responsive to other events that might happen in the meantime. In other words, FUSD allows normal user-space libraries to integrate seamlessly with UNIX's existing, POSIX-standard event notification interface: `select(2)`." - -## Mail - -Am I off my rocker, or does an IMAP/POP translator sound like a good idea? It would make your remote mail servers look like local ones. Or what about a translator that makes a mbox format mail spool look like a directory. Can anyone think of a good use for an SMTP translator? - -## UUEncode - -How about a UUEncode translator for those places you can only store ASCII. Combine this with a NNTP translator and store your data in someone's Usenet archive. Or since, (as far as I know), there are no size limitations on file names in the Hurd, why not have a filesystem translator whose underlying store is a file name. (Now ls becomes cat). - -## Computation - -This is from the revenge of the command-line department. Make a directory translator whose contents are a result of the computation specified in the directory name. Here's an example... - - $ settrans -a /comp /hurd/computationfs - $ cd "/comp/3+4" - $ ls -l - total 0 - -rw-r--r-- 1 nobody users 0 Oct 16 11:41 7 - $ - $ cd "/comp/sqrt(2)" - $ ls -l - total 0 - -rw-r--r-- 1 nobody users 0 Oct 16 11:42 1.4142135623731 - $ - -...etc. Now think about your favorite GUI HTML editor and using File->Open on the following directory name, ``"/comp/for i in $( find / -name *.html ); do ln -s $i `basename $i`;done"`` Which would produce a directory listing with soft links to all of the \*.html files on your system. You could have all of the comforts of the shell from within that little File->Open dialog box. - -## Other - -Just found Wolfgang J�hrling's translator [wishlist](http://www.8ung.at/shell/trans.html). - -## Bochs - -A translator which works with [Bochs](http://bochs.sourceforge.net/) disk images would be nice. - -## Rollover - -A translator that uses a circular buffer to store log files. The translated node only contains the last N (mega,kilo)bytes. - -## Birthday - -A translator that provides an interface into the birthday program. - -You can cat your calendar, eg. bd/calendar/today bd/calendar/this-week or bd/calendar/this-month. - -And you could write new events into files located in bd/events/DATE/event-name. - -DATE is of the format the birthday expects DD/MM/YYYY. - -The contents of the file are any or none of the following birthday options: ann (An anniversary), bd (A birthday), ev (Some other event), wN (Warn N days in advance of date), toDATE (Event lasts until this DATE), forDAYS (Event runs for DAYS). - -You can optionally just edit the bd/birthdays file if you want to edit the configuration file by hand. It might make sense to write changes from bd/birthdays into ~/.birthdays. - - $ settrans -c bd /hurd/birthday -f ~/.birthdays - $ ls bd/ - birthdays calendar events - $ find bd -print - bd - bd/calendar - bd/calendar/daily - bd/calendar/this-week - bd/calendar/this-month - bd/events - bd/birthdays - $ - -## LVM - -A translator to access block devices from Linux's [Logical Volume Management](http://www.tldp.org/HOWTO/LVM-HOWTO/) would be an useful addition. - - # settrans -cap /dev/VolumeGroup0 /hurd/lvm /dev/PhysicalVolume0 /dev/PhysicalVolume1 ... - # ls /dev/VolumeGroup0/ - home - var - # settrans -cap /home /hurd/ext2fs /dev/VolumeGroup0/home - # settrans -cap /var /hurd/ext2fs /dev/VolumeGroup0/var - -Probably both [LVM2](http://sourceware.org/lvm2/) and the [Device-mapper](http://sourceware.org/dm/) need to be ported. - -## bridging translator - -A [bridging](http://bridge.sourceforge.net/faq.html) translator could improve the Hurd's networking facilities. - - # settrans -cap /dev/br0 /hurd/bridge -i eth0 -i eth1 ... - # settrans -cap /servers/socket/2 /hurd/pfinet -i /dev/br0 -a ... -g ... -m ... - -Perhaps Linux's bridging code and [utilities](http://bridge.sourceforge.net/) can be ported (or glued in) or code from one of the BSDs. - -## SSH translator - -Presenting remote file systems through SSH similar to what gnome-vfs does. - -## SMB translator - -Presenting remote file systems through Samba similar to what gnome-vfs does. Guiseppe Scrivano has worked on this and smbfs is available at [hurdextras](http://savannah.nongnu.org/cgi-bin/viewcvs/hurdextras/smbfs/). - -## Crontab translator - -Presenting a user's crontab in a filesystem where cron entries are files. - -## globlink - -Firmlink to a file according to a filename matching pattern. When a file goes away, the next file that is matched is automatically linked to. - - $ settrans -ac libfoo.so /hurd/globlink '/lib/libfoo*' - -## alphabetfs - -Organize a large group of files by their first letter. Present one subdirectory for each letter in the alphabet. - -## fsysoptsctl - -Send an fsysopts command to a set of translators. When you have a directory full of translators and you want to send each of them the same runtime option, this translator can do it for you. - - $ settrans -ac all /hurd/fsysoptsctl '/tmp/mystuff/*' - $ fsysopts all --update - ----- - --- [[Main/GregBuchholz]] - updated 17 Oct 2003 -- cgit v1.2.3 From 814e148d4425b3f020fca5e7d5ff17a0f4e6b16c Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 21 Apr 2009 13:11:01 +0200 Subject: Link to the fatfs file truncating bug. --- hurd/running/qemu.mdwn | 3 +++ hurd/translator/fatfs.mdwn | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/running/qemu.mdwn b/hurd/running/qemu.mdwn index 8a3dce61..d5f27311 100644 --- a/hurd/running/qemu.mdwn +++ b/hurd/running/qemu.mdwn @@ -78,6 +78,9 @@ The Hurd [[`fatfs`_translator|translator/fatfs]] currently is read-only, but for testing executables (etc.) that is enough. And it is much easier than loop-mounting the file systems images. (Also you don't need `root' rights.) +However, note that there is a bug in [[translator/fatfs]]: [[GNU_Savannah_bug +25961]]. + # Networking in QEMU diff --git a/hurd/translator/fatfs.mdwn b/hurd/translator/fatfs.mdwn index b534b97e..fd537896 100644 --- a/hurd/translator/fatfs.mdwn +++ b/hurd/translator/fatfs.mdwn @@ -1,4 +1,5 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,4 +9,5 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -The current `fatfs` translator is read-only. +The current `fatfs` translator is read-only, and it has a severe bug: +[[GNU_Savannah_bug 25961]]. -- cgit v1.2.3 From 88ce1e5f9fddfe35c5f980ce5c6242b74a3d1527 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 18 May 2009 16:17:01 +0200 Subject: Prefix directives. --- abac.mdwn | 4 +- asbestos.mdwn | 4 +- asking_questions.mdwn | 4 +- binutils.mdwn | 4 +- capability.mdwn | 4 +- colophon.mdwn | 4 +- .../about_the_twiki_to_ikiwiki_conversion.mdwn | 6 +- community.mdwn | 4 +- community/communication.mdwn | 4 +- community/facebook.mdwn | 4 +- community/gsoc.mdwn | 6 +- community/gsoc/2008.mdwn | 4 +- community/gsoc/2008/minutes-2008-04-25.mdwn | 4 +- community/gsoc/2008/minutes-2008-05-02.mdwn | 4 +- community/gsoc/2008/minutes-2008-05-16.mdwn | 4 +- community/gsoc/organization_application.mdwn | 4 +- community/gsoc/project_ideas.mdwn | 64 ++++++------- community/gsoc/project_ideas/cdparanoia.mdwn | 6 +- community/gsoc/project_ideas/debian_installer.mdwn | 6 +- .../gsoc/project_ideas/disk_io_performance.mdwn | 6 +- .../gsoc/project_ideas/download_backends.mdwn | 6 +- community/gsoc/project_ideas/driver_glue_code.mdwn | 8 +- community/gsoc/project_ideas/dtrace.mdwn | 6 +- community/gsoc/project_ideas/file_locking.mdwn | 6 +- community/gsoc/project_ideas/gnat.mdwn | 6 +- community/gsoc/project_ideas/gnumach_cleanup.mdwn | 6 +- community/gsoc/project_ideas/hardware_libs.mdwn | 6 +- .../gsoc/project_ideas/language_bindings.mdwn | 6 +- community/gsoc/project_ideas/lexical_dot-dot.mdwn | 8 +- community/gsoc/project_ideas/libcap.mdwn | 6 +- .../gsoc/project_ideas/libdiskfs_locking.mdwn | 6 +- community/gsoc/project_ideas/libgtop.mdwn | 6 +- community/gsoc/project_ideas/maxpath.mdwn | 6 +- community/gsoc/project_ideas/mtab.mdwn | 6 +- .../namespace-based_translator_selection.mdwn | 6 +- community/gsoc/project_ideas/nfs.mdwn | 8 +- community/gsoc/project_ideas/package_manager.mdwn | 6 +- community/gsoc/project_ideas/perl.mdwn | 6 +- community/gsoc/project_ideas/procfs.mdwn | 6 +- community/gsoc/project_ideas/pthreads.mdwn | 8 +- community/gsoc/project_ideas/secure_chroot.mdwn | 6 +- .../gsoc/project_ideas/server_overriding.mdwn | 8 +- community/gsoc/project_ideas/sound.mdwn | 8 +- community/gsoc/project_ideas/tcp_ip_stack.mdwn | 8 +- community/gsoc/project_ideas/tmpfs.mdwn | 6 +- community/gsoc/project_ideas/unionfs_boot.mdwn | 6 +- community/gsoc/project_ideas/unionmount.mdwn | 6 +- community/gsoc/project_ideas/virtualization.mdwn | 6 +- community/gsoc/project_ideas/vm_tuning.mdwn | 8 +- community/gsoc/project_ideas/xattr.mdwn | 8 +- community/gsoc/project_ideas/xmlfs.mdwn | 6 +- community/gsoc/student_application_form.mdwn | 4 +- community/gsoc/xorg_ideas.mdwn | 4 +- community/meetings.mdwn | 6 +- community/meetings/eurosys_2009.mdwn | 8 +- community/meetings/fosdem_2005.mdwn | 6 +- community/meetings/fosdem_2006.mdwn | 6 +- community/meetings/fosdem_2007.mdwn | 10 +- community/meetings/fosdem_2008.mdwn | 12 +-- community/meetings/rmll_2006.mdwn | 6 +- community/meetings/self-organised.mdwn | 6 +- community/meetings/stesie_2007-10-12.mdwn | 4 +- community/weblogs.mdwn | 6 +- community/weblogs/ArneBab.mdwn | 6 +- ...oes-trying-to-get-a-german-keyboard-layout.mdwn | 4 +- config_edittemplate.mdwn | 6 +- config_edittemplate/regular_page.mdwn | 4 +- confused_deputy.mdwn | 4 +- contact_us.mdwn | 4 +- contributing.mdwn | 4 +- contributing/questionnaire.mdwn | 4 +- contributing/web_pages.mdwn | 4 +- designation.mdwn | 4 +- destructive_interference.mdwn | 4 +- documentation.mdwn | 4 +- donate.mdwn | 4 +- emulation.mdwn | 4 +- extensibility.mdwn | 4 +- fdl.texi | 10 +- gcc.mdwn | 4 +- gdb.mdwn | 4 +- gdb/backtrace.mdwn | 4 +- getting_help.mdwn | 6 +- glibc.mdwn | 4 +- hurd.mdwn | 6 +- hurd/advantages.mdwn | 4 +- hurd/authentication.mdwn | 4 +- hurd/binutils.mdwn | 4 +- hurd/building/cross-compiling.mdwn | 4 +- hurd/building/cross-compiling/discussion.mdwn | 4 +- hurd/building/example.mdwn | 4 +- hurd/concepts.mdwn | 4 +- hurd/critique.mdwn | 6 +- hurd/debugging.mdwn | 4 +- hurd/debugging/gdb.mdwn | 4 +- hurd/debugging/gdb/noninvasive_debugging.mdwn | 4 +- hurd/debugging/glibc.mdwn | 4 +- hurd/debugging/rpctrace.mdwn | 4 +- hurd/debugging/translator.mdwn | 6 +- .../translator/capturing_stdout_and_stderr.mdwn | 4 +- hurd/debugging/translator/gdb.mdwn | 4 +- hurd/documentation.mdwn | 4 +- hurd/documentation/auth.html | 6 +- hurd/documentation/hurd-and-linux.html | 6 +- hurd/documentation/hurd-paper.html | 8 +- hurd/documentation/hurd-talk.html | 6 +- hurd/documentation/translators.html | 6 +- hurd/faq.mdwn | 8 +- hurd/faq/old_faq.txt | 4 +- hurd/faq/release.mdwn | 6 +- hurd/faq/slash_usr_symlink.mdwn | 6 +- hurd/gcc.mdwn | 4 +- hurd/glibc.mdwn | 4 +- hurd/glibc/hurd-specific_api.mdwn | 6 +- hurd/history.mdwn | 4 +- hurd/history/port_to_l4.mdwn | 6 +- hurd/hurd_hacking_guide.mdwn | 4 +- hurd/io_path.mdwn | 4 +- hurd/libchannel.mdwn | 4 +- hurd/libhello_example.mdwn | 4 +- hurd/libnetfs.mdwn | 4 +- hurd/libpager.mdwn | 4 +- hurd/libstore.mdwn | 4 +- hurd/logo.mdwn | 8 +- hurd/neighborhurd.mdwn | 4 +- hurd/networking.mdwn | 4 +- hurd/ng/issues_with_mach.mdwn | 4 +- .../limitations_of_the_original_hurd_design.mdwn | 4 +- hurd/ng/position_paper.mdwn | 4 +- hurd/open_issues.mdwn | 8 +- hurd/open_issues/cvs_tasks_file.mdwn | 4 +- hurd/open_issues/cvs_todo_file.mdwn | 4 +- hurd/open_issues/gdb_non-stop_mode.mdwn | 4 +- hurd/open_issues/gdb_pending_execs.mdwn | 4 +- hurd/open_issues/gdb_thread_ids.mdwn | 4 +- hurd/open_issues/libfshelp_in_hurdlibs.mdwn | 4 +- hurd/open_issues/some_todo_list.mdwn | 4 +- hurd/open_issues/wrong_reply_message_id.mdwn | 4 +- hurd/porting.mdwn | 4 +- hurd/porting/guidelines.mdwn | 4 +- hurd/porting/system_api_limitations.mdwn | 4 +- hurd/reference_manual.mdwn | 4 +- hurd/running.mdwn | 4 +- hurd/running/debian.mdwn | 2 +- hurd/running/debian/DebianAptOffline.mdwn | 4 +- hurd/running/debian/after_install.mdwn | 2 +- hurd/running/debian/creating_image_tarball.mdwn | 4 +- hurd/running/debian/faq.mdwn | 8 +- hurd/running/debian/faq/2_gib_partition_limit.mdwn | 6 +- hurd/running/debian/faq/512_mib_ram_limit.mdwn | 6 +- hurd/running/debian/faq/apt_umount.mdwn | 6 +- hurd/running/debian/faq/bad_hypermeta_data.mdwn | 4 +- .../running/debian/faq/debugging_inside_glibc.mdwn | 4 +- hurd/running/debian/faq/debugging_translators.mdwn | 4 +- hurd/running/debian/faq/dev_random.mdwn | 6 +- hurd/running/debian/faq/df.mdwn | 4 +- hurd/running/debian/faq/free_memory.mdwn | 4 +- hurd/running/debian/faq/hurd_console.mdwn | 4 +- hurd/running/debian/faq/kernel_logs.mdwn | 4 +- hurd/running/debian/faq/other_repositories.mdwn | 4 +- hurd/running/debian/faq/ps_hangs.mdwn | 4 +- hurd/running/debian/faq/reporting_bugs.mdwn | 4 +- hurd/running/debian/faq/sata_disk_drives.mdwn | 4 +- .../faq/sshd_only_works_for_root_logins.mdwn | 4 +- hurd/running/debian/faq/xserver-common.mdwn | 4 +- hurd/running/debian/patch_submission.mdwn | 4 +- hurd/running/debian/porting.mdwn | 8 +- hurd/running/debian/porting/adduser.mdwn | 4 +- hurd/running/debian/porting/gcc.mdwn | 4 +- hurd/running/debian/porting/gcc/c++.mdwn | 6 +- hurd/running/debian/porting/gcc/libmudflap.mdwn | 4 +- hurd/running/debian/porting/git-core-2.mdwn | 4 +- hurd/running/debian/porting/git-core.mdwn | 4 +- .../debian/porting/libdbd-sqlite3-perl.mdwn | 4 +- hurd/running/debian/porting/pth.mdwn | 4 +- hurd/running/debian/porting/runit.mdwn | 4 +- hurd/running/debian/porting/socat.mdwn | 4 +- hurd/running/gnu/create_an_image.mdwn | 4 +- hurd/running/gnu/setup.mdwn | 4 +- hurd/running/gnu/universal_package_manager.mdwn | 4 +- hurd/running/qemu.mdwn | 2 +- hurd/running/qemu/microsoft_windows.mdwn | 4 +- hurd/running/qemu/networking.mdwn | 4 +- hurd/running/qemu/networking/sharing_files.mdwn | 4 +- hurd/running/vmware.mdwn | 4 +- hurd/running/vmware/discussion.mdwn | 4 +- hurd/settrans.mdwn | 4 +- hurd/status.mdwn | 4 +- hurd/subhurd.mdwn | 4 +- hurd/subhurd/running_a_subhurd.mdwn | 6 +- hurd/toolchain.mdwn | 4 +- hurd/translator.mdwn | 4 +- hurd/translator/auth.mdwn | 4 +- hurd/translator/cvsfs.mdwn | 4 +- hurd/translator/devfs.mdwn | 4 +- hurd/translator/emailfs.mdwn | 4 +- hurd/translator/examples.mdwn | 4 +- hurd/translator/ext2fs.mdwn | 4 +- hurd/translator/fatfs.mdwn | 6 +- hurd/translator/magic.mdwn | 4 +- hurd/translator/mboxfs.mdwn | 4 +- hurd/translator/pfinet.mdwn | 4 +- hurd/translator/pfinet/implementation.mdwn | 4 +- hurd/translator/pfinet/ipv6.mdwn | 4 +- hurd/translator/pflocal.mdwn | 4 +- hurd/translator/procfs.mdwn | 4 +- hurd/translator/procfs/htop.mdwn | 4 +- hurd/translator/procfs/killall.mdwn | 4 +- hurd/translator/procfs/procps.mdwn | 4 +- hurd/translator/procfs/top.mdwn | 4 +- hurd/translator/storeio.mdwn | 4 +- hurd/translator/stowfs.mdwn | 6 +- hurd/translator/tmpfs.mdwn | 6 +- hurd/translator/tmpfs/notes_bing.mdwn | 4 +- hurd/translator/tmpfs/notes_various.mdwn | 6 +- hurd/translator/unionfs.mdwn | 4 +- hurd/translator/wishlist_1.mdwn | 4 +- hurd/translator/writing/example.mdwn | 4 +- hurd/translator/xmlfs.mdwn | 4 +- hurd/virtual_file_system.mdwn | 4 +- hurd/virtualization.mdwn | 4 +- hurd/what_is_the_gnu_hurd.mdwn | 6 +- .../gramatically_speaking.mdwn | 6 +- hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn | 6 +- ibac.mdwn | 4 +- idl.mdwn | 4 +- ikiwiki.setup | 2 +- index.mdwn | 10 +- index/discussion.mdwn | 4 +- ipc.mdwn | 4 +- irc.mdwn | 8 +- isolation.mdwn | 4 +- license.mdwn | 2 +- liedtke.mdwn | 4 +- mailing_lists.mdwn | 10 +- mailing_lists/bug-hurd.mdwn | 6 +- mailing_lists/debian-hurd.mdwn | 4 +- mailing_lists/gnu-system-discuss.mdwn | 6 +- mailing_lists/help-hurd.mdwn | 6 +- mailing_lists/hurd-devel-readers.mdwn | 6 +- mailing_lists/hurd-devel.mdwn | 6 +- mailing_lists/l4-hurd.mdwn | 6 +- mailing_lists/unmoderated.mdwn | 4 +- mailing_lists/web-hurd.mdwn | 6 +- mechanism.mdwn | 4 +- microkernel.mdwn | 4 +- microkernel/faq.mdwn | 8 +- microkernel/faq/multiserver_microkernel.mdwn | 6 +- microkernel/for_beginners.mdwn | 4 +- microkernel/fud.mdwn | 5 +- microkernel/mach/documentation.mdwn | 4 +- microkernel/mach/external_pager_mechanism.mdwn | 5 +- microkernel/mach/gnumach.mdwn | 4 +- microkernel/mach/gnumach/boot_trace.mdwn | 4 +- microkernel/mach/gnumach/building/example.mdwn | 4 +- microkernel/mach/gnumach/debugging.mdwn | 4 +- .../mach/gnumach/hardware_compatibility_list.mdwn | 10 +- microkernel/mach/gnumach/open_issues.mdwn | 8 +- .../open_issues/resource_management_problems.mdwn | 4 +- microkernel/mach/gnumach/ports.mdwn | 4 +- microkernel/mach/gnumach/ports/xen.mdwn | 8 +- microkernel/mach/gnumach/ports/xen/internals.mdwn | 4 +- .../ports/xen/networking_configuration.mdwn | 8 +- microkernel/mach/gnumach/projects.mdwn | 6 +- .../mach/gnumach/projects/clean_up_the_code.mdwn | 48 +++++----- microkernel/mach/gnumach/projects/gdb_stubs.mdwn | 4 +- microkernel/mach/gnumach/reference_manual.mdwn | 4 +- microkernel/mach/ipc.mdwn | 4 +- microkernel/mach/ipc/sequence_numbering.mdwn | 4 +- microkernel/mach/mig.mdwn | 4 +- microkernel/mach/mig/documentation.mdwn | 4 +- microkernel/mach/mig/documentation/dealloc.mdwn | 4 +- microkernel/mach/mig/documentation/servercopy.mdwn | 4 +- microkernel/mach/mig/gnu_mig.mdwn | 4 +- microkernel/mach/mig/gnu_mig/open_issues.mdwn | 8 +- .../open_issues/duplicate_inclusion_guards.mdwn | 4 +- microkernel/mach/port.mdwn | 4 +- microkernel/mach/rpc.mdwn | 4 +- microkernel/viengoos.mdwn | 4 +- microkernel/viengoos/building.mdwn | 4 +- microkernel/viengoos/documentation.mdwn | 4 +- microkernel/viengoos/hardware.mdwn | 4 +- microkernel/viengoos/projects.mdwn | 6 +- microkernel/viengoos/serial_port.mdwn | 4 +- naming_context.mdwn | 4 +- news.mdwn | 6 +- news/2002-01-13.mdwn | 4 +- news/2002-01-19.mdwn | 4 +- news/2002-02-18.mdwn | 4 +- news/2002-03-03.mdwn | 4 +- news/2002-03-08.mdwn | 4 +- news/2002-03-23.mdwn | 4 +- news/2002-05-05.mdwn | 4 +- news/2002-05-18.mdwn | 4 +- news/2002-05-24.mdwn | 4 +- news/2002-05-28.mdwn | 4 +- news/2002-06-22.mdwn | 4 +- news/2002-08-16.mdwn | 4 +- news/2002-10-03.mdwn | 4 +- news/2002-10-03_2.mdwn | 4 +- news/2002-10-19.mdwn | 4 +- news/2002-11-18.mdwn | 4 +- news/2003-01-18.mdwn | 4 +- news/2003-02-14.mdwn | 4 +- news/2003-07-02.mdwn | 4 +- news/2003-07-16.mdwn | 4 +- news/2003-08-21.mdwn | 4 +- news/2005-01-28.mdwn | 4 +- news/2005-09-20.mdwn | 4 +- news/2006-04-27.mdwn | 4 +- news/2007-01-07.mdwn | 4 +- news/2007-01-14.mdwn | 4 +- news/2007-03-14.mdwn | 4 +- news/2007-10-01.mdwn | 4 +- news/2007-10-12.mdwn | 4 +- news/2008-02-11.mdwn | 4 +- news/2008-03-19.mdwn | 4 +- news/2008-09-11.mdwn | 4 +- news/2008-11-14.mdwn | 4 +- news/2008-12-12.mdwn | 4 +- news/2009-03-28.mdwn | 4 +- open_issues.mdwn | 10 +- open_issues/blkrrpart_ioctl.mdwn | 8 +- persistency.mdwn | 4 +- policy.mdwn | 4 +- principal.mdwn | 4 +- public_hurd_boxen.mdwn | 6 +- qemu.mdwn | 4 +- recent_changes.mdwn | 8 +- rpc.mdwn | 4 +- rules.mdwn | 4 +- rules/savannah_group.mdwn | 4 +- rules/source_repositories.mdwn | 4 +- security.mdwn | 4 +- sfi.mdwn | 4 +- shortcuts.mdwn | 104 ++++++++++----------- sidebar.mdwn | 12 +-- tcb.mdwn | 4 +- trackers.mdwn | 4 +- trust.mdwn | 4 +- unix.mdwn | 6 +- user/flaviocruz.mdwn | 4 +- user/madhusudancs.mdwn | 6 +- user/scolobb.mdwn | 4 +- user/tschwinge.mdwn | 6 +- user/vincentvikram.mdwn | 4 +- user/zhengda/howto.mdwn | 4 +- virtualization.mdwn | 6 +- 348 files changed, 946 insertions(+), 942 deletions(-) (limited to 'hurd/translator') diff --git a/abac.mdwn b/abac.mdwn index a260a986..bdf63a32 100644 --- a/abac.mdwn +++ b/abac.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/asbestos.mdwn b/asbestos.mdwn index 65ab391e..fcbd8ecb 100644 --- a/asbestos.mdwn +++ b/asbestos.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/asking_questions.mdwn b/asking_questions.mdwn index d58dee61..bb5c8ffb 100644 --- a/asking_questions.mdwn +++ b/asking_questions.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/binutils.mdwn b/binutils.mdwn index 3e9e5889..85791914 100644 --- a/binutils.mdwn +++ b/binutils.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/capability.mdwn b/capability.mdwn index 2d4d2ce8..c5ef0d1d 100644 --- a/capability.mdwn +++ b/capability.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/colophon.mdwn b/colophon.mdwn index 9146bc15..1afdd51a 100644 --- a/colophon.mdwn +++ b/colophon.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2003, 2004, 2007, 2008, 2009 Free Software +[[!meta copyright="Copyright © 2003, 2004, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn b/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn index 8c556261..d9443b17 100644 --- a/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn +++ b/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -38,7 +38,7 @@ also made available by the authors at . The Debian package *libhtml-wikiconverter-perl* is too old at least until -[[debbug 419918]] is closed. +[[!debbug 419918]] is closed. For converting from rcs files (as used by TWiki) to a git repository you'll need to get `git clone git://people.freedesktop.org/~keithp/parsecvs` and build diff --git a/community.mdwn b/community.mdwn index 5d58ae5a..9d8af0ec 100644 --- a/community.mdwn +++ b/community.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2002, 2003, 2005, 2007, 2008, 2009 Free Software +[[!meta copyright="Copyright © 2002, 2003, 2005, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/communication.mdwn b/community/communication.mdwn index d2eccceb..0e56a77e 100644 --- a/community/communication.mdwn +++ b/community/communication.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/facebook.mdwn b/community/facebook.mdwn index b5340224..31a27fec 100644 --- a/community/facebook.mdwn +++ b/community/facebook.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc.mdwn b/community/gsoc.mdwn index ed1f7a52..506516bb 100644 --- a/community/gsoc.mdwn +++ b/community/gsoc.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Google Summer of Code"]] +[[!meta title="Google Summer of Code"]] # 2009 diff --git a/community/gsoc/2008.mdwn b/community/gsoc/2008.mdwn index 5bb5f314..31d45d05 100644 --- a/community/gsoc/2008.mdwn +++ b/community/gsoc/2008.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/2008/minutes-2008-04-25.mdwn b/community/gsoc/2008/minutes-2008-04-25.mdwn index 3f2c0313..0cb624f2 100644 --- a/community/gsoc/2008/minutes-2008-04-25.mdwn +++ b/community/gsoc/2008/minutes-2008-04-25.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/2008/minutes-2008-05-02.mdwn b/community/gsoc/2008/minutes-2008-05-02.mdwn index 9c99a8e7..f960ab06 100644 --- a/community/gsoc/2008/minutes-2008-05-02.mdwn +++ b/community/gsoc/2008/minutes-2008-05-02.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/2008/minutes-2008-05-16.mdwn b/community/gsoc/2008/minutes-2008-05-16.mdwn index 8adb838c..0c848e8a 100644 --- a/community/gsoc/2008/minutes-2008-05-16.mdwn +++ b/community/gsoc/2008/minutes-2008-05-16.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/organization_application.mdwn b/community/gsoc/organization_application.mdwn index 53cd85ac..946c225b 100644 --- a/community/gsoc/organization_application.mdwn +++ b/community/gsoc/organization_application.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index 78cc7ad3..dede290f 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -75,33 +75,33 @@ will assist you as well as we can. See also the list of [Hurd-related X.org project ideas](http://wiki.x.org/wiki/Hurd_Porting). -[[inline pages="community/gsoc/project_ideas/language_bindings" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/virtualization" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/file_locking" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/driver_glue_code" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/server_overriding" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/tcp_ip_stack" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/nfs" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/libdiskfs_locking" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/pthreads" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/sound" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/disk_io_performance" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/vm_tuning" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/mtab" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/gnumach_cleanup" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/xmlfs" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/unionfs_boot" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/tmpfs" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/lexical_dot-dot" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/secure_chroot" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/package_manager" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/debian_installer" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/download_backends" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/libgtop" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/maxpath" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/gnat" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/hardware_libs" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/cdparanoia" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/perl" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/libcap" show=0 feeds=no actions=yes]] -[[inline pages="community/gsoc/project_ideas/xattr" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/language_bindings" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/virtualization" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/file_locking" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/driver_glue_code" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/server_overriding" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/tcp_ip_stack" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/nfs" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/libdiskfs_locking" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/pthreads" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/sound" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/disk_io_performance" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/vm_tuning" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/mtab" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/gnumach_cleanup" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/xmlfs" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/unionfs_boot" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/tmpfs" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/lexical_dot-dot" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/secure_chroot" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/package_manager" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/debian_installer" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/download_backends" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/libgtop" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/maxpath" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/gnat" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/hardware_libs" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/cdparanoia" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/perl" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/libcap" show=0 feeds=no actions=yes]] +[[!inline pages="community/gsoc/project_ideas/xattr" show=0 feeds=no actions=yes]] diff --git a/community/gsoc/project_ideas/cdparanoia.mdwn b/community/gsoc/project_ideas/cdparanoia.mdwn index 117dc56e..f13e19e6 100644 --- a/community/gsoc/project_ideas/cdparanoia.mdwn +++ b/community/gsoc/project_ideas/cdparanoia.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Implement CD Audio Grabbing"]] +[[!meta title="Implement CD Audio Grabbing"]] The Hurd presently has only support for CD-ROMs, but not for audio extraction ("grabbing"). As a result, cdparanoia (and other extraction diff --git a/community/gsoc/project_ideas/debian_installer.mdwn b/community/gsoc/project_ideas/debian_installer.mdwn index cac85df2..183f6708 100644 --- a/community/gsoc/project_ideas/debian_installer.mdwn +++ b/community/gsoc/project_ideas/debian_installer.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Port the Debian Installer to the Hurd"]] +[[!meta title="Port the Debian Installer to the Hurd"]] The primary means of distributing the Hurd is through Debian GNU/Hurd. However, the installation CDs presently use an ancient, non-native installer. diff --git a/community/gsoc/project_ideas/disk_io_performance.mdwn b/community/gsoc/project_ideas/disk_io_performance.mdwn index 8d9b3b7c..9f361de9 100644 --- a/community/gsoc/project_ideas/disk_io_performance.mdwn +++ b/community/gsoc/project_ideas/disk_io_performance.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Disk I/O Performance Tuning"]] +[[!meta title="Disk I/O Performance Tuning"]] The most obvious reason for the Hurd feeling slow compared to mainstream systems like GNU/Linux, is very slow harddisk access. diff --git a/community/gsoc/project_ideas/download_backends.mdwn b/community/gsoc/project_ideas/download_backends.mdwn index a6e090eb..519d1195 100644 --- a/community/gsoc/project_ideas/download_backends.mdwn +++ b/community/gsoc/project_ideas/download_backends.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Use Internet Protocol Translators (ftpfs etc.) as Backends for Other Programs"]] +[[!meta title="Use Internet Protocol Translators (ftpfs etc.) as Backends for Other Programs"]] The Hurd design facilitates splitting up large applications into independent, generic components, which can be easily combined in different contexts, by diff --git a/community/gsoc/project_ideas/driver_glue_code.mdwn b/community/gsoc/project_ideas/driver_glue_code.mdwn index 0e193a25..b3c4c129 100644 --- a/community/gsoc/project_ideas/driver_glue_code.mdwn +++ b/community/gsoc/project_ideas/driver_glue_code.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="New Driver Glue Code"]] +[[!meta title="New Driver Glue Code"]] Although a driver framework in userspace would be desirable, presently the Hurd uses kernel drivers in the microkernel, @@ -31,7 +31,7 @@ This is a doable, but pretty involved project. Previous experience with driver programming probably is a must. (No Hurd-specific knowledge is required, though.) -This is [[GNU_Savannah_task 5488]]. +This is [[!GNU_Savannah_task 5488]]. Possible mentors: Samuel Thibault (youpi) diff --git a/community/gsoc/project_ideas/dtrace.mdwn b/community/gsoc/project_ideas/dtrace.mdwn index f0c6f07a..18fbe956 100644 --- a/community/gsoc/project_ideas/dtrace.mdwn +++ b/community/gsoc/project_ideas/dtrace.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="dtrace Support"]] +[[!meta title="dtrace Support"]] One of the main problems of the current Hurd implementation is very poor performance. While we have a bunch of ideas what could cause the performance diff --git a/community/gsoc/project_ideas/file_locking.mdwn b/community/gsoc/project_ideas/file_locking.mdwn index b20b82fd..0c057639 100644 --- a/community/gsoc/project_ideas/file_locking.mdwn +++ b/community/gsoc/project_ideas/file_locking.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Fix File Locking"]] +[[!meta title="Fix File Locking"]] Over the years, [[UNIX]] has aquired a host of different file locking mechanisms. Some of them work on the Hurd, while others are buggy or only partially diff --git a/community/gsoc/project_ideas/gnat.mdwn b/community/gsoc/project_ideas/gnat.mdwn index 135c19aa..b70ab3c6 100644 --- a/community/gsoc/project_ideas/gnat.mdwn +++ b/community/gsoc/project_ideas/gnat.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Porting GNAT"]] +[[!meta title="Porting GNAT"]] The GNU Ada Translator (GNAT) isn't available for the Hurd so far. There are also a number of other Debian packages depending on GNAT, and thus not diff --git a/community/gsoc/project_ideas/gnumach_cleanup.mdwn b/community/gsoc/project_ideas/gnumach_cleanup.mdwn index 0fd6e481..ecbbb200 100644 --- a/community/gsoc/project_ideas/gnumach_cleanup.mdwn +++ b/community/gsoc/project_ideas/gnumach_cleanup.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="GNU Mach Code Cleanup"]] +[[!meta title="GNU Mach Code Cleanup"]] Although there are some attempts to move to a more modern microkernel alltogether, the current Hurd implementation is based on diff --git a/community/gsoc/project_ideas/hardware_libs.mdwn b/community/gsoc/project_ideas/hardware_libs.mdwn index 88b94caa..4a1fe73c 100644 --- a/community/gsoc/project_ideas/hardware_libs.mdwn +++ b/community/gsoc/project_ideas/hardware_libs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Stub Implementations of Hardware Specific Libraries"]] +[[!meta title="Stub Implementations of Hardware Specific Libraries"]] Many programs use special libraries to access certain hardware devices, like libusb, libbluetooth, libraw1394, libiw-dev (though there already is a diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn index 6dc83463..c247a8f8 100644 --- a/community/gsoc/project_ideas/language_bindings.mdwn +++ b/community/gsoc/project_ideas/language_bindings.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Bindings to Other Programming Languages"]] +[[!meta title="Bindings to Other Programming Languages"]] The main idea of the Hurd design is giving users the ability to easily modify/extend the system's functionality ([[extensible_system|extensibility]]). diff --git a/community/gsoc/project_ideas/lexical_dot-dot.mdwn b/community/gsoc/project_ideas/lexical_dot-dot.mdwn index 55d00337..e37bc71f 100644 --- a/community/gsoc/project_ideas/lexical_dot-dot.mdwn +++ b/community/gsoc/project_ideas/lexical_dot-dot.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Lexical .. Resolution"]] +[[!meta title="Lexical .. Resolution"]] For historical reasons, [[UNIX]] filesystems have a real (hard) `..` link from each directory pointing to its parent. However, this is problematic, because the @@ -29,7 +29,7 @@ to use lexical resolution, and to check that the system is still fully functional afterwards. This task requires understanding the filename resolution mechanism. -See also [[GNU_Savannah_bug 17133]]. +See also [[!GNU_Savannah_bug 17133]]. Possible mentors: ? diff --git a/community/gsoc/project_ideas/libcap.mdwn b/community/gsoc/project_ideas/libcap.mdwn index 9e722815..2745dc7e 100644 --- a/community/gsoc/project_ideas/libcap.mdwn +++ b/community/gsoc/project_ideas/libcap.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Implementing libcap"]] +[[!meta title="Implementing libcap"]] libcap is a library providing the API to access POSIX capabilities. These allow giving various kinds of specific privileges to individual users, without giving diff --git a/community/gsoc/project_ideas/libdiskfs_locking.mdwn b/community/gsoc/project_ideas/libdiskfs_locking.mdwn index 434e39ba..d484b40b 100644 --- a/community/gsoc/project_ideas/libdiskfs_locking.mdwn +++ b/community/gsoc/project_ideas/libdiskfs_locking.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Fix libdiskfs Locking Issues"]] +[[!meta title="Fix libdiskfs Locking Issues"]] Nowadays the most often encountered cause of Hurd crashes seems to be lockups in the [[hurd/translator/ext2fs]] server. One of these could be traced diff --git a/community/gsoc/project_ideas/libgtop.mdwn b/community/gsoc/project_ideas/libgtop.mdwn index 4f848820..c0f966c5 100644 --- a/community/gsoc/project_ideas/libgtop.mdwn +++ b/community/gsoc/project_ideas/libgtop.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Porting libgtop"]] +[[!meta title="Porting libgtop"]] libgtop is a library used by many applications (especially GNOME applications) to abstract the system-specific methods for obtaining information about the diff --git a/community/gsoc/project_ideas/maxpath.mdwn b/community/gsoc/project_ideas/maxpath.mdwn index d78297d5..6ece2dbf 100644 --- a/community/gsoc/project_ideas/maxpath.mdwn +++ b/community/gsoc/project_ideas/maxpath.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Fixing Programs Using PATH_MAX et al Unconditionally"]] +[[!meta title="Fixing Programs Using PATH_MAX et al Unconditionally"]] POSIX describes some constants (or rather macros) like PATH_MAX/MAXPATHLEN and similar, which may be defined by the system to indicate certain limits. Many diff --git a/community/gsoc/project_ideas/mtab.mdwn b/community/gsoc/project_ideas/mtab.mdwn index 8e848410..39cde2dd 100644 --- a/community/gsoc/project_ideas/mtab.mdwn +++ b/community/gsoc/project_ideas/mtab.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="mtab"]] +[[!meta title="mtab"]] In traditional monolithic system, the kernel keeps track of all mounts; the information is available through `/proc/mounts` (on Linux at least), and in a diff --git a/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn b/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn index 6bb643fa..79aad7a1 100644 --- a/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn +++ b/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Namspace-based Translator Selection"]] +[[!meta title="Namspace-based Translator Selection"]] The main idea behind the Hurd is to make (almost) all system functionality user-modifiable ([[extensible_system|extensibility]]). This includes a diff --git a/community/gsoc/project_ideas/nfs.mdwn b/community/gsoc/project_ideas/nfs.mdwn index 3874d81a..eeeda6f0 100644 --- a/community/gsoc/project_ideas/nfs.mdwn +++ b/community/gsoc/project_ideas/nfs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Improved NFS Implementation"]] +[[!meta title="Improved NFS Implementation"]] The Hurd has both NFS server and client implementations, which work, but not very well: File locking doesn't work properly (at least in conjuction with a @@ -31,7 +31,7 @@ has been done for a former GSoC application -- it might give you some pointers. But don't take any of the statements made there for granted -- check the facts yourself! -This task, [[GNU_Savannah_task 5497]], has no special prerequisites besides general programming skills, and +This task, [[!GNU_Savannah_task 5497]], has no special prerequisites besides general programming skills, and an interest in file systems and network protocols. Possible mentors: ? diff --git a/community/gsoc/project_ideas/package_manager.mdwn b/community/gsoc/project_ideas/package_manager.mdwn index c7a33944..4e544ed5 100644 --- a/community/gsoc/project_ideas/package_manager.mdwn +++ b/community/gsoc/project_ideas/package_manager.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Hurdish Package Manager for the GNU System"]] +[[!meta title="Hurdish Package Manager for the GNU System"]] Most GNU/Linux systems use pretty sophisticated package managers, to ease the management of installed software. These keep track of all installed files, and diff --git a/community/gsoc/project_ideas/perl.mdwn b/community/gsoc/project_ideas/perl.mdwn index 803f710e..23420159 100644 --- a/community/gsoc/project_ideas/perl.mdwn +++ b/community/gsoc/project_ideas/perl.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Improving Perl Support"]] +[[!meta title="Improving Perl Support"]] Perl is available on the Hurd, but there are quite a lot of test suite failures. These could be caused by problems in the system-specific diff --git a/community/gsoc/project_ideas/procfs.mdwn b/community/gsoc/project_ideas/procfs.mdwn index 55556b02..8acfa228 100644 --- a/community/gsoc/project_ideas/procfs.mdwn +++ b/community/gsoc/project_ideas/procfs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="procfs"]] +[[!meta title="procfs"]] Although there is no standard (POSIX or other) for the layout of the `/proc` pseudo-filesystem, it turned out a very useful facility in GNU/Linux and other diff --git a/community/gsoc/project_ideas/pthreads.mdwn b/community/gsoc/project_ideas/pthreads.mdwn index aa532a9a..0e677268 100644 --- a/community/gsoc/project_ideas/pthreads.mdwn +++ b/community/gsoc/project_ideas/pthreads.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Convert Hurd Libraries and Servers to pthreads"]] +[[!meta title="Convert Hurd Libraries and Servers to pthreads"]] The Hurd was originally created at a time when the [pthreads standard](http://www.opengroup.org/onlinepubs/009695399/basedefs/pthread.h.html) @@ -27,7 +27,7 @@ libfuse](http://www.nongnu.org/hurdextras/#libfuse) with any FUSE modules depending on pthreads for example.) Most of the conversion has already been done in previous efforts (see -[[GNU_Savannah_task 5487]]) -- but the tricky parts are still missing. +[[!GNU_Savannah_task 5487]]) -- but the tricky parts are still missing. The goal of this project is to have all the Hurd code use pthreads. Should any limitations in the existing pthreads implementation turn up that hinder this diff --git a/community/gsoc/project_ideas/secure_chroot.mdwn b/community/gsoc/project_ideas/secure_chroot.mdwn index ba47f78d..e5848a0f 100644 --- a/community/gsoc/project_ideas/secure_chroot.mdwn +++ b/community/gsoc/project_ideas/secure_chroot.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Secure chroot Implementation"]] +[[!meta title="Secure chroot Implementation"]] As the Hurd attempts to be (almost) fully [[UNIX]]-compatible, it also implements a `chroot()` system call. However, the current implementation is not really diff --git a/community/gsoc/project_ideas/server_overriding.mdwn b/community/gsoc/project_ideas/server_overriding.mdwn index 2513df0b..66171313 100644 --- a/community/gsoc/project_ideas/server_overriding.mdwn +++ b/community/gsoc/project_ideas/server_overriding.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Server Overriding Mechanism"]] +[[!meta title="Server Overriding Mechanism"]] The main idea of the Hurd is that every user can influence almost all system functionality ([[extensible_system|extensibility]]), by running private Hurd @@ -61,7 +61,7 @@ This tasks requires some understanding of the Hurd internals, especially a good understanding of the file name lookup mechanism. It's probably not too heavy on the coding side. -This is [[GNU_Savannah_task 6612]]. Also there are quite a bit of emails +This is [[!GNU_Savannah_task 6612]]. Also there are quite a bit of emails discussing this topic, from a previous year's GSoC application -- see , , diff --git a/community/gsoc/project_ideas/sound.mdwn b/community/gsoc/project_ideas/sound.mdwn index 26bb91cb..134c5b59 100644 --- a/community/gsoc/project_ideas/sound.mdwn +++ b/community/gsoc/project_ideas/sound.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,9 +8,9 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Sound Support"]] +[[!meta title="Sound Support"]] -The Hurd presently has no sound support. Fixing this, [[GNU_Savannah_task +The Hurd presently has no sound support. Fixing this, [[!GNU_Savannah_task 5485]], requires two steps: the first is to port some other kernel's drivers to [[GNU_Mach|microkernel/mach/gnumach]] so we can get access to actual sound hardware. The second is to implement a userspace server ([[hurd/translator]]), diff --git a/community/gsoc/project_ideas/tcp_ip_stack.mdwn b/community/gsoc/project_ideas/tcp_ip_stack.mdwn index 29b1d22d..7ca43152 100644 --- a/community/gsoc/project_ideas/tcp_ip_stack.mdwn +++ b/community/gsoc/project_ideas/tcp_ip_stack.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Hurdish TCP/IP Stack"]] +[[!meta title="Hurdish TCP/IP Stack"]] The Hurd presently uses a [[TCP/IP_stack|hurd/translator/pfinet]] based on code from an old Linux version. This works, but lacks some rather important features (like PPP/PPPoE), and the @@ -32,7 +32,7 @@ individual layers later. The initial implementation, and the choice of a TCP/IP stack, should be done with this in mind -- it needs to be modular enough to make such a split later on feasible. -This is [[GNU_Savannah_task 5469]]. +This is [[!GNU_Savannah_task 5469]]. Possible mentors: ? diff --git a/community/gsoc/project_ideas/tmpfs.mdwn b/community/gsoc/project_ideas/tmpfs.mdwn index a3f474ff..fcf8d96b 100644 --- a/community/gsoc/project_ideas/tmpfs.mdwn +++ b/community/gsoc/project_ideas/tmpfs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Fix tmpfs"]] +[[!meta title="Fix tmpfs"]] In some situations it is desirable to have a file system that is not backed by actual disk storage, but only by anonymous memory, i.e. lives in the RAM (and diff --git a/community/gsoc/project_ideas/unionfs_boot.mdwn b/community/gsoc/project_ideas/unionfs_boot.mdwn index 21cf168f..3692678f 100644 --- a/community/gsoc/project_ideas/unionfs_boot.mdwn +++ b/community/gsoc/project_ideas/unionfs_boot.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Allow Using unionfs Early at Boot"]] +[[!meta title="Allow Using unionfs Early at Boot"]] In [[UNIX]] systems, traditionally most software is installed in a common directory hierachy, where files from various packages live beside each other, grouped by diff --git a/community/gsoc/project_ideas/unionmount.mdwn b/community/gsoc/project_ideas/unionmount.mdwn index 89b53123..f8fbc283 100644 --- a/community/gsoc/project_ideas/unionmount.mdwn +++ b/community/gsoc/project_ideas/unionmount.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Union Mounts"]] +[[!meta title="Union Mounts"]] When setting a translator on Hurd -- similar to mounting a file system on UNIX -- the new node(s) exported by the translator are obscuring the original node diff --git a/community/gsoc/project_ideas/virtualization.mdwn b/community/gsoc/project_ideas/virtualization.mdwn index 711d3b4c..79c3ab29 100644 --- a/community/gsoc/project_ideas/virtualization.mdwn +++ b/community/gsoc/project_ideas/virtualization.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Virtualization Using Hurd Mechanisms"]] +[[!meta title="Virtualization Using Hurd Mechanisms"]] The main idea behind the Hurd design is to allow users to replace almost any system functionality ([[extensible_system|extensibility]]). Any user can easily diff --git a/community/gsoc/project_ideas/vm_tuning.mdwn b/community/gsoc/project_ideas/vm_tuning.mdwn index d1d75e10..8d6a15c3 100644 --- a/community/gsoc/project_ideas/vm_tuning.mdwn +++ b/community/gsoc/project_ideas/vm_tuning.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="VM Tuning"]] +[[!meta title="VM Tuning"]] Hurd/[[microkernel/Mach]] presently make very bad use of the available physical memory in the system. Some of the problems are inherent to the system design (the kernel @@ -26,7 +26,7 @@ implementation to other systems, implementing any worthwhile improvements, and general optimisation/tuning. It requires very good understanding of the Mach VM, and virtual memory in general. -This project is related to [[GNU_Savannah_task 5489]]. +This project is related to [[!GNU_Savannah_task 5489]]. Possible mentors: Samuel Thibault (youpi) diff --git a/community/gsoc/project_ideas/xattr.mdwn b/community/gsoc/project_ideas/xattr.mdwn index ab16dfbb..b5466091 100644 --- a/community/gsoc/project_ideas/xattr.mdwn +++ b/community/gsoc/project_ideas/xattr.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Implement xattr Support"]] +[[!meta title="Implement xattr Support"]] Extended attributes (xattr) are a standardized, generic method for storing additional metadata along with a file (inode). Most modern UNIX filesystems @@ -38,7 +38,7 @@ Completing this project will require digging into some parts of the Hurd, but it should be quite doable without previous Hurd experience. Some experience with xattrs might help a bit, but shouldn't be really necessary either. -Some previous work on xattr support is available in [[GNU_Savannah_patch +Some previous work on xattr support is available in [[!GNU_Savannah_patch 5126]], and might serve as a starting point. Possible mentors: Samuel Thibault (youpi) diff --git a/community/gsoc/project_ideas/xmlfs.mdwn b/community/gsoc/project_ideas/xmlfs.mdwn index e9c8a5b2..5fd2cbe4 100644 --- a/community/gsoc/project_ideas/xmlfs.mdwn +++ b/community/gsoc/project_ideas/xmlfs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="xmlfs"]] +[[!meta title="xmlfs"]] Hurd [[translators|hurd/translator]] allow presenting underlying data in a different format. This is a very powerful ability: it allows using standard diff --git a/community/gsoc/student_application_form.mdwn b/community/gsoc/student_application_form.mdwn index 619843f0..e52387b6 100644 --- a/community/gsoc/student_application_form.mdwn +++ b/community/gsoc/student_application_form.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/gsoc/xorg_ideas.mdwn b/community/gsoc/xorg_ideas.mdwn index 153b8bf6..c125ee96 100644 --- a/community/gsoc/xorg_ideas.mdwn +++ b/community/gsoc/xorg_ideas.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/community/meetings.mdwn b/community/meetings.mdwn index 1b994e13..9a07e205 100644 --- a/community/meetings.mdwn +++ b/community/meetings.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Meetings with Hurd developer attendance"]] +[[!meta title="Meetings with Hurd developer attendance"]] # Upcoming diff --git a/community/meetings/eurosys_2009.mdwn b/community/meetings/eurosys_2009.mdwn index 069f6889..cc672f5e 100644 --- a/community/meetings/eurosys_2009.mdwn +++ b/community/meetings/eurosys_2009.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="EuroSys 2009"]] +[[!meta title="EuroSys 2009"]] @@ -18,7 +18,7 @@ EuroSys will take place on March 30th to April 3rd in Nuremberg, Germany. # Who and When -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" "Name","Attending","Arrival","Return" "Neal Walfield","yes","Monday evening","Friday" "[[Thomas_Schwinge|tschwinge]]","yes","Monday evening","Friday" diff --git a/community/meetings/fosdem_2005.mdwn b/community/meetings/fosdem_2005.mdwn index c34319fb..e19ff41d 100644 --- a/community/meetings/fosdem_2005.mdwn +++ b/community/meetings/fosdem_2005.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2006, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2006, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="FOSDEM 2005"]] +[[!meta title="FOSDEM 2005"]] diff --git a/community/meetings/fosdem_2006.mdwn b/community/meetings/fosdem_2006.mdwn index 8bf9967f..7f3cdcce 100644 --- a/community/meetings/fosdem_2006.mdwn +++ b/community/meetings/fosdem_2006.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="FOSDEM 2006"]] +[[!meta title="FOSDEM 2006"]] diff --git a/community/meetings/fosdem_2007.mdwn b/community/meetings/fosdem_2007.mdwn index 55d346fd..e8c37441 100644 --- a/community/meetings/fosdem_2007.mdwn +++ b/community/meetings/fosdem_2007.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="FOSDEM 2007"]] +[[!meta title="FOSDEM 2007"]] @@ -18,7 +18,7 @@ Bruxelles. # Who And When -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" "Name","Attending","Arrival","Return","Share room with us" "[[AlfredoBeaumont]]","no","n/a","n/a","n/a" "[[AndrewResch]]","no","n/a","n/a","n/a" @@ -88,7 +88,7 @@ Been there in 2006. It was okay. [[SamuelThibault]] booked rooms at ~ 18.60€ there: -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" "Night of...","Persons" "2007-02-22","7**6**" "2007-02-23","10" diff --git a/community/meetings/fosdem_2008.mdwn b/community/meetings/fosdem_2008.mdwn index fb4a3ae9..5d641995 100644 --- a/community/meetings/fosdem_2008.mdwn +++ b/community/meetings/fosdem_2008.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="FOSDEM 2008"]] +[[!meta title="FOSDEM 2008"]] @@ -19,7 +19,7 @@ Bruxelles. # Who And When -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" "Name","Attending","Arrival","Return","Share room with us" "[[Bas_Wijnen|baswijnen]] and girlfriend","yes","Friday","Monday","yes (two)" "Christian Dietrich","no","n/a","n/a","n/a" @@ -42,7 +42,7 @@ Bruxelles. (Large) evening counts: -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" , Bas, Gianluca, Marcus, Michael, Neal, Olaf, Samuel, Soeren, Thomas, Total Thu 21, , 1? , *1*, , , , 1 , , *1*, *4* 2 Fri 22, 2 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ,10 @@ -94,7 +94,7 @@ gaah, Full! -[[toggleable id="SATA" text=""" +[[!toggleable id="SATA" text=""" This is how booting a [[GNU/Hurd_system|hurd]] will typically fail if GNU Mach couldn't connect to the hard disk, e.g., in a SATA system without IDE compatibility mode: diff --git a/microkernel/mach/gnumach/open_issues.mdwn b/microkernel/mach/gnumach/open_issues.mdwn index aab854c2..4323ac4b 100644 --- a/microkernel/mach/gnumach/open_issues.mdwn +++ b/microkernel/mach/gnumach/open_issues.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,11 +8,11 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Open Issues"]] +[[!meta title="Open Issues"]] This is a dumping ground for open issues for GNU Mach. -[[inline +[[!inline pages="(microkernel/mach/gnumach/open_issues/* or tagged(open_issue_*mach)) and !*/discussion" show=0 diff --git a/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn b/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn index e949fa96..07c71568 100644 --- a/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn +++ b/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/gnumach/ports.mdwn b/microkernel/mach/gnumach/ports.mdwn index 00cdee8c..b25fbe60 100644 --- a/microkernel/mach/gnumach/ports.mdwn +++ b/microkernel/mach/gnumach/ports.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index b9e2fac7..7391ea2e 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -9,7 +9,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[toc ]] +[[!toc]] ## Xen dom0, hypervisor @@ -79,4 +79,4 @@ The current `hurd-modules` was built from the debian packages `hurd 20070606-2` [[Internals]]. -[[GNU_Savannah_task 5468]], [[GNU_Savannah_task 6584]]. +[[!GNU_Savannah_task 5468]], [[!GNU_Savannah_task 6584]]. diff --git a/microkernel/mach/gnumach/ports/xen/internals.mdwn b/microkernel/mach/gnumach/ports/xen/internals.mdwn index 09e707ea..8e46472d 100644 --- a/microkernel/mach/gnumach/ports/xen/internals.mdwn +++ b/microkernel/mach/gnumach/ports/xen/internals.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn index 71a72bac..f3b0d205 100644 --- a/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn +++ b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[toc ]] +[[!toc]] The Xen dom0 infrastructure provides for a bridged networking setup using shell scripts to configure the bridging device properly and attach the domUs' virtual @@ -38,7 +38,7 @@ Comment out everything referencing your physical devices. Add this: [...] This needs a version of the `bridge-utils` package more recent than the current -Debian stable one ([[debbug 405215]]). (It's trivial to rebuild the `dpkg` of, +Debian stable one ([[!debbug 405215]]). (It's trivial to rebuild the `dpkg` of, e.g., the Debian testing one on Debian stable.) # */etc/xen/xend-config.sxp* diff --git a/microkernel/mach/gnumach/projects.mdwn b/microkernel/mach/gnumach/projects.mdwn index 9ace6270..8ef71e30 100644 --- a/microkernel/mach/gnumach/projects.mdwn +++ b/microkernel/mach/gnumach/projects.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2005, 2006, 2007, 2008 -Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, +Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn index 875bb8cd..0038f00e 100644 --- a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn +++ b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2005, 2006, 2007, 2008 - Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, +Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -39,80 +39,80 @@ So, additionally to the list given below, there may actually be a bunch of further files (also exported ones) that serve no real value, but are being `#include`d through one way or another. -* [[source_gnumach-1-branch ddb/db_expr.h]] +* [[!source_gnumach-1-branch ddb/db_expr.h]] Currently used, but copyright violation? Rewrite? -* [[source_gnumach-1-branch ddb/db_print.h]] +* [[!source_gnumach-1-branch ddb/db_print.h]] Copyright violation? Currently unused, but could be used in principle (or be rewritten, to avoid the copyright oddity). -* [[source_gnumach-1-branch ddb/tr.h]] +* [[!source_gnumach-1-branch ddb/tr.h]] Copyright violation. Unused. Remove. -* [[source_gnumach-1-branch device/dev_master.h]] +* [[!source_gnumach-1-branch device/dev_master.h]] Might be usable for SMP? Remove otherwise. -* [[source_gnumach-1-branch i386/i386/kttd_machdep.h]] +* [[!source_gnumach-1-branch i386/i386/kttd_machdep.h]] -* [[source_gnumach-1-branch i386/i386/sched_param.h]] +* [[!source_gnumach-1-branch i386/i386/sched_param.h]] -* [[source_gnumach-1-branch i386/include/mach/i386/cthreads.h]] +* [[!source_gnumach-1-branch i386/include/mach/i386/cthreads.h]] Was probably once exported, but is no longer. -* [[source_gnumach-1-branch i386/include/mach/i386/ioccom.h]] +* [[!source_gnumach-1-branch i386/include/mach/i386/ioccom.h]] Exported. -* [[source_gnumach-1-branch include/device/audio_status.h]] +* [[!source_gnumach-1-branch include/device/audio_status.h]] Exported. -* [[source_gnumach-1-branch include/device/tape_status.h]] +* [[!source_gnumach-1-branch include/device/tape_status.h]] Exported. -* [[source_gnumach-1-branch include/mach/alert.h]] +* [[!source_gnumach-1-branch include/mach/alert.h]] Exported. -* [[source_gnumach-1-branch include/mach/boot.h]] +* [[!source_gnumach-1-branch include/mach/boot.h]] Exported. -* [[source_gnumach-1-branch include/mach/macro_help.h]] +* [[!source_gnumach-1-branch include/mach/macro_help.h]] Exported. -* [[source_gnumach-1-branch include/mach/multiboot.h]] +* [[!source_gnumach-1-branch include/mach/multiboot.h]] Exported. -* [[source_gnumach-1-branch include/mach/profil.h]] +* [[!source_gnumach-1-branch include/mach/profil.h]] Exported. -* [[source_gnumach-1-branch include/mach/profilparam.h]] +* [[!source_gnumach-1-branch include/mach/profilparam.h]] Exported. -* [[source_gnumach-1-branch include/mach/exec/a.out.h]] +* [[!source_gnumach-1-branch include/mach/exec/a.out.h]] Exported. -* [[source_gnumach-1-branch include/mach_debug/pc_info.h]] +* [[!source_gnumach-1-branch include/mach_debug/pc_info.h]] Currently not exported, but was probably once meant to be. -* [[source_gnumach-1-branch kern/act.h]] +* [[!source_gnumach-1-branch kern/act.h]] -* [[source_gnumach-1-branch kern/refcount.h]] +* [[!source_gnumach-1-branch kern/refcount.h]] -* [[source_gnumach-1-branch kern/shuttle.h]] +* [[!source_gnumach-1-branch kern/shuttle.h]] # Remove dead functions, variables, etc. from source files diff --git a/microkernel/mach/gnumach/projects/gdb_stubs.mdwn b/microkernel/mach/gnumach/projects/gdb_stubs.mdwn index 9a11a82b..43e65a2b 100644 --- a/microkernel/mach/gnumach/projects/gdb_stubs.mdwn +++ b/microkernel/mach/gnumach/projects/gdb_stubs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/gnumach/reference_manual.mdwn b/microkernel/mach/gnumach/reference_manual.mdwn index 225ab176..dab6423d 100644 --- a/microkernel/mach/gnumach/reference_manual.mdwn +++ b/microkernel/mach/gnumach/reference_manual.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 +[[!meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/ipc.mdwn b/microkernel/mach/ipc.mdwn index 889fac2f..010b51c9 100644 --- a/microkernel/mach/ipc.mdwn +++ b/microkernel/mach/ipc.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/ipc/sequence_numbering.mdwn b/microkernel/mach/ipc/sequence_numbering.mdwn index 7c1f68e4..ea5cf5fe 100644 --- a/microkernel/mach/ipc/sequence_numbering.mdwn +++ b/microkernel/mach/ipc/sequence_numbering.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig.mdwn b/microkernel/mach/mig.mdwn index eb1c0906..2bf81d59 100644 --- a/microkernel/mach/mig.mdwn +++ b/microkernel/mach/mig.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2001, 2002, 2003, 2006, 2007, 2008 Free Software +[[!meta copyright="Copyright © 2001, 2002, 2003, 2006, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig/documentation.mdwn b/microkernel/mach/mig/documentation.mdwn index 93bc2769..be0796e8 100644 --- a/microkernel/mach/mig/documentation.mdwn +++ b/microkernel/mach/mig/documentation.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2002, 2003, 2005, 2007, 2008, 2009 Free Software +[[!meta copyright="Copyright © 2002, 2003, 2005, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig/documentation/dealloc.mdwn b/microkernel/mach/mig/documentation/dealloc.mdwn index 008499f1..42f06613 100644 --- a/microkernel/mach/mig/documentation/dealloc.mdwn +++ b/microkernel/mach/mig/documentation/dealloc.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig/documentation/servercopy.mdwn b/microkernel/mach/mig/documentation/servercopy.mdwn index 5ede723b..00edf0f3 100644 --- a/microkernel/mach/mig/documentation/servercopy.mdwn +++ b/microkernel/mach/mig/documentation/servercopy.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig/gnu_mig.mdwn b/microkernel/mach/mig/gnu_mig.mdwn index 4f5fb5c8..b2a41bac 100644 --- a/microkernel/mach/mig/gnu_mig.mdwn +++ b/microkernel/mach/mig/gnu_mig.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2001, 2006, 2008 Free Software Foundation, +[[!meta copyright="Copyright © 2001, 2006, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/mig/gnu_mig/open_issues.mdwn b/microkernel/mach/mig/gnu_mig/open_issues.mdwn index 37d27f19..ad440b40 100644 --- a/microkernel/mach/mig/gnu_mig/open_issues.mdwn +++ b/microkernel/mach/mig/gnu_mig/open_issues.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,11 +8,11 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Open Issues"]] +[[!meta title="Open Issues"]] This is a dumping ground for open issues for GNU MIG. -[[inline +[[!inline pages="(microkernel/mach/mig/gnu_mig/open_issues/* or tagged(open_issue_*mig)) and !*/discussion" show=0 diff --git a/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn b/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn index 93347759..27de1015 100644 --- a/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn +++ b/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/port.mdwn b/microkernel/mach/port.mdwn index 77b1372f..b3568c29 100644 --- a/microkernel/mach/port.mdwn +++ b/microkernel/mach/port.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/mach/rpc.mdwn b/microkernel/mach/rpc.mdwn index ecef86ee..5508ea3c 100644 --- a/microkernel/mach/rpc.mdwn +++ b/microkernel/mach/rpc.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/viengoos.mdwn b/microkernel/viengoos.mdwn index b4158843..95009142 100644 --- a/microkernel/viengoos.mdwn +++ b/microkernel/viengoos.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/viengoos/building.mdwn b/microkernel/viengoos/building.mdwn index d70ea47d..b34188e2 100644 --- a/microkernel/viengoos/building.mdwn +++ b/microkernel/viengoos/building.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/viengoos/documentation.mdwn b/microkernel/viengoos/documentation.mdwn index 1fe4c937..ccce208b 100644 --- a/microkernel/viengoos/documentation.mdwn +++ b/microkernel/viengoos/documentation.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/viengoos/hardware.mdwn b/microkernel/viengoos/hardware.mdwn index 1b4ce514..e5a2ddf5 100644 --- a/microkernel/viengoos/hardware.mdwn +++ b/microkernel/viengoos/hardware.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/microkernel/viengoos/projects.mdwn b/microkernel/viengoos/projects.mdwn index c61f42bd..cbe39607 100644 --- a/microkernel/viengoos/projects.mdwn +++ b/microkernel/viengoos/projects.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[tag open_issue_viengoos]] +[[!tag open_issue_viengoos]] Some projects: diff --git a/microkernel/viengoos/serial_port.mdwn b/microkernel/viengoos/serial_port.mdwn index 53b988c5..01dd4050 100644 --- a/microkernel/viengoos/serial_port.mdwn +++ b/microkernel/viengoos/serial_port.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/naming_context.mdwn b/naming_context.mdwn index 9c701e71..28b2fabd 100644 --- a/naming_context.mdwn +++ b/naming_context.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news.mdwn b/news.mdwn index 8e5d73da..c5c0a851 100644 --- a/news.mdwn +++ b/news.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[inline +[[!inline pages="news/* and !*/discussion" show=0 feeds=no diff --git a/news/2002-01-13.mdwn b/news/2002-01-13.mdwn index ed56563d..06b62334 100644 --- a/news/2002-01-13.mdwn +++ b/news/2002-01-13.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-01-19.mdwn b/news/2002-01-19.mdwn index d221453d..18fe6aab 100644 --- a/news/2002-01-19.mdwn +++ b/news/2002-01-19.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-02-18.mdwn b/news/2002-02-18.mdwn index 74c0191d..b34c654a 100644 --- a/news/2002-02-18.mdwn +++ b/news/2002-02-18.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-03-03.mdwn b/news/2002-03-03.mdwn index db730238..9a66a2f5 100644 --- a/news/2002-03-03.mdwn +++ b/news/2002-03-03.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-03-08.mdwn b/news/2002-03-08.mdwn index 64fa508a..c107dcfc 100644 --- a/news/2002-03-08.mdwn +++ b/news/2002-03-08.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-03-23.mdwn b/news/2002-03-23.mdwn index 9820b8c5..1936ca05 100644 --- a/news/2002-03-23.mdwn +++ b/news/2002-03-23.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-05-05.mdwn b/news/2002-05-05.mdwn index 81d36280..d5db172b 100644 --- a/news/2002-05-05.mdwn +++ b/news/2002-05-05.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-05-18.mdwn b/news/2002-05-18.mdwn index b88db508..e2cb9261 100644 --- a/news/2002-05-18.mdwn +++ b/news/2002-05-18.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-05-24.mdwn b/news/2002-05-24.mdwn index cabc3e0d..32469759 100644 --- a/news/2002-05-24.mdwn +++ b/news/2002-05-24.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-05-28.mdwn b/news/2002-05-28.mdwn index 60622205..330e8dc0 100644 --- a/news/2002-05-28.mdwn +++ b/news/2002-05-28.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-06-22.mdwn b/news/2002-06-22.mdwn index 6ac785a6..439d7ea6 100644 --- a/news/2002-06-22.mdwn +++ b/news/2002-06-22.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-08-16.mdwn b/news/2002-08-16.mdwn index 6f6dcb2e..69f42be4 100644 --- a/news/2002-08-16.mdwn +++ b/news/2002-08-16.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-10-03.mdwn b/news/2002-10-03.mdwn index 40f4e1b6..28ab527a 100644 --- a/news/2002-10-03.mdwn +++ b/news/2002-10-03.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-10-03_2.mdwn b/news/2002-10-03_2.mdwn index 58b44789..0dabd3b6 100644 --- a/news/2002-10-03_2.mdwn +++ b/news/2002-10-03_2.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-10-19.mdwn b/news/2002-10-19.mdwn index e856370a..fb3e75b2 100644 --- a/news/2002-10-19.mdwn +++ b/news/2002-10-19.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2002-11-18.mdwn b/news/2002-11-18.mdwn index 44e33200..fec60a89 100644 --- a/news/2002-11-18.mdwn +++ b/news/2002-11-18.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2003-01-18.mdwn b/news/2003-01-18.mdwn index 0719f435..1d89bc68 100644 --- a/news/2003-01-18.mdwn +++ b/news/2003-01-18.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2003-02-14.mdwn b/news/2003-02-14.mdwn index 2509a771..89473575 100644 --- a/news/2003-02-14.mdwn +++ b/news/2003-02-14.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2003-07-02.mdwn b/news/2003-07-02.mdwn index 6e76cc66..b5433eee 100644 --- a/news/2003-07-02.mdwn +++ b/news/2003-07-02.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2003-07-16.mdwn b/news/2003-07-16.mdwn index e4ec468b..af8c8b74 100644 --- a/news/2003-07-16.mdwn +++ b/news/2003-07-16.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2003-08-21.mdwn b/news/2003-08-21.mdwn index 8d060582..602ee2ef 100644 --- a/news/2003-08-21.mdwn +++ b/news/2003-08-21.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2003, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2005-01-28.mdwn b/news/2005-01-28.mdwn index 5bd2ac19..92056b38 100644 --- a/news/2005-01-28.mdwn +++ b/news/2005-01-28.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2005, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2005, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2005-09-20.mdwn b/news/2005-09-20.mdwn index 99a20940..16424a8c 100644 --- a/news/2005-09-20.mdwn +++ b/news/2005-09-20.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2005, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2005, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2006-04-27.mdwn b/news/2006-04-27.mdwn index dc52c527..d50fd272 100644 --- a/news/2006-04-27.mdwn +++ b/news/2006-04-27.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2006, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2006, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2007-01-07.mdwn b/news/2007-01-07.mdwn index 75eb7d01..b82ec6e0 100644 --- a/news/2007-01-07.mdwn +++ b/news/2007-01-07.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2007-01-14.mdwn b/news/2007-01-14.mdwn index 8dc3d9f5..16947757 100644 --- a/news/2007-01-14.mdwn +++ b/news/2007-01-14.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2007-03-14.mdwn b/news/2007-03-14.mdwn index 3b1b2ad3..ec3ebcda 100644 --- a/news/2007-03-14.mdwn +++ b/news/2007-03-14.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2007-10-01.mdwn b/news/2007-10-01.mdwn index 768cf42b..a95b2631 100644 --- a/news/2007-10-01.mdwn +++ b/news/2007-10-01.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2007-10-12.mdwn b/news/2007-10-12.mdwn index d262dcd8..8d46a07f 100644 --- a/news/2007-10-12.mdwn +++ b/news/2007-10-12.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2008-02-11.mdwn b/news/2008-02-11.mdwn index a8f00497..7b4346b8 100644 --- a/news/2008-02-11.mdwn +++ b/news/2008-02-11.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2008-03-19.mdwn b/news/2008-03-19.mdwn index fc0388e0..0a2c91e2 100644 --- a/news/2008-03-19.mdwn +++ b/news/2008-03-19.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2008-09-11.mdwn b/news/2008-09-11.mdwn index 1060761c..85f31317 100644 --- a/news/2008-09-11.mdwn +++ b/news/2008-09-11.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2008-11-14.mdwn b/news/2008-11-14.mdwn index 1e2c8802..9cdbdea0 100644 --- a/news/2008-11-14.mdwn +++ b/news/2008-11-14.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2008-12-12.mdwn b/news/2008-12-12.mdwn index 1850cb56..c55b991e 100644 --- a/news/2008-12-12.mdwn +++ b/news/2008-12-12.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/news/2009-03-28.mdwn b/news/2009-03-28.mdwn index 2f67b6ce..72741457 100644 --- a/news/2009-03-28.mdwn +++ b/news/2009-03-28.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/open_issues.mdwn b/open_issues.mdwn index 8aa07c1c..c372abfb 100644 --- a/open_issues.mdwn +++ b/open_issues.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,17 +8,17 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Open Issues"]] +[[!meta title="Open Issues"]] This is a dumping ground for open issues. -[[inline +[[!inline pages=none show=-1 feeds=no actions=yes rootpage="open_issues" postformtext="Add a new item titled:"]] -[[map pages="(./open_issues/* or */open_issues/* or +[[!map pages="(./open_issues/* or */open_issues/* or hurd/running/debian/porting/* or tagged(open_issue*)) and !*/discussion" show=title]] diff --git a/open_issues/blkrrpart_ioctl.mdwn b/open_issues/blkrrpart_ioctl.mdwn index 6a4c0378..81e07f3e 100644 --- a/open_issues/blkrrpart_ioctl.mdwn +++ b/open_issues/blkrrpart_ioctl.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,9 +8,9 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="BLKRRPART IOCTL"]] +[[!meta title="BLKRRPART IOCTL"]] -[[tag open_issue_glibc open_issue_hurd open_issue_gnumach]] +[[!tag open_issue_glibc open_issue_hurd open_issue_gnumach]] Just like in other Unix systems one can, for example, use `fdisk` or `parted` to manage hard disks' partition tables. After doing changes to a disk's diff --git a/persistency.mdwn b/persistency.mdwn index 17176708..16234c9b 100644 --- a/persistency.mdwn +++ b/persistency.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/policy.mdwn b/policy.mdwn index f0a414f2..7412de5f 100644 --- a/policy.mdwn +++ b/policy.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/principal.mdwn b/principal.mdwn index 897c0436..47ec3c7f 100644 --- a/principal.mdwn +++ b/principal.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/public_hurd_boxen.mdwn b/public_hurd_boxen.mdwn index b4ea6169..f504225b 100644 --- a/public_hurd_boxen.mdwn +++ b/public_hurd_boxen.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -11,7 +11,7 @@ is included in the section entitled Here are some Hurd boxes that users have made available to the public: -[[table class="table_style_1" data=""" +[[!table class="table_style_1" data=""" "Host Name","Operator","Access","Distro","Machine Specs","Comments" "flubber.bddebian.com","[[Barry_de_Freese|bddebian]]","ssh; port 2250","Debian","Celeron; 2.2 GHz; 333 MiB","domU on zenhost" "clubber.bddebian.com","[[Barry_de_Freese|bddebian]]","ssh; port 2251","Debian","PIII 1 GHz; 384 MiB" diff --git a/qemu.mdwn b/qemu.mdwn index 97ce5693..c0ed12f0 100644 --- a/qemu.mdwn +++ b/qemu.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2005, 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2005, 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/recent_changes.mdwn b/recent_changes.mdwn index 708e4588..e9bd13c4 100644 --- a/recent_changes.mdwn +++ b/recent_changes.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Recent Changes"]] +[[!meta title="Recent Changes"]] -[[inline pages="internal(recent_changes/change_*)" template=recentchanges +[[!inline pages="internal(recent_changes/change_*)" template=recentchanges show=0]] diff --git a/rpc.mdwn b/rpc.mdwn index e60254d1..451dd4d4 100644 --- a/rpc.mdwn +++ b/rpc.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/rules.mdwn b/rules.mdwn index d1a544e0..ccc7363e 100644 --- a/rules.mdwn +++ b/rules.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/rules/savannah_group.mdwn b/rules/savannah_group.mdwn index ab84e75d..7de688be 100644 --- a/rules/savannah_group.mdwn +++ b/rules/savannah_group.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2006, 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/rules/source_repositories.mdwn b/rules/source_repositories.mdwn index 2c54e7cf..f15d0f3a 100644 --- a/rules/source_repositories.mdwn +++ b/rules/source_repositories.mdwn @@ -1,7 +1,7 @@ -[[meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +[[!meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/security.mdwn b/security.mdwn index ae925f74..4c037982 100644 --- a/security.mdwn +++ b/security.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/sfi.mdwn b/sfi.mdwn index 1a987290..67d26105 100644 --- a/sfi.mdwn +++ b/sfi.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/shortcuts.mdwn b/shortcuts.mdwn index 19368aab..47698bb2 100644 --- a/shortcuts.mdwn +++ b/shortcuts.mdwn @@ -1,58 +1,58 @@ -[[if test="enabled(shortcut)" +[[!if test="enabled(shortcut)" then="This wiki has shortcuts **enabled**." else="This wiki has shortcuts **disabled**."]] Some examples of using shortcuts include: - \[[google foo]] - \[[wikipedia War_of_1812]] - \[[debbug 12345]] + \[[!google foo]] + \[[!wikipedia War_of_1812]] + \[[!debbug 12345]] This page controls what shortcut links the wiki supports. -* [[shortcut name=google url="http://www.google.com/search?q=%s"]] -* [[shortcut name=archive url="http://web.archive.org/*/%S"]] -* [[shortcut name=gmap url="http://maps.google.com/maps?q=%s"]] -* [[shortcut name=gmsg url="http://groups.google.com/groups?selm=%s"]] -* [[shortcut name=wikipedia url="http://en.wikipedia.org/wiki/%s"]] -* [[shortcut name=wikitravel url="http://wikitravel.org/en/%s"]] -* [[shortcut name=debbug url="http://bugs.debian.org/%s" desc="bug #%s"]] -* [[shortcut name=deblist url="http://lists.debian.org/debian-%s" desc="debian-%s@lists.debian.org"]] -* [[shortcut name=debpkg url="http://packages.debian.org/%s"]] -* [[shortcut name=debpts url="http://packages.qa.debian.org/%s"]] -* [[shortcut name=debmsg url="http://lists.debian.org/msgid-search/%s"]] -* [[shortcut name=debrt url="https://rt.debian.org/Ticket/Display.html?id=%s"]] -* [[shortcut name=debss url="http://snapshot.debian.net/package/%s"]] - * Usage: `\[[debss package]]`, `\[[debss package#version]]`, or `\[[debss package/version]]`. See http://snapshot.debian.net for details. -* [[shortcut name=fdobug url="https://bugs.freedesktop.org/show_bug.cgi?id=%s" desc="freedesktop.org bug #%s"]] -* [[shortcut name=fdolist url="http://lists.freedesktop.org/mailman/listinfo/%s" desc="%s@lists.freedesktop.org"]] -* [[shortcut name=gnomebug url="http://bugzilla.gnome.org/show_bug.cgi?id=%s" desc="GNOME bug #%s"]] -* [[shortcut name=linuxbug url="http://bugzilla.kernel.org/show_bug.cgi?id=%s" desc="Linux bug #%s"]] -* [[shortcut name=mozbug url="https://bugzilla.mozilla.org/show_bug.cgi?id=%s" desc="Mozilla bug #%s"]] -* [[shortcut name=gnulist url="http://lists.gnu.org/mailman/listinfo/%s" desc="%s@gnu.org"]] -* [[shortcut name=marcmsg url="http://marc.info/?i=%s"]] -* [[shortcut name=marclist url="http://marc.info/?l=%s"]] -* [[shortcut name=gmane url="http://dir.gmane.org/gmane.%s" desc="gmane.%s"]] -* [[shortcut name=gmanemsg url="http://mid.gmane.org/%s"]] -* [[shortcut name=cpan url="http://search.cpan.org/search?mode=dist&query=%s"]] -* [[shortcut name=ctan url="http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=%s"]] -* [[shortcut name=hoogle url="http://haskell.org/hoogle/?q=%s"]] -* [[shortcut name=iki url="http://ikiwiki.info/%S/"]] -* [[shortcut name=ljuser url="http://%s.livejournal.com/"]] -* [[shortcut name=rfc url="http://www.ietf.org/rfc/rfc%s.txt" desc="RFC %s"]] -* [[shortcut name=c2 url="http://c2.com/cgi/wiki?%s"]] -* [[shortcut name=meatballwiki url="http://www.usemod.com/cgi-bin/mb.pl?%s"]] -* [[shortcut name=emacswiki url="http://www.emacswiki.org/cgi-bin/wiki/%s"]] -* [[shortcut name=haskellwiki url="http://haskell.org/haskellwiki/%s"]] -* [[shortcut name=dict url="http://www.dict.org/bin/Dict?Form=Dict1&Strategy=*&Database=*&Query=%s"]] -* [[shortcut name=imdb url="http://imdb.com/find?q=%s"]] -* [[shortcut name=gpg url="http://pgpkeys.mit.edu:11371/pks/lookup?op=vindex&exact=on&search=0x%s"]] -* [[shortcut name=perldoc url="http://perldoc.perl.org/search.html?q=%s"]] -* [[shortcut name=whois url="http://reports.internic.net/cgi/whois?whois_nic=%s&type=domain"]] -* [[shortcut name=cve url="http://cve.mitre.org/cgi-bin/cvename.cgi?name=%s"]] -* [[shortcut name=cia url="http://cia.vc/stats/project/%s"]] -* [[shortcut name=ciauser url="http://cia.vc/stats/user/%s"]] -* [[shortcut name=flickr url="http://www.flickr.com/photos/%s"]] +* [[!shortcut name=google url="http://www.google.com/search?q=%s"]] +* [[!shortcut name=archive url="http://web.archive.org/*/%S"]] +* [[!shortcut name=gmap url="http://maps.google.com/maps?q=%s"]] +* [[!shortcut name=gmsg url="http://groups.google.com/groups?selm=%s"]] +* [[!shortcut name=wikipedia url="http://en.wikipedia.org/wiki/%s"]] +* [[!shortcut name=wikitravel url="http://wikitravel.org/en/%s"]] +* [[!shortcut name=debbug url="http://bugs.debian.org/%s" desc="bug #%s"]] +* [[!shortcut name=deblist url="http://lists.debian.org/debian-%s" desc="debian-%s@lists.debian.org"]] +* [[!shortcut name=debpkg url="http://packages.debian.org/%s"]] +* [[!shortcut name=debpts url="http://packages.qa.debian.org/%s"]] +* [[!shortcut name=debmsg url="http://lists.debian.org/msgid-search/%s"]] +* [[!shortcut name=debrt url="https://rt.debian.org/Ticket/Display.html?id=%s"]] +* [[!shortcut name=debss url="http://snapshot.debian.net/package/%s"]] + * Usage: `\[[!debss package]]`, `\[[!debss package#version]]`, or `\[[!debss package/version]]`. See http://snapshot.debian.net for details. +* [[!shortcut name=fdobug url="https://bugs.freedesktop.org/show_bug.cgi?id=%s" desc="freedesktop.org bug #%s"]] +* [[!shortcut name=fdolist url="http://lists.freedesktop.org/mailman/listinfo/%s" desc="%s@lists.freedesktop.org"]] +* [[!shortcut name=gnomebug url="http://bugzilla.gnome.org/show_bug.cgi?id=%s" desc="GNOME bug #%s"]] +* [[!shortcut name=linuxbug url="http://bugzilla.kernel.org/show_bug.cgi?id=%s" desc="Linux bug #%s"]] +* [[!shortcut name=mozbug url="https://bugzilla.mozilla.org/show_bug.cgi?id=%s" desc="Mozilla bug #%s"]] +* [[!shortcut name=gnulist url="http://lists.gnu.org/mailman/listinfo/%s" desc="%s@gnu.org"]] +* [[!shortcut name=marcmsg url="http://marc.info/?i=%s"]] +* [[!shortcut name=marclist url="http://marc.info/?l=%s"]] +* [[!shortcut name=gmane url="http://dir.gmane.org/gmane.%s" desc="gmane.%s"]] +* [[!shortcut name=gmanemsg url="http://mid.gmane.org/%s"]] +* [[!shortcut name=cpan url="http://search.cpan.org/search?mode=dist&query=%s"]] +* [[!shortcut name=ctan url="http://tug.ctan.org/cgi-bin/ctanPackageInformation.py?id=%s"]] +* [[!shortcut name=hoogle url="http://haskell.org/hoogle/?q=%s"]] +* [[!shortcut name=iki url="http://ikiwiki.info/%S/"]] +* [[!shortcut name=ljuser url="http://%s.livejournal.com/"]] +* [[!shortcut name=rfc url="http://www.ietf.org/rfc/rfc%s.txt" desc="RFC %s"]] +* [[!shortcut name=c2 url="http://c2.com/cgi/wiki?%s"]] +* [[!shortcut name=meatballwiki url="http://www.usemod.com/cgi-bin/mb.pl?%s"]] +* [[!shortcut name=emacswiki url="http://www.emacswiki.org/cgi-bin/wiki/%s"]] +* [[!shortcut name=haskellwiki url="http://haskell.org/haskellwiki/%s"]] +* [[!shortcut name=dict url="http://www.dict.org/bin/Dict?Form=Dict1&Strategy=*&Database=*&Query=%s"]] +* [[!shortcut name=imdb url="http://imdb.com/find?q=%s"]] +* [[!shortcut name=gpg url="http://pgpkeys.mit.edu:11371/pks/lookup?op=vindex&exact=on&search=0x%s"]] +* [[!shortcut name=perldoc url="http://perldoc.perl.org/search.html?q=%s"]] +* [[!shortcut name=whois url="http://reports.internic.net/cgi/whois?whois_nic=%s&type=domain"]] +* [[!shortcut name=cve url="http://cve.mitre.org/cgi-bin/cvename.cgi?name=%s"]] +* [[!shortcut name=cia url="http://cia.vc/stats/project/%s"]] +* [[!shortcut name=ciauser url="http://cia.vc/stats/user/%s"]] +* [[!shortcut name=flickr url="http://www.flickr.com/photos/%s"]] To add a new shortcut, use the `shortcut` [[ikiwiki/PreprocessorDirective]]. In the url, "%s" is replaced with the @@ -65,14 +65,14 @@ Remember that the `name` you give the shortcut will become a new with an existing directive. If you come up with a shortcut that you think others might find useful, -consider contributing it to the [[iki shortcuts]] page on the ikiwiki +consider contributing it to the [[!iki shortcuts]] page on the ikiwiki ikiwiki, so that future versions of ikiwiki will include your shortcut in the standard underlay. # Local stuff -* [[shortcut name=source_gnumach-1-branch url="http://cvs.savannah.gnu.org/viewvc/gnumach/%S?view=log&root=hurd&pathrev=gnumach-1-branch"]] -* [[shortcut name=GNU_Savannah_bug url="http://savannah.gnu.org/bugs/?%s" desc="GNU Savannah bug #%s"]] -* [[shortcut name=GNU_Savannah_patch url="http://savannah.gnu.org/patch/?%s" desc="GNU Savannah patch #%s"]] -* [[shortcut name=GNU_Savannah_task url="http://savannah.gnu.org/task/?%s" desc="GNU Savannah task #%s"]] +* [[!shortcut name=source_gnumach-1-branch url="http://cvs.savannah.gnu.org/viewvc/gnumach/%S?view=log&root=hurd&pathrev=gnumach-1-branch"]] +* [[!shortcut name=GNU_Savannah_bug url="http://savannah.gnu.org/bugs/?%s" desc="GNU Savannah bug #%s"]] +* [[!shortcut name=GNU_Savannah_patch url="http://savannah.gnu.org/patch/?%s" desc="GNU Savannah patch #%s"]] +* [[!shortcut name=GNU_Savannah_task url="http://savannah.gnu.org/task/?%s" desc="GNU Savannah task #%s"]] diff --git a/sidebar.mdwn b/sidebar.mdwn index 85596be8..89df4b54 100644 --- a/sidebar.mdwn +++ b/sidebar.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -Welcome to... [[img hurd/logo/boxes-redrawn.png link=/hurd/logo]] ... the GNU +Welcome to... [[!img hurd/logo/boxes-redrawn.png link=/hurd/logo]] ... the GNU Hurd! * **[[Home|/index]]** @@ -18,13 +18,13 @@ Hurd! --- - * **[[Hurd]]**[[if test="destpage(hurd*)" then=" + * **[[Hurd]]**[[!if test="destpage(hurd*)" then=" * *[[Hurd/Documentation]]* * *[[hurd/Running]]*"]] - * **[[microkernel/Mach]]**[[if test="destpage(microkernel/mach*)" then=" + * **[[microkernel/Mach]]**[[!if test="destpage(microkernel/mach*)" then=" * *[[microkernel/mach/Documentation]]* * *[[GNU_Mach|microkernel/mach/gnumach]]*"]] - * *[[microkernel/mach/MIG]]*[[if test="destpage(microkernel/mach/mig*)" then=" + * *[[microkernel/mach/MIG]]*[[!if test="destpage(microkernel/mach/mig*)" then=" * [[microkernel/mach/mig/GNU_MIG]]"]] --- diff --git a/tcb.mdwn b/tcb.mdwn index d321a954..9b117fae 100644 --- a/tcb.mdwn +++ b/tcb.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/trackers.mdwn b/trackers.mdwn index c47daf9a..028117ef 100644 --- a/trackers.mdwn +++ b/trackers.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/trust.mdwn b/trust.mdwn index f0d29a9c..f0fe0cb7 100644 --- a/trust.mdwn +++ b/trust.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/unix.mdwn b/unix.mdwn index b313010a..96c46caf 100644 --- a/unix.mdwn +++ b/unix.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -10,7 +10,7 @@ is included in the section entitled # External - * Wikipedia page about [[wikipedia UNIX]]. + * Wikipedia page about [[!wikipedia UNIX]]. * [*Standardizing UNIX*](http://www.informit.com/articles/printerfriendly.aspx?p=691503), an diff --git a/user/flaviocruz.mdwn b/user/flaviocruz.mdwn index 9c9af71d..450c2754 100644 --- a/user/flaviocruz.mdwn +++ b/user/flaviocruz.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/user/madhusudancs.mdwn b/user/madhusudancs.mdwn index 1139c718..382f988a 100644 --- a/user/madhusudancs.mdwn +++ b/user/madhusudancs.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -10,7 +10,7 @@ is included in the section entitled [[!meta title="GNU/Linux compatible procfs"]] -[[!toc ]] +[[!toc]] ---- Project Name diff --git a/user/scolobb.mdwn b/user/scolobb.mdwn index 2de8eb4f..8cf47568 100644 --- a/user/scolobb.mdwn +++ b/user/scolobb.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/user/tschwinge.mdwn b/user/tschwinge.mdwn index b72f26f5..5ffa6fd8 100644 --- a/user/tschwinge.mdwn +++ b/user/tschwinge.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]]"""]] -[[meta title="Thomas Schwinge"]] +[[!meta title="Thomas Schwinge"]] diff --git a/user/vincentvikram.mdwn b/user/vincentvikram.mdwn index 847325e2..8927bd4e 100644 --- a/user/vincentvikram.mdwn +++ b/user/vincentvikram.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/user/zhengda/howto.mdwn b/user/zhengda/howto.mdwn index ed13acc2..cea3cf0b 100644 --- a/user/zhengda/howto.mdwn +++ b/user/zhengda/howto.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant diff --git a/virtualization.mdwn b/virtualization.mdwn index 88f95328..325340b0 100644 --- a/virtualization.mdwn +++ b/virtualization.mdwn @@ -1,6 +1,6 @@ -[[meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] -[[meta license="""[[toggle id="license" text="GFDL 1.2+"]][[toggleable +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant @@ -10,7 +10,7 @@ is included in the section entitled # External - * Wikipedia page about [[wikipedia Virtualization]]. + * Wikipedia page about [[!wikipedia Virtualization]]. # See Also -- cgit v1.2.3 From 1fbfe2b1102476b0c5a91bfd940ac8ad89a6f81b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 18 May 2009 16:44:06 +0200 Subject: Simplify some links. --- abac.mdwn | 2 +- asbestos.mdwn | 2 +- asking_questions.mdwn | 2 +- binutils.mdwn | 2 +- capability.mdwn | 2 +- colophon.mdwn | 2 +- colophon/about_the_twiki_to_ikiwiki_conversion.mdwn | 2 +- community.mdwn | 2 +- community/communication.mdwn | 8 ++++---- community/facebook.mdwn | 2 +- community/gsoc.mdwn | 2 +- community/gsoc/2008.mdwn | 2 +- community/gsoc/2008/minutes-2008-04-25.mdwn | 2 +- community/gsoc/2008/minutes-2008-05-02.mdwn | 2 +- community/gsoc/2008/minutes-2008-05-16.mdwn | 2 +- community/gsoc/organization_application.mdwn | 2 +- community/gsoc/project_ideas.mdwn | 4 ++-- community/gsoc/project_ideas/cdparanoia.mdwn | 2 +- community/gsoc/project_ideas/debian_installer.mdwn | 2 +- community/gsoc/project_ideas/disk_io_performance.mdwn | 2 +- community/gsoc/project_ideas/download_backends.mdwn | 2 +- community/gsoc/project_ideas/driver_glue_code.mdwn | 2 +- community/gsoc/project_ideas/dtrace.mdwn | 2 +- community/gsoc/project_ideas/file_locking.mdwn | 2 +- community/gsoc/project_ideas/gnat.mdwn | 2 +- community/gsoc/project_ideas/gnumach_cleanup.mdwn | 2 +- community/gsoc/project_ideas/hardware_libs.mdwn | 2 +- community/gsoc/project_ideas/language_bindings.mdwn | 2 +- community/gsoc/project_ideas/lexical_dot-dot.mdwn | 2 +- community/gsoc/project_ideas/libcap.mdwn | 2 +- community/gsoc/project_ideas/libdiskfs_locking.mdwn | 2 +- community/gsoc/project_ideas/libgtop.mdwn | 2 +- community/gsoc/project_ideas/maxpath.mdwn | 2 +- community/gsoc/project_ideas/mtab.mdwn | 2 +- .../gsoc/project_ideas/namespace-based_translator_selection.mdwn | 2 +- community/gsoc/project_ideas/nfs.mdwn | 2 +- community/gsoc/project_ideas/package_manager.mdwn | 2 +- community/gsoc/project_ideas/perl.mdwn | 2 +- community/gsoc/project_ideas/procfs.mdwn | 2 +- community/gsoc/project_ideas/pthreads.mdwn | 2 +- community/gsoc/project_ideas/secure_chroot.mdwn | 2 +- community/gsoc/project_ideas/server_overriding.mdwn | 2 +- community/gsoc/project_ideas/sound.mdwn | 2 +- community/gsoc/project_ideas/tcp_ip_stack.mdwn | 2 +- community/gsoc/project_ideas/tmpfs.mdwn | 2 +- community/gsoc/project_ideas/unionfs_boot.mdwn | 2 +- community/gsoc/project_ideas/unionmount.mdwn | 2 +- community/gsoc/project_ideas/virtualization.mdwn | 2 +- community/gsoc/project_ideas/vm_tuning.mdwn | 2 +- community/gsoc/project_ideas/xattr.mdwn | 2 +- community/gsoc/project_ideas/xmlfs.mdwn | 2 +- community/gsoc/student_application_form.mdwn | 4 ++-- community/gsoc/xorg_ideas.mdwn | 2 +- community/meetings.mdwn | 2 +- community/meetings/eurosys_2009.mdwn | 2 +- community/meetings/fosdem_2005.mdwn | 2 +- community/meetings/fosdem_2006.mdwn | 2 +- community/meetings/fosdem_2007.mdwn | 2 +- community/meetings/fosdem_2008.mdwn | 2 +- community/meetings/rmll_2006.mdwn | 2 +- community/meetings/self-organised.mdwn | 2 +- community/meetings/stesie_2007-10-12.mdwn | 2 +- community/weblogs.mdwn | 2 +- community/weblogs/ArneBab.mdwn | 2 +- .../ArneBab/xkb-woes-trying-to-get-a-german-keyboard-layout.mdwn | 2 +- config_edittemplate.mdwn | 2 +- config_edittemplate/regular_page.mdwn | 2 +- confused_deputy.mdwn | 2 +- contact_us.mdwn | 4 ++-- contributing.mdwn | 4 ++-- contributing/questionnaire.mdwn | 4 ++-- contributing/web_pages.mdwn | 2 +- designation.mdwn | 2 +- destructive_interference.mdwn | 2 +- documentation.mdwn | 2 +- donate.mdwn | 2 +- emulation.mdwn | 2 +- extensibility.mdwn | 2 +- gcc.mdwn | 2 +- gdb.mdwn | 2 +- gdb/backtrace.mdwn | 2 +- getting_help.mdwn | 2 +- glibc.mdwn | 2 +- hurd.mdwn | 2 +- hurd/advantages.mdwn | 2 +- hurd/authentication.mdwn | 2 +- hurd/binutils.mdwn | 2 +- hurd/building/cross-compiling.mdwn | 2 +- hurd/building/cross-compiling/discussion.mdwn | 2 +- hurd/building/example.mdwn | 2 +- hurd/concepts.mdwn | 2 +- hurd/critique.mdwn | 2 +- hurd/debugging.mdwn | 2 +- hurd/debugging/gdb.mdwn | 2 +- hurd/debugging/gdb/noninvasive_debugging.mdwn | 2 +- hurd/debugging/glibc.mdwn | 2 +- hurd/debugging/rpctrace.mdwn | 2 +- hurd/debugging/translator.mdwn | 2 +- hurd/debugging/translator/capturing_stdout_and_stderr.mdwn | 2 +- hurd/debugging/translator/gdb.mdwn | 2 +- hurd/documentation.mdwn | 2 +- hurd/faq.mdwn | 2 +- hurd/faq/old-stuff.mdwn | 2 +- hurd/faq/old_faq.txt | 2 +- hurd/faq/release.mdwn | 2 +- hurd/faq/slash_usr_symlink.mdwn | 2 +- hurd/gcc.mdwn | 2 +- hurd/glibc.mdwn | 2 +- hurd/glibc/hurd-specific_api.mdwn | 2 +- hurd/history.mdwn | 2 +- hurd/history/port_to_l4.mdwn | 8 ++++---- hurd/hurd_hacking_guide.mdwn | 2 +- hurd/io_path.mdwn | 2 +- hurd/libchannel.mdwn | 2 +- hurd/libhello_example.mdwn | 2 +- hurd/libnetfs.mdwn | 2 +- hurd/libpager.mdwn | 2 +- hurd/libstore.mdwn | 2 +- hurd/logo.mdwn | 2 +- hurd/neighborhurd.mdwn | 2 +- hurd/networking.mdwn | 2 +- hurd/ng/issues_with_mach.mdwn | 2 +- hurd/ng/limitations_of_the_original_hurd_design.mdwn | 2 +- hurd/ng/position_paper.mdwn | 2 +- hurd/open_issues.mdwn | 2 +- hurd/open_issues/cvs_tasks_file.mdwn | 2 +- hurd/open_issues/cvs_todo_file.mdwn | 2 +- hurd/open_issues/gdb_non-stop_mode.mdwn | 2 +- hurd/open_issues/gdb_pending_execs.mdwn | 2 +- hurd/open_issues/gdb_thread_ids.mdwn | 2 +- hurd/open_issues/libfshelp_in_hurdlibs.mdwn | 2 +- hurd/open_issues/some_todo_list.mdwn | 2 +- hurd/open_issues/wrong_reply_message_id.mdwn | 2 +- hurd/porting.mdwn | 2 +- hurd/porting/guidelines.mdwn | 4 ++-- hurd/porting/system_api_limitations.mdwn | 2 +- hurd/reference_manual.mdwn | 2 +- hurd/running.mdwn | 2 +- hurd/running/debian/DebianAptOffline.mdwn | 2 +- hurd/running/debian/creating_image_tarball.mdwn | 2 +- hurd/running/debian/faq.mdwn | 2 +- hurd/running/debian/faq/2_gib_partition_limit.mdwn | 2 +- hurd/running/debian/faq/512_mib_ram_limit.mdwn | 2 +- hurd/running/debian/faq/apt_umount.mdwn | 2 +- hurd/running/debian/faq/bad_hypermeta_data.mdwn | 2 +- hurd/running/debian/faq/debugging_inside_glibc.mdwn | 2 +- hurd/running/debian/faq/debugging_translators.mdwn | 2 +- hurd/running/debian/faq/dev_random.mdwn | 2 +- hurd/running/debian/faq/df.mdwn | 2 +- hurd/running/debian/faq/free_memory.mdwn | 2 +- hurd/running/debian/faq/hurd_console.mdwn | 2 +- hurd/running/debian/faq/kernel_logs.mdwn | 2 +- hurd/running/debian/faq/other_repositories.mdwn | 2 +- hurd/running/debian/faq/ps_hangs.mdwn | 2 +- hurd/running/debian/faq/reporting_bugs.mdwn | 2 +- hurd/running/debian/faq/sata_disk_drives.mdwn | 2 +- hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn | 2 +- hurd/running/debian/faq/xserver-common.mdwn | 2 +- hurd/running/debian/patch_submission.mdwn | 2 +- hurd/running/debian/porting.mdwn | 2 +- hurd/running/debian/porting/adduser.mdwn | 2 +- hurd/running/debian/porting/gcc.mdwn | 2 +- hurd/running/debian/porting/gcc/c++.mdwn | 2 +- hurd/running/debian/porting/gcc/libmudflap.mdwn | 2 +- hurd/running/debian/porting/git-core-2.mdwn | 2 +- hurd/running/debian/porting/git-core.mdwn | 2 +- hurd/running/debian/porting/libdbd-sqlite3-perl.mdwn | 2 +- hurd/running/debian/porting/pth.mdwn | 2 +- hurd/running/debian/porting/runit.mdwn | 2 +- hurd/running/debian/porting/socat.mdwn | 2 +- hurd/running/gnu/create_an_image.mdwn | 2 +- hurd/running/gnu/setup.mdwn | 2 +- hurd/running/gnu/universal_package_manager.mdwn | 2 +- hurd/running/qemu/microsoft_windows.mdwn | 2 +- hurd/running/qemu/networking.mdwn | 2 +- hurd/running/qemu/networking/sharing_files.mdwn | 2 +- hurd/running/vmware.mdwn | 2 +- hurd/running/vmware/discussion.mdwn | 2 +- hurd/settrans.mdwn | 2 +- hurd/status.mdwn | 2 +- hurd/subhurd.mdwn | 2 +- hurd/subhurd/running_a_subhurd.mdwn | 2 +- hurd/toolchain.mdwn | 2 +- hurd/translator.mdwn | 2 +- hurd/translator/auth.mdwn | 2 +- hurd/translator/cvsfs.mdwn | 2 +- hurd/translator/devfs.mdwn | 2 +- hurd/translator/emailfs.mdwn | 2 +- hurd/translator/examples.mdwn | 2 +- hurd/translator/ext2fs.mdwn | 2 +- hurd/translator/fatfs.mdwn | 2 +- hurd/translator/magic.mdwn | 2 +- hurd/translator/mboxfs.mdwn | 2 +- hurd/translator/pfinet.mdwn | 2 +- hurd/translator/pfinet/implementation.mdwn | 2 +- hurd/translator/pfinet/ipv6.mdwn | 2 +- hurd/translator/pflocal.mdwn | 2 +- hurd/translator/procfs.mdwn | 2 +- hurd/translator/procfs/htop.mdwn | 2 +- hurd/translator/procfs/killall.mdwn | 2 +- hurd/translator/procfs/procps.mdwn | 2 +- hurd/translator/procfs/top.mdwn | 2 +- hurd/translator/storeio.mdwn | 2 +- hurd/translator/stowfs.mdwn | 2 +- hurd/translator/tmpfs.mdwn | 2 +- hurd/translator/tmpfs/notes_bing.mdwn | 2 +- hurd/translator/tmpfs/notes_various.mdwn | 2 +- hurd/translator/unionfs.mdwn | 2 +- hurd/translator/wishlist_1.mdwn | 2 +- hurd/translator/writing/example.mdwn | 2 +- hurd/translator/xmlfs.mdwn | 2 +- hurd/virtual_file_system.mdwn | 2 +- hurd/virtualization.mdwn | 2 +- hurd/what_is_the_gnu_hurd.mdwn | 2 +- hurd/what_is_the_gnu_hurd/gramatically_speaking.mdwn | 2 +- hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn | 2 +- ibac.mdwn | 2 +- idl.mdwn | 2 +- index.mdwn | 6 +++--- index/discussion.mdwn | 2 +- ipc.mdwn | 2 +- irc.mdwn | 2 +- isolation.mdwn | 2 +- license.mdwn | 2 +- liedtke.mdwn | 2 +- mailing_lists.mdwn | 2 +- mailing_lists/bug-hurd.mdwn | 2 +- mailing_lists/debian-hurd.mdwn | 2 +- mailing_lists/gnu-system-discuss.mdwn | 2 +- mailing_lists/help-hurd.mdwn | 2 +- mailing_lists/hurd-devel-readers.mdwn | 2 +- mailing_lists/hurd-devel.mdwn | 2 +- mailing_lists/l4-hurd.mdwn | 2 +- mailing_lists/unmoderated.mdwn | 2 +- mailing_lists/web-hurd.mdwn | 2 +- mechanism.mdwn | 2 +- microkernel.mdwn | 2 +- microkernel/faq.mdwn | 2 +- microkernel/faq/multiserver_microkernel.mdwn | 2 +- microkernel/for_beginners.mdwn | 2 +- microkernel/mach/documentation.mdwn | 2 +- microkernel/mach/external_pager_mechanism.mdwn | 2 +- microkernel/mach/gnumach.mdwn | 2 +- microkernel/mach/gnumach/boot_trace.mdwn | 2 +- microkernel/mach/gnumach/building/example.mdwn | 2 +- microkernel/mach/gnumach/debugging.mdwn | 2 +- microkernel/mach/gnumach/hardware_compatibility_list.mdwn | 2 +- microkernel/mach/gnumach/open_issues.mdwn | 2 +- .../mach/gnumach/open_issues/resource_management_problems.mdwn | 2 +- microkernel/mach/gnumach/ports.mdwn | 2 +- microkernel/mach/gnumach/ports/xen.mdwn | 2 +- microkernel/mach/gnumach/ports/xen/internals.mdwn | 2 +- microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn | 2 +- microkernel/mach/gnumach/projects.mdwn | 4 ++-- microkernel/mach/gnumach/projects/clean_up_the_code.mdwn | 2 +- microkernel/mach/gnumach/projects/gdb_stubs.mdwn | 2 +- microkernel/mach/gnumach/reference_manual.mdwn | 2 +- microkernel/mach/ipc.mdwn | 2 +- microkernel/mach/ipc/sequence_numbering.mdwn | 2 +- microkernel/mach/mig.mdwn | 2 +- microkernel/mach/mig/documentation.mdwn | 2 +- microkernel/mach/mig/documentation/dealloc.mdwn | 2 +- microkernel/mach/mig/documentation/servercopy.mdwn | 2 +- microkernel/mach/mig/gnu_mig.mdwn | 2 +- microkernel/mach/mig/gnu_mig/open_issues.mdwn | 2 +- .../mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn | 2 +- microkernel/mach/port.mdwn | 2 +- microkernel/mach/rpc.mdwn | 2 +- microkernel/viengoos.mdwn | 2 +- microkernel/viengoos/building.mdwn | 2 +- microkernel/viengoos/documentation.mdwn | 2 +- microkernel/viengoos/hardware.mdwn | 2 +- microkernel/viengoos/projects.mdwn | 2 +- microkernel/viengoos/serial_port.mdwn | 2 +- naming_context.mdwn | 2 +- news.mdwn | 2 +- news/2002-01-13.mdwn | 2 +- news/2002-01-19.mdwn | 2 +- news/2002-02-18.mdwn | 2 +- news/2002-03-03.mdwn | 2 +- news/2002-03-08.mdwn | 2 +- news/2002-03-23.mdwn | 2 +- news/2002-05-05.mdwn | 2 +- news/2002-05-18.mdwn | 2 +- news/2002-05-24.mdwn | 2 +- news/2002-05-28.mdwn | 2 +- news/2002-06-22.mdwn | 2 +- news/2002-08-16.mdwn | 2 +- news/2002-10-03.mdwn | 2 +- news/2002-10-03_2.mdwn | 2 +- news/2002-10-19.mdwn | 2 +- news/2002-11-18.mdwn | 2 +- news/2003-01-18.mdwn | 2 +- news/2003-02-14.mdwn | 2 +- news/2003-07-02.mdwn | 2 +- news/2003-07-16.mdwn | 2 +- news/2003-08-21.mdwn | 2 +- news/2005-01-28.mdwn | 2 +- news/2005-09-20.mdwn | 2 +- news/2006-04-27.mdwn | 4 ++-- news/2007-01-07.mdwn | 2 +- news/2007-01-14.mdwn | 2 +- news/2007-03-14.mdwn | 4 ++-- news/2007-10-01.mdwn | 2 +- news/2007-10-12.mdwn | 2 +- news/2008-02-11.mdwn | 2 +- news/2008-03-19.mdwn | 2 +- news/2008-09-11.mdwn | 2 +- news/2008-11-14.mdwn | 2 +- news/2008-12-12.mdwn | 2 +- news/2009-03-28.mdwn | 2 +- open_issues.mdwn | 2 +- open_issues/blkrrpart_ioctl.mdwn | 2 +- persistency.mdwn | 2 +- policy.mdwn | 2 +- principal.mdwn | 2 +- public_hurd_boxen.mdwn | 2 +- qemu.mdwn | 2 +- recent_changes.mdwn | 2 +- rpc.mdwn | 2 +- rules.mdwn | 2 +- rules/savannah_group.mdwn | 4 ++-- rules/source_repositories.mdwn | 2 +- security.mdwn | 2 +- sfi.mdwn | 2 +- sidebar.mdwn | 2 +- tcb.mdwn | 2 +- trackers.mdwn | 2 +- trust.mdwn | 2 +- unix.mdwn | 2 +- unsorted/OskitMach.mdwn | 2 +- unsorted/changelogs.html | 2 +- user/flaviocruz.mdwn | 2 +- user/madhusudancs.mdwn | 2 +- user/scolobb.mdwn | 2 +- user/tschwinge.mdwn | 2 +- user/vincentvikram.mdwn | 2 +- user/zhengda/howto.mdwn | 2 +- virtualization.mdwn | 2 +- 339 files changed, 357 insertions(+), 357 deletions(-) (limited to 'hurd/translator') diff --git a/abac.mdwn b/abac.mdwn index bdf63a32..41de2062 100644 --- a/abac.mdwn +++ b/abac.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ABAC stands for authorization-based access control. In this model, access is not granted based on the diff --git a/asbestos.mdwn b/asbestos.mdwn index fcbd8ecb..3990eec1 100644 --- a/asbestos.mdwn +++ b/asbestos.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Asbestos is an operating system developed at MIT, Stanford and UCLA to explore information flow control policies. The motivation diff --git a/asking_questions.mdwn b/asking_questions.mdwn index bb5c8ffb..2d43cbbe 100644 --- a/asking_questions.mdwn +++ b/asking_questions.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Before asking a question, first make an effort to find the answer to your question. A lot of questions have been asked and answered before, so please diff --git a/binutils.mdwn b/binutils.mdwn index 85791914..3ce28bb1 100644 --- a/binutils.mdwn +++ b/binutils.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [GNU Binutils](http://www.gnu.org/software/binutils/). diff --git a/capability.mdwn b/capability.mdwn index c5ef0d1d..367ea163 100644 --- a/capability.mdwn +++ b/capability.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A capability is a protected reference. It is a reference in that it designates an object; it is protected in that in cannot be diff --git a/colophon.mdwn b/colophon.mdwn index 1afdd51a..a9a2952e 100644 --- a/colophon.mdwn +++ b/colophon.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Just like a book, this topic is designed to help describe the tools used to create this website and what methods were used to give it its look and feel. diff --git a/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn b/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn index d9443b17..0a1a5a00 100644 --- a/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn +++ b/colophon/about_the_twiki_to_ikiwiki_conversion.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Some Quick Notes About the *TWiki to ikiwiki* Conversion diff --git a/community.mdwn b/community.mdwn index 9d8af0ec..17377890 100644 --- a/community.mdwn +++ b/community.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] There is an expanding community of people developing and running test Debian GNU/Hurd machines. diff --git a/community/communication.mdwn b/community/communication.mdwn index 0e56a77e..33941000 100644 --- a/community/communication.mdwn +++ b/community/communication.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The GNU Hurd community comprises of a crowd of people living in different areas of the whole world. For that, having regular working-[[meetings]] -- usually @@ -14,7 +14,7 @@ one of the more productive ways of coordination works -- is not easily possible. The two key resources most often used for communication are the Debian and GNU -[[mailing_lists]], as well as [[IRC]]. +[[mailing lists]], as well as [[IRC]]. These are measures of communication that work (compared to, e.g., a one-to-one telephone call) one-to-many. It is important to not send email only to a @@ -31,10 +31,10 @@ discussing with single developers. And always use *reply to all* instead of *reply* when answering to email. If you're interested in keeping up with current events and taking part in -discussions, you'll want to join the [[mailing_lists/bug-hurd]] mailing list or +discussions, you'll want to join the [[mailing lists/bug-hurd]] mailing list or have a look at its [archives](http://lists.gnu.org/archive/html/bug-hurd/). Even if you're a beginner (we've also been, and some of us even still remember), don't hesitate to make the first move and make active use of these resources. But -- of course -- please try to adhere to the conventions as -described on the [[mailing_lists]] and [[IRC]] pages. +described on the [[mailing lists]] and [[IRC]] pages. diff --git a/community/facebook.mdwn b/community/facebook.mdwn index 31a27fec..27893cf9 100644 --- a/community/facebook.mdwn +++ b/community/facebook.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] There is [a Facebook group for the Hurd](http://www.facebook.com/group.php?gid=5141429597). If you're on Facebook, join it and say hello. diff --git a/community/gsoc.mdwn b/community/gsoc.mdwn index 506516bb..2719d2ab 100644 --- a/community/gsoc.mdwn +++ b/community/gsoc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Google Summer of Code"]] diff --git a/community/gsoc/2008.mdwn b/community/gsoc/2008.mdwn index 31d45d05..d7b467bb 100644 --- a/community/gsoc/2008.mdwn +++ b/community/gsoc/2008.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The GNU Hurd project has successfully participated in the [Google Summer of Code 2008](http://code.google.com/soc/2008/hurd/about.html)! diff --git a/community/gsoc/2008/minutes-2008-04-25.mdwn b/community/gsoc/2008/minutes-2008-04-25.mdwn index 0cb624f2..4c2039d4 100644 --- a/community/gsoc/2008/minutes-2008-04-25.mdwn +++ b/community/gsoc/2008/minutes-2008-04-25.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] - People agreed that some small projects should be done to during the bonding period: ideas that floated around were fixing some of the build failures or diff --git a/community/gsoc/2008/minutes-2008-05-02.mdwn b/community/gsoc/2008/minutes-2008-05-02.mdwn index f960ab06..1dc99abe 100644 --- a/community/gsoc/2008/minutes-2008-05-02.mdwn +++ b/community/gsoc/2008/minutes-2008-05-02.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] - madrazr wanted a wiki to keep track of progress. antrik suggested: http://www.bddebian.com/~wiki/community/gsoc/ and that everyone use diff --git a/community/gsoc/2008/minutes-2008-05-16.mdwn b/community/gsoc/2008/minutes-2008-05-16.mdwn index 0c848e8a..7e7da845 100644 --- a/community/gsoc/2008/minutes-2008-05-16.mdwn +++ b/community/gsoc/2008/minutes-2008-05-16.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * **madrazr** said that web commits for the wiki stall forever (more than half an hour); the reason is unknown. **antrik** said that it is not much of a problem if the problems with git access are solved. diff --git a/community/gsoc/organization_application.mdwn b/community/gsoc/organization_application.mdwn index 946c225b..9fe3a420 100644 --- a/community/gsoc/organization_application.mdwn +++ b/community/gsoc/organization_application.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * Link ID: diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index dede290f..32c8aed8 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -6,13 +6,13 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] We offer a wide range of possible projects to choose from. If you have an idea not listed here, we'd love to hear about it! In either case, we encourage you to contact us (on [[IRC]] and/or our developer -[[mailing_lists]]), so we can discuss your idea, or help you pick a suitable +[[mailing lists]]), so we can discuss your idea, or help you pick a suitable task -- we will gladly explain the tasks in more detail, if the descriptions are not clear enough. diff --git a/community/gsoc/project_ideas/cdparanoia.mdwn b/community/gsoc/project_ideas/cdparanoia.mdwn index f13e19e6..a92329fe 100644 --- a/community/gsoc/project_ideas/cdparanoia.mdwn +++ b/community/gsoc/project_ideas/cdparanoia.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Implement CD Audio Grabbing"]] diff --git a/community/gsoc/project_ideas/debian_installer.mdwn b/community/gsoc/project_ideas/debian_installer.mdwn index 183f6708..ca10a61e 100644 --- a/community/gsoc/project_ideas/debian_installer.mdwn +++ b/community/gsoc/project_ideas/debian_installer.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Port the Debian Installer to the Hurd"]] diff --git a/community/gsoc/project_ideas/disk_io_performance.mdwn b/community/gsoc/project_ideas/disk_io_performance.mdwn index 9f361de9..bb047308 100644 --- a/community/gsoc/project_ideas/disk_io_performance.mdwn +++ b/community/gsoc/project_ideas/disk_io_performance.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Disk I/O Performance Tuning"]] diff --git a/community/gsoc/project_ideas/download_backends.mdwn b/community/gsoc/project_ideas/download_backends.mdwn index 519d1195..749597a6 100644 --- a/community/gsoc/project_ideas/download_backends.mdwn +++ b/community/gsoc/project_ideas/download_backends.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Use Internet Protocol Translators (ftpfs etc.) as Backends for Other Programs"]] diff --git a/community/gsoc/project_ideas/driver_glue_code.mdwn b/community/gsoc/project_ideas/driver_glue_code.mdwn index b3c4c129..04efe202 100644 --- a/community/gsoc/project_ideas/driver_glue_code.mdwn +++ b/community/gsoc/project_ideas/driver_glue_code.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="New Driver Glue Code"]] diff --git a/community/gsoc/project_ideas/dtrace.mdwn b/community/gsoc/project_ideas/dtrace.mdwn index 18fbe956..93c2a5f3 100644 --- a/community/gsoc/project_ideas/dtrace.mdwn +++ b/community/gsoc/project_ideas/dtrace.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="dtrace Support"]] diff --git a/community/gsoc/project_ideas/file_locking.mdwn b/community/gsoc/project_ideas/file_locking.mdwn index 0c057639..b6b393f9 100644 --- a/community/gsoc/project_ideas/file_locking.mdwn +++ b/community/gsoc/project_ideas/file_locking.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Fix File Locking"]] diff --git a/community/gsoc/project_ideas/gnat.mdwn b/community/gsoc/project_ideas/gnat.mdwn index b70ab3c6..b7f2ea62 100644 --- a/community/gsoc/project_ideas/gnat.mdwn +++ b/community/gsoc/project_ideas/gnat.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Porting GNAT"]] diff --git a/community/gsoc/project_ideas/gnumach_cleanup.mdwn b/community/gsoc/project_ideas/gnumach_cleanup.mdwn index ecbbb200..e75c9d3e 100644 --- a/community/gsoc/project_ideas/gnumach_cleanup.mdwn +++ b/community/gsoc/project_ideas/gnumach_cleanup.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="GNU Mach Code Cleanup"]] diff --git a/community/gsoc/project_ideas/hardware_libs.mdwn b/community/gsoc/project_ideas/hardware_libs.mdwn index 4a1fe73c..c30505cb 100644 --- a/community/gsoc/project_ideas/hardware_libs.mdwn +++ b/community/gsoc/project_ideas/hardware_libs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Stub Implementations of Hardware Specific Libraries"]] diff --git a/community/gsoc/project_ideas/language_bindings.mdwn b/community/gsoc/project_ideas/language_bindings.mdwn index c247a8f8..bf75c805 100644 --- a/community/gsoc/project_ideas/language_bindings.mdwn +++ b/community/gsoc/project_ideas/language_bindings.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Bindings to Other Programming Languages"]] diff --git a/community/gsoc/project_ideas/lexical_dot-dot.mdwn b/community/gsoc/project_ideas/lexical_dot-dot.mdwn index e37bc71f..f0b8db7c 100644 --- a/community/gsoc/project_ideas/lexical_dot-dot.mdwn +++ b/community/gsoc/project_ideas/lexical_dot-dot.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Lexical .. Resolution"]] diff --git a/community/gsoc/project_ideas/libcap.mdwn b/community/gsoc/project_ideas/libcap.mdwn index 2745dc7e..10ca508e 100644 --- a/community/gsoc/project_ideas/libcap.mdwn +++ b/community/gsoc/project_ideas/libcap.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Implementing libcap"]] diff --git a/community/gsoc/project_ideas/libdiskfs_locking.mdwn b/community/gsoc/project_ideas/libdiskfs_locking.mdwn index d484b40b..2a08b387 100644 --- a/community/gsoc/project_ideas/libdiskfs_locking.mdwn +++ b/community/gsoc/project_ideas/libdiskfs_locking.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Fix libdiskfs Locking Issues"]] diff --git a/community/gsoc/project_ideas/libgtop.mdwn b/community/gsoc/project_ideas/libgtop.mdwn index c0f966c5..ef1b2bcb 100644 --- a/community/gsoc/project_ideas/libgtop.mdwn +++ b/community/gsoc/project_ideas/libgtop.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Porting libgtop"]] diff --git a/community/gsoc/project_ideas/maxpath.mdwn b/community/gsoc/project_ideas/maxpath.mdwn index 6ece2dbf..5be8917f 100644 --- a/community/gsoc/project_ideas/maxpath.mdwn +++ b/community/gsoc/project_ideas/maxpath.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Fixing Programs Using PATH_MAX et al Unconditionally"]] diff --git a/community/gsoc/project_ideas/mtab.mdwn b/community/gsoc/project_ideas/mtab.mdwn index 39cde2dd..045533e6 100644 --- a/community/gsoc/project_ideas/mtab.mdwn +++ b/community/gsoc/project_ideas/mtab.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="mtab"]] diff --git a/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn b/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn index 79aad7a1..d40d73ac 100644 --- a/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn +++ b/community/gsoc/project_ideas/namespace-based_translator_selection.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Namspace-based Translator Selection"]] diff --git a/community/gsoc/project_ideas/nfs.mdwn b/community/gsoc/project_ideas/nfs.mdwn index eeeda6f0..683287f7 100644 --- a/community/gsoc/project_ideas/nfs.mdwn +++ b/community/gsoc/project_ideas/nfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Improved NFS Implementation"]] diff --git a/community/gsoc/project_ideas/package_manager.mdwn b/community/gsoc/project_ideas/package_manager.mdwn index 4e544ed5..43e53f7c 100644 --- a/community/gsoc/project_ideas/package_manager.mdwn +++ b/community/gsoc/project_ideas/package_manager.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Hurdish Package Manager for the GNU System"]] diff --git a/community/gsoc/project_ideas/perl.mdwn b/community/gsoc/project_ideas/perl.mdwn index 23420159..bfe1968e 100644 --- a/community/gsoc/project_ideas/perl.mdwn +++ b/community/gsoc/project_ideas/perl.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Improving Perl Support"]] diff --git a/community/gsoc/project_ideas/procfs.mdwn b/community/gsoc/project_ideas/procfs.mdwn index 8acfa228..85eec43c 100644 --- a/community/gsoc/project_ideas/procfs.mdwn +++ b/community/gsoc/project_ideas/procfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="procfs"]] diff --git a/community/gsoc/project_ideas/pthreads.mdwn b/community/gsoc/project_ideas/pthreads.mdwn index 0e677268..9c703d36 100644 --- a/community/gsoc/project_ideas/pthreads.mdwn +++ b/community/gsoc/project_ideas/pthreads.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Convert Hurd Libraries and Servers to pthreads"]] diff --git a/community/gsoc/project_ideas/secure_chroot.mdwn b/community/gsoc/project_ideas/secure_chroot.mdwn index e5848a0f..a433e8d1 100644 --- a/community/gsoc/project_ideas/secure_chroot.mdwn +++ b/community/gsoc/project_ideas/secure_chroot.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Secure chroot Implementation"]] diff --git a/community/gsoc/project_ideas/server_overriding.mdwn b/community/gsoc/project_ideas/server_overriding.mdwn index 66171313..42edf287 100644 --- a/community/gsoc/project_ideas/server_overriding.mdwn +++ b/community/gsoc/project_ideas/server_overriding.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Server Overriding Mechanism"]] diff --git a/community/gsoc/project_ideas/sound.mdwn b/community/gsoc/project_ideas/sound.mdwn index 134c5b59..b92f76da 100644 --- a/community/gsoc/project_ideas/sound.mdwn +++ b/community/gsoc/project_ideas/sound.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Sound Support"]] diff --git a/community/gsoc/project_ideas/tcp_ip_stack.mdwn b/community/gsoc/project_ideas/tcp_ip_stack.mdwn index 7ca43152..b56bff51 100644 --- a/community/gsoc/project_ideas/tcp_ip_stack.mdwn +++ b/community/gsoc/project_ideas/tcp_ip_stack.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Hurdish TCP/IP Stack"]] diff --git a/community/gsoc/project_ideas/tmpfs.mdwn b/community/gsoc/project_ideas/tmpfs.mdwn index fcf8d96b..69adef0f 100644 --- a/community/gsoc/project_ideas/tmpfs.mdwn +++ b/community/gsoc/project_ideas/tmpfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Fix tmpfs"]] diff --git a/community/gsoc/project_ideas/unionfs_boot.mdwn b/community/gsoc/project_ideas/unionfs_boot.mdwn index 3692678f..a801290f 100644 --- a/community/gsoc/project_ideas/unionfs_boot.mdwn +++ b/community/gsoc/project_ideas/unionfs_boot.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Allow Using unionfs Early at Boot"]] diff --git a/community/gsoc/project_ideas/unionmount.mdwn b/community/gsoc/project_ideas/unionmount.mdwn index f8fbc283..47a3d85d 100644 --- a/community/gsoc/project_ideas/unionmount.mdwn +++ b/community/gsoc/project_ideas/unionmount.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Union Mounts"]] diff --git a/community/gsoc/project_ideas/virtualization.mdwn b/community/gsoc/project_ideas/virtualization.mdwn index 79c3ab29..c7403f70 100644 --- a/community/gsoc/project_ideas/virtualization.mdwn +++ b/community/gsoc/project_ideas/virtualization.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Virtualization Using Hurd Mechanisms"]] diff --git a/community/gsoc/project_ideas/vm_tuning.mdwn b/community/gsoc/project_ideas/vm_tuning.mdwn index 8d6a15c3..9e802188 100644 --- a/community/gsoc/project_ideas/vm_tuning.mdwn +++ b/community/gsoc/project_ideas/vm_tuning.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="VM Tuning"]] diff --git a/community/gsoc/project_ideas/xattr.mdwn b/community/gsoc/project_ideas/xattr.mdwn index b5466091..55961547 100644 --- a/community/gsoc/project_ideas/xattr.mdwn +++ b/community/gsoc/project_ideas/xattr.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Implement xattr Support"]] diff --git a/community/gsoc/project_ideas/xmlfs.mdwn b/community/gsoc/project_ideas/xmlfs.mdwn index 5fd2cbe4..5e5eaa13 100644 --- a/community/gsoc/project_ideas/xmlfs.mdwn +++ b/community/gsoc/project_ideas/xmlfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="xmlfs"]] diff --git a/community/gsoc/student_application_form.mdwn b/community/gsoc/student_application_form.mdwn index e52387b6..84070cbf 100644 --- a/community/gsoc/student_application_form.mdwn +++ b/community/gsoc/student_application_form.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Before we get to the actual application form, some important remarks about the application process -- please read them carefully. @@ -26,7 +26,7 @@ won't consider it. One of the things we expect is that you contact us directly as soon as possible (preferably even before you send the application form), on our developer -[[mailing_lists]] and [[IRC]] channel. Don't be afraid -- we won't bite :-) IRC +[[mailing lists]] and [[IRC]] channel. Don't be afraid -- we won't bite :-) IRC in particular allows for very informal conversations. (Note though that we are not all in the same time zone, and people generally diff --git a/community/gsoc/xorg_ideas.mdwn b/community/gsoc/xorg_ideas.mdwn index c125ee96..406d370d 100644 --- a/community/gsoc/xorg_ideas.mdwn +++ b/community/gsoc/xorg_ideas.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## libpciaccess Support for GNU Hurd diff --git a/community/meetings.mdwn b/community/meetings.mdwn index 9a07e205..9c88418e 100644 --- a/community/meetings.mdwn +++ b/community/meetings.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Meetings with Hurd developer attendance"]] diff --git a/community/meetings/eurosys_2009.mdwn b/community/meetings/eurosys_2009.mdwn index cc672f5e..24c2b112 100644 --- a/community/meetings/eurosys_2009.mdwn +++ b/community/meetings/eurosys_2009.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="EuroSys 2009"]] diff --git a/community/meetings/fosdem_2005.mdwn b/community/meetings/fosdem_2005.mdwn index e19ff41d..8d7f459d 100644 --- a/community/meetings/fosdem_2005.mdwn +++ b/community/meetings/fosdem_2005.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="FOSDEM 2005"]] diff --git a/community/meetings/fosdem_2006.mdwn b/community/meetings/fosdem_2006.mdwn index 7f3cdcce..a869f262 100644 --- a/community/meetings/fosdem_2006.mdwn +++ b/community/meetings/fosdem_2006.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="FOSDEM 2006"]] diff --git a/community/meetings/fosdem_2007.mdwn b/community/meetings/fosdem_2007.mdwn index e8c37441..ab9fa413 100644 --- a/community/meetings/fosdem_2007.mdwn +++ b/community/meetings/fosdem_2007.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="FOSDEM 2007"]] diff --git a/community/meetings/fosdem_2008.mdwn b/community/meetings/fosdem_2008.mdwn index 5d641995..e9625fdf 100644 --- a/community/meetings/fosdem_2008.mdwn +++ b/community/meetings/fosdem_2008.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="FOSDEM 2008"]] diff --git a/community/meetings/rmll_2006.mdwn b/community/meetings/rmll_2006.mdwn index ba0d8abf..0d82a2b1 100644 --- a/community/meetings/rmll_2006.mdwn +++ b/community/meetings/rmll_2006.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="RMLL 2006"]] diff --git a/community/meetings/self-organised.mdwn b/community/meetings/self-organised.mdwn index 0c6f6c9f..1403c115 100644 --- a/community/meetings/self-organised.mdwn +++ b/community/meetings/self-organised.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Self-organised meeting"]] diff --git a/community/meetings/stesie_2007-10-12.mdwn b/community/meetings/stesie_2007-10-12.mdwn index 737951ca..d59ceded 100644 --- a/community/meetings/stesie_2007-10-12.mdwn +++ b/community/meetings/stesie_2007-10-12.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] On the weekend 2007-10-12 to 14 [[Stefan_Siegl|stesie]] invited Hurd people. Colin Leitner and [[Thomas_Schwinge|tschwinge]] came, as well as novice diff --git a/community/weblogs.mdwn b/community/weblogs.mdwn index b3c38d00..50791549 100644 --- a/community/weblogs.mdwn +++ b/community/weblogs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Weblogs from Hurd programmers and enthusiasts. diff --git a/community/weblogs/ArneBab.mdwn b/community/weblogs/ArneBab.mdwn index 350d97b0..4ef8a329 100644 --- a/community/weblogs/ArneBab.mdwn +++ b/community/weblogs/ArneBab.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] I'm just a Hurd dabbler who likes the ideas behind the Hurd: diff --git a/community/weblogs/ArneBab/xkb-woes-trying-to-get-a-german-keyboard-layout.mdwn b/community/weblogs/ArneBab/xkb-woes-trying-to-get-a-german-keyboard-layout.mdwn index 89dfb22e..693168a4 100644 --- a/community/weblogs/ArneBab/xkb-woes-trying-to-get-a-german-keyboard-layout.mdwn +++ b/community/weblogs/ArneBab/xkb-woes-trying-to-get-a-german-keyboard-layout.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Yesterday I spent a few hours trying to get my german keyboard to let me use my umlauts (and to let me type without having to hunt down the right keys), but without much luck. diff --git a/config_edittemplate.mdwn b/config_edittemplate.mdwn index d8b17602..b3ff1431 100644 --- a/config_edittemplate.mdwn +++ b/config_edittemplate.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This page exists purely for configuring the [[iki plugins/edittemplate]] plugin. diff --git a/config_edittemplate/regular_page.mdwn b/config_edittemplate/regular_page.mdwn index a43067b3..dcce6438 100644 --- a/config_edittemplate/regular_page.mdwn +++ b/config_edittemplate/regular_page.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] HERE STARTS YOUR NEW CONTENT -- remove everything from here on, including this line. diff --git a/confused_deputy.mdwn b/confused_deputy.mdwn index d7767d17..92be6415 100644 --- a/confused_deputy.mdwn +++ b/confused_deputy.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [The confused deputy](http://www.cis.upenn.edu/~KeyKOS/ConfusedDeputy.html) problem was articulated by Norm Hardy. It is a possible consequence diff --git a/contact_us.mdwn b/contact_us.mdwn index 4c5f9c5d..2f483780 100644 --- a/contact_us.mdwn +++ b/contact_us.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Community]] -- the community around GNU Hurd. @@ -23,4 +23,4 @@ is included in the section entitled If you have a concern you want to send to the Hurd maintainers without writing to a public mailing list, then please send email to . Please don't send general support requests or - questions there, but instead use the [[mailing_lists]]. + questions there, but instead use the [[mailing lists]]. diff --git a/contributing.mdwn b/contributing.mdwn index 8c02a0fe..9e2396cf 100644 --- a/contributing.mdwn +++ b/contributing.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] So, you are interested in contributing to the GNU Hurd project? @@ -105,5 +105,5 @@ system nevertheless is a prerequisite. At least have a deep look at the documentation pointers given in the previous section. Also read through the [[HurdNG|hurd/ng]] section. -Please send email to the [[mailing_lists/l4-hurd]] mailing list for discussing +Please send email to the [[mailing lists/l4-hurd]] mailing list for discussing this post-Mach system design. diff --git a/contributing/questionnaire.mdwn b/contributing/questionnaire.mdwn index 229e5c5e..bc548b64 100644 --- a/contributing/questionnaire.mdwn +++ b/contributing/questionnaire.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] People often come to us and state that they'd like to help with the GNU/Hurd. This is very good and very much encouraged: we're always looking for volunteers @@ -42,4 +42,4 @@ items and spend some time thinking about those. Every new contributor is very much encouraged to take some notes about these -items and post them to *[[mailing_lists/bug-hurd]]*. +items and post them to *[[mailing lists/bug-hurd]]*. diff --git a/contributing/web_pages.mdwn b/contributing/web_pages.mdwn index 9d5f0705..9a9cc54c 100644 --- a/contributing/web_pages.mdwn +++ b/contributing/web_pages.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] (!) Some general hints first; they may sound very familiar from other software projects: diff --git a/designation.mdwn b/designation.mdwn index e6074322..771d8e66 100644 --- a/designation.mdwn +++ b/designation.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] To designate is to name. diff --git a/destructive_interference.mdwn b/destructive_interference.mdwn index f6a2596b..1f468034 100644 --- a/destructive_interference.mdwn +++ b/destructive_interference.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Interference can be destructive or non-destructive. When a [[principal]] invokes an object (thereby requesting a service) and the implementation diff --git a/documentation.mdwn b/documentation.mdwn index 2c13792c..8559eff1 100644 --- a/documentation.mdwn +++ b/documentation.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Documentation for... diff --git a/donate.mdwn b/donate.mdwn index f936007c..22b218c1 100644 --- a/donate.mdwn +++ b/donate.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] If you feel like donating goods or money for the work the developers are doing, then we're happy to confirm that this is indeed possible. Of course we'd diff --git a/emulation.mdwn b/emulation.mdwn index 93ce5e37..9e6a5e55 100644 --- a/emulation.mdwn +++ b/emulation.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # External diff --git a/extensibility.mdwn b/extensibility.mdwn index 7fddd8b3..01b1f3b1 100644 --- a/extensibility.mdwn +++ b/extensibility.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] An extensible system is one that enables extensibility. Enabling extensibility means providing non-privileged mechanisms to extend existing objects and to diff --git a/gcc.mdwn b/gcc.mdwn index 32892968..c9dae96e 100644 --- a/gcc.mdwn +++ b/gcc.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [GNU Compiler Collection](http://gcc.gnu.org/). diff --git a/gdb.mdwn b/gdb.mdwn index 94f156b3..5409a05d 100644 --- a/gdb.mdwn +++ b/gdb.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [GNU debugger *GDB*](http://www.gnu.org/software/gdb/). diff --git a/gdb/backtrace.mdwn b/gdb/backtrace.mdwn index 07a66178..7411ad05 100644 --- a/gdb/backtrace.mdwn +++ b/gdb/backtrace.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] When someone asks you to supply a backtrace (from a [[segmentation_fault]], for example), here is roughly what you have to do. diff --git a/getting_help.mdwn b/getting_help.mdwn index 918877fe..92efabbe 100644 --- a/getting_help.mdwn +++ b/getting_help.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Essential Documentation diff --git a/glibc.mdwn b/glibc.mdwn index f3b9460b..c7e5eeb7 100644 --- a/glibc.mdwn +++ b/glibc.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [GNU C Library](http://www.gnu.org/software/libc/). diff --git a/hurd.mdwn b/hurd.mdwn index 91c64495..4b434a65 100644 --- a/hurd.mdwn +++ b/hurd.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The GNU Hurd is under active development. Because of that, there is no *stable* version. We distribute the Hurd sources only through CVS at present. diff --git a/hurd/advantages.mdwn b/hurd/advantages.mdwn index b3742530..a181a942 100644 --- a/hurd/advantages.mdwn +++ b/hurd/advantages.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Hurd is not the most advanced kernel known to the planet (yet), but it does have a number of enticing features: diff --git a/hurd/authentication.mdwn b/hurd/authentication.mdwn index 0780e54d..2d6084bf 100644 --- a/hurd/authentication.mdwn +++ b/hurd/authentication.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] UIDs on the Hurd are separate from processes. A process has [[capabilities|capability]] designating so-called UID vectors that diff --git a/hurd/binutils.mdwn b/hurd/binutils.mdwn index a46eef6b..76b0ae60 100644 --- a/hurd/binutils.mdwn +++ b/hurd/binutils.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[General_information|/binutils]] about the binutils. diff --git a/hurd/building/cross-compiling.mdwn b/hurd/building/cross-compiling.mdwn index c2861c3b..51b3abfc 100644 --- a/hurd/building/cross-compiling.mdwn +++ b/hurd/building/cross-compiling.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # `cross-gnu` diff --git a/hurd/building/cross-compiling/discussion.mdwn b/hurd/building/cross-compiling/discussion.mdwn index 2c326d21..dbe317ad 100644 --- a/hurd/building/cross-compiling/discussion.mdwn +++ b/hurd/building/cross-compiling/discussion.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] What happens if the external link goes down? Is there any way to store files within the wiki itself? --[[vincentvikram]] diff --git a/hurd/building/example.mdwn b/hurd/building/example.mdwn index 57ddb313..bf31bf7e 100644 --- a/hurd/building/example.mdwn +++ b/hurd/building/example.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] I checked out the source code on my Ubuntu GNU/Linux system connected to the Internet using: diff --git a/hurd/concepts.mdwn b/hurd/concepts.mdwn index 10739b80..e8183d79 100644 --- a/hurd/concepts.mdwn +++ b/hurd/concepts.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Translator]] * [[Virtual_File_System]] diff --git a/hurd/critique.mdwn b/hurd/critique.mdwn index f4bff270..c432cc17 100644 --- a/hurd/critique.mdwn +++ b/hurd/critique.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="A Critique of the GNU Hurd Multi-server Operating System"]] diff --git a/hurd/debugging.mdwn b/hurd/debugging.mdwn index f71ff69a..36ab769a 100644 --- a/hurd/debugging.mdwn +++ b/hurd/debugging.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Strategies diff --git a/hurd/debugging/gdb.mdwn b/hurd/debugging/gdb.mdwn index f6fb9af5..1fede74f 100644 --- a/hurd/debugging/gdb.mdwn +++ b/hurd/debugging/gdb.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [[GNU_debugger_*GDB*|/gdb]] works on GNU/Hurd systems as it does on other system, but has some additional [hurd-specific diff --git a/hurd/debugging/gdb/noninvasive_debugging.mdwn b/hurd/debugging/gdb/noninvasive_debugging.mdwn index bd732ca1..fa7a3c5b 100644 --- a/hurd/debugging/gdb/noninvasive_debugging.mdwn +++ b/hurd/debugging/gdb/noninvasive_debugging.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Sometimes using [[GDB]] on a [[system_server|translator]] can result in a [[deadlock]]. You can however still use GDB by using the [`set diff --git a/hurd/debugging/glibc.mdwn b/hurd/debugging/glibc.mdwn index 064b7ab8..905dd0da 100644 --- a/hurd/debugging/glibc.mdwn +++ b/hurd/debugging/glibc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Here are some hints about how to approach testing after nontrivial changes to glibc have been done. diff --git a/hurd/debugging/rpctrace.mdwn b/hurd/debugging/rpctrace.mdwn index 664e8601..63b72ee0 100644 --- a/hurd/debugging/rpctrace.mdwn +++ b/hurd/debugging/rpctrace.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] *rpctrace* is -- roughly -- an equivavlent to Linux's *strace* or Solaris' or BSD's *truss*. It is used to trace [[remote_procedure_call|rpc]]s a process is diff --git a/hurd/debugging/translator.mdwn b/hurd/debugging/translator.mdwn index b3b9e95a..d439e17b 100644 --- a/hurd/debugging/translator.mdwn +++ b/hurd/debugging/translator.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!inline pages="hurd/debugging/translator/* and !*/discussion" diff --git a/hurd/debugging/translator/capturing_stdout_and_stderr.mdwn b/hurd/debugging/translator/capturing_stdout_and_stderr.mdwn index 14c46d29..646738b1 100644 --- a/hurd/debugging/translator/capturing_stdout_and_stderr.mdwn +++ b/hurd/debugging/translator/capturing_stdout_and_stderr.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Sometimes it may already be helpful to capture a translator's `stdout` and `stderr`, for example like this: diff --git a/hurd/debugging/translator/gdb.mdwn b/hurd/debugging/translator/gdb.mdwn index ad9d87b0..82a50736 100644 --- a/hurd/debugging/translator/gdb.mdwn +++ b/hurd/debugging/translator/gdb.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Say you want to try running file system server ([[`ext2fs`|translator/ext2fs]], [[`jfs`|translator/jfs]], ...) against a modified version of diff --git a/hurd/documentation.mdwn b/hurd/documentation.mdwn index ce8ae2e7..0d311758 100644 --- a/hurd/documentation.mdwn +++ b/hurd/documentation.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Introductory Material diff --git a/hurd/faq.mdwn b/hurd/faq.mdwn index 7b2023cc..be30e1b4 100644 --- a/hurd/faq.mdwn +++ b/hurd/faq.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="GNU Hurd FAQ"]] diff --git a/hurd/faq/old-stuff.mdwn b/hurd/faq/old-stuff.mdwn index e4132d50..6968a894 100644 --- a/hurd/faq/old-stuff.mdwn +++ b/hurd/faq/old-stuff.mdwn @@ -1,6 +1,6 @@ In addition to the [general FAQ](http://www.gnu.org/software/hurd/docs.html#TOCfaq) there are the following typical newbie questions. (There is an [updated version](http://tuxou.ouvaton.org/hurd/) which is not official yet.) -If you still have problems, do not hesitate to make use of the [[mailing_lists]] or the [[IRC]]. +If you still have problems, do not hesitate to make use of the [[mailing lists]] or the [[IRC]]. * **_You say GNU, don't you mean GNU/Hurd?_** * Yes and no. GNU refers to the system as a whole, while GNU/Hurd is more specific, saying that it is the GNU system running on the Hurd -- to differentiate it from the GNU system running on Linux, GNU/Linux. Also see [[GNU/GnuNames]] diff --git a/hurd/faq/old_faq.txt b/hurd/faq/old_faq.txt index 4c7bb8e3..617d7661 100644 --- a/hurd/faq/old_faq.txt +++ b/hurd/faq/old_faq.txt @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Frequently Asked Questions about the GNU Hurd diff --git a/hurd/faq/release.mdwn b/hurd/faq/release.mdwn index a1a4c10a..d80c6825 100644 --- a/hurd/faq/release.mdwn +++ b/hurd/faq/release.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="When will the Hurd be released?"]] diff --git a/hurd/faq/slash_usr_symlink.mdwn b/hurd/faq/slash_usr_symlink.mdwn index f769b0b9..5c47f4e1 100644 --- a/hurd/faq/slash_usr_symlink.mdwn +++ b/hurd/faq/slash_usr_symlink.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Why is `/usr' a symbolic link to `.'?"]] diff --git a/hurd/gcc.mdwn b/hurd/gcc.mdwn index 2aba090f..53b5e071 100644 --- a/hurd/gcc.mdwn +++ b/hurd/gcc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[General_information|/gcc]] about the GCC. diff --git a/hurd/glibc.mdwn b/hurd/glibc.mdwn index 4a9fd0af..e975a239 100644 --- a/hurd/glibc.mdwn +++ b/hurd/glibc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[General_information|/glibc]] about the glibc. diff --git a/hurd/glibc/hurd-specific_api.mdwn b/hurd/glibc/hurd-specific_api.mdwn index 740eb260..aeb63d91 100644 --- a/hurd/glibc/hurd-specific_api.mdwn +++ b/hurd/glibc/hurd-specific_api.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Hurd-specific glibc API"]] diff --git a/hurd/history.mdwn b/hurd/history.mdwn index fbdb1bf5..18a1506f 100644 --- a/hurd/history.mdwn +++ b/hurd/history.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Richard Stallman (RMS) started GNU in 1983, as a project to create a complete free operating system. In the text of the GNU Manifesto, he diff --git a/hurd/history/port_to_l4.mdwn b/hurd/history/port_to_l4.mdwn index e7524503..fdaeeffb 100644 --- a/hurd/history/port_to_l4.mdwn +++ b/hurd/history/port_to_l4.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Porting the Hurd to L4: Hurd/L4"]] @@ -16,7 +16,7 @@ There was an effort to port the Hurd from [[microkernel/Mach]] to the The idea of using L4 as a [[microkernel]] for a [[Hurd_system|hurd]] was initially voiced in the [[Hurd_community|community]] by Okuji Yoshinori, who, -for discussing this purpose, created the [[mailing_lists/l4-hurd]] mailing list +for discussing this purpose, created the [[mailing lists/l4-hurd]] mailing list in November 2000. The project itself then was mostly lead by Marcus Brinkmann and Neal Walfield. @@ -33,7 +33,7 @@ By now, the development of Hurd/L4 has stopped. However, Neal Walfield moved on to working on a newly designed kernel called [[microkernel/viengoos]]. Over the years, a lot of discussion have been held on the -[[mailing_lists/l4-hurd]] mailing list, which today is still the right place +[[mailing lists/l4-hurd]] mailing list, which today is still the right place for [[next-generation_Hurd|ng]] discussions. Development of Hurd/L4 was done in the `hurd-l4` module of the Hurd CVS @@ -94,7 +94,7 @@ explains: > a number of security issues. A lange number of discussion threads can be found in the archives of the -[[mailing_lists/l4-hurd]] mailing list. +[[mailing lists/l4-hurd]] mailing list. > Hurd-NG, as we originally called it, was an attempt to articulate the system > that we had come to envision in terms of interfaces and description of the diff --git a/hurd/hurd_hacking_guide.mdwn b/hurd/hurd_hacking_guide.mdwn index b5dae04e..ea9aa259 100644 --- a/hurd/hurd_hacking_guide.mdwn +++ b/hurd/hurd_hacking_guide.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Originally written by Wolfgang Jährling, the *Hurd Hacking Guide* contains an introduction to GNU Hurd and GNU Mach programming, an overview of some of the diff --git a/hurd/io_path.mdwn b/hurd/io_path.mdwn index c4e104df..78e13efd 100644 --- a/hurd/io_path.mdwn +++ b/hurd/io_path.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # read diff --git a/hurd/libchannel.mdwn b/hurd/libchannel.mdwn index ab126cf6..91c7810f 100644 --- a/hurd/libchannel.mdwn +++ b/hurd/libchannel.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # libchannel diff --git a/hurd/libhello_example.mdwn b/hurd/libhello_example.mdwn index 6c10ec08..2c5490e2 100644 --- a/hurd/libhello_example.mdwn +++ b/hurd/libhello_example.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Howto write a Hurd library diff --git a/hurd/libnetfs.mdwn b/hurd/libnetfs.mdwn index 589b4abd..fef6a8ef 100644 --- a/hurd/libnetfs.mdwn +++ b/hurd/libnetfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] #libnetfs diff --git a/hurd/libpager.mdwn b/hurd/libpager.mdwn index d3803d89..c9a1c0b6 100644 --- a/hurd/libpager.mdwn +++ b/hurd/libpager.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Mach's [[microkernel/mach/external_pager_mechanism]]. diff --git a/hurd/libstore.mdwn b/hurd/libstore.mdwn index 577f9d0c..3d54a839 100644 --- a/hurd/libstore.mdwn +++ b/hurd/libstore.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `libstore` is more than just a thin layer between [[GNU_Mach|microkernel/mach/gnumach]] devices (`hd0` for example) and the diff --git a/hurd/logo.mdwn b/hurd/logo.mdwn index 7b66ed9b..aae80561 100644 --- a/hurd/logo.mdwn +++ b/hurd/logo.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The famous *Hurd Boxes* logo is available at . diff --git a/hurd/neighborhurd.mdwn b/hurd/neighborhurd.mdwn index a055ab70..5a66f992 100644 --- a/hurd/neighborhurd.mdwn +++ b/hurd/neighborhurd.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] It is possible to run multiple instances of the Hurd in parallel, on a single instance of Mach. Other than diff --git a/hurd/networking.mdwn b/hurd/networking.mdwn index 9e1fbfa9..ff16eb25 100644 --- a/hurd/networking.mdwn +++ b/hurd/networking.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] For each supported `PF_*` protocol family, there is a file `/servers/socket/N` where `N` is the numberic value fo the `PF_*` symbol. Right now diff --git a/hurd/ng/issues_with_mach.mdwn b/hurd/ng/issues_with_mach.mdwn index 59c49002..9785b08a 100644 --- a/hurd/ng/issues_with_mach.mdwn +++ b/hurd/ng/issues_with_mach.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[microkernel/mach/gnumach/open_issues/Resource_management_problems]] * [[Critique]] diff --git a/hurd/ng/limitations_of_the_original_hurd_design.mdwn b/hurd/ng/limitations_of_the_original_hurd_design.mdwn index a7133ce9..96d8912b 100644 --- a/hurd/ng/limitations_of_the_original_hurd_design.mdwn +++ b/hurd/ng/limitations_of_the_original_hurd_design.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Critique]] diff --git a/hurd/ng/position_paper.mdwn b/hurd/ng/position_paper.mdwn index 16c99115..abc781da 100644 --- a/hurd/ng/position_paper.mdwn +++ b/hurd/ng/position_paper.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Neal Walfield and Marcus Brinkmann wrote a paper titled [*Improving Usability via Access Decomposition and Policy diff --git a/hurd/open_issues.mdwn b/hurd/open_issues.mdwn index cc70fa83..3513c378 100644 --- a/hurd/open_issues.mdwn +++ b/hurd/open_issues.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Open Issues"]] diff --git a/hurd/open_issues/cvs_tasks_file.mdwn b/hurd/open_issues/cvs_tasks_file.mdwn index d85b87fc..a2fbf619 100644 --- a/hurd/open_issues/cvs_tasks_file.mdwn +++ b/hurd/open_issues/cvs_tasks_file.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The canonical [tasks file](http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/hurd/hurd/tasks?rev=HEAD&content-type=text/plain) diff --git a/hurd/open_issues/cvs_todo_file.mdwn b/hurd/open_issues/cvs_todo_file.mdwn index 453f846b..c5e48979 100644 --- a/hurd/open_issues/cvs_todo_file.mdwn +++ b/hurd/open_issues/cvs_todo_file.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The canonical [TODO file](http://savannah.gnu.org/cgi-bin/viewcvs/~checkout~/hurd/hurd/TODO?rev=HEAD&content-type=text/plain) diff --git a/hurd/open_issues/gdb_non-stop_mode.mdwn b/hurd/open_issues/gdb_non-stop_mode.mdwn index 424afe17..199cb7ae 100644 --- a/hurd/open_issues/gdb_non-stop_mode.mdwn +++ b/hurd/open_issues/gdb_non-stop_mode.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU GDB's `gnu-nat.c` doesn't support *non-stop* mode. diff --git a/hurd/open_issues/gdb_pending_execs.mdwn b/hurd/open_issues/gdb_pending_execs.mdwn index b31f183d..cf5cc705 100644 --- a/hurd/open_issues/gdb_pending_execs.mdwn +++ b/hurd/open_issues/gdb_pending_execs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] : diff --git a/hurd/open_issues/gdb_thread_ids.mdwn b/hurd/open_issues/gdb_thread_ids.mdwn index 006399d4..8752e9d8 100644 --- a/hurd/open_issues/gdb_thread_ids.mdwn +++ b/hurd/open_issues/gdb_thread_ids.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU GDB's Pedro Alves: diff --git a/hurd/open_issues/libfshelp_in_hurdlibs.mdwn b/hurd/open_issues/libfshelp_in_hurdlibs.mdwn index 78b641ca..d5b455a0 100644 --- a/hurd/open_issues/libfshelp_in_hurdlibs.mdwn +++ b/hurd/open_issues/libfshelp_in_hurdlibs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[libtrivfs]] seems to use [[libfshelp]], but doesn't have it listed in `HURDLIBS`. Should change that? Same for [[libnetfs]] and [[libdiskfs]]? diff --git a/hurd/open_issues/some_todo_list.mdwn b/hurd/open_issues/some_todo_list.mdwn index 77823128..88cbbe75 100644 --- a/hurd/open_issues/some_todo_list.mdwn +++ b/hurd/open_issues/some_todo_list.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This todo is primarily targetted at the Hurd proper and applications that rely on the Hurd interfaces. diff --git a/hurd/open_issues/wrong_reply_message_id.mdwn b/hurd/open_issues/wrong_reply_message_id.mdwn index 18161a97..552a5681 100644 --- a/hurd/open_issues/wrong_reply_message_id.mdwn +++ b/hurd/open_issues/wrong_reply_message_id.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # settrans -P -a /servers/socket/2 /hurd/pfinet -i eth0 -a 192.168.10.61 -g 192.168.10.1 -m 255.255.255.0 Translator pid: 2289 diff --git a/hurd/porting.mdwn b/hurd/porting.mdwn index fa0c55c8..c94572a4 100644 --- a/hurd/porting.mdwn +++ b/hurd/porting.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Guidelines]] * [[System_API_Limitations]] diff --git a/hurd/porting/guidelines.mdwn b/hurd/porting/guidelines.mdwn index 59abb091..7dea771d 100644 --- a/hurd/porting/guidelines.mdwn +++ b/hurd/porting/guidelines.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This is a compilation of common porting problems and their solutions. @@ -19,7 +19,7 @@ information. There is a separate page about [[System_API_Limitations]]. -You may ask on the [[mailing_lists/bug-hurd]] mailing list for details or +You may ask on the [[mailing lists/bug-hurd]] mailing list for details or questions about fixing bugs. diff --git a/hurd/porting/system_api_limitations.mdwn b/hurd/porting/system_api_limitations.mdwn index 6e70f1f8..06a6b382 100644 --- a/hurd/porting/system_api_limitations.mdwn +++ b/hurd/porting/system_api_limitations.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Sometimes building or running a program will fail due to bugs in the system API implementation (in [[glibc]] and the [[Hurd]]). Make sure you check this list diff --git a/hurd/reference_manual.mdwn b/hurd/reference_manual.mdwn index 4229e7fd..9337b784 100644 --- a/hurd/reference_manual.mdwn +++ b/hurd/reference_manual.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] *The GNU Hurd Reference Manual* documents the architecture, the usage and the programming of the GNU Hurd. At the moment, the manual is quite incomplete. diff --git a/hurd/running.mdwn b/hurd/running.mdwn index 9293bd9c..95dc024a 100644 --- a/hurd/running.mdwn +++ b/hurd/running.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Distrib]] - Distributions based on the Hurd * [[microkernel/mach/gnumach/ports/Xen]] - In Xen diff --git a/hurd/running/debian/DebianAptOffline.mdwn b/hurd/running/debian/DebianAptOffline.mdwn index 249bfd86..9596040d 100644 --- a/hurd/running/debian/DebianAptOffline.mdwn +++ b/hurd/running/debian/DebianAptOffline.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # How to Installing Packages without a Network Connection from your Hurd Installation diff --git a/hurd/running/debian/creating_image_tarball.mdwn b/hurd/running/debian/creating_image_tarball.mdwn index d7ad3ee6..ac91dab4 100644 --- a/hurd/running/debian/creating_image_tarball.mdwn +++ b/hurd/running/debian/creating_image_tarball.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The following [[anonftpsync-ports]] is used to create a local Debian GNU/Hurd repo. You will need atleast 12G of disk space. Change the diff --git a/hurd/running/debian/faq.mdwn b/hurd/running/debian/faq.mdwn index 4e61e353..4966456a 100644 --- a/hurd/running/debian/faq.mdwn +++ b/hurd/running/debian/faq.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Debian GNU/Hurd FAQ"]] diff --git a/hurd/running/debian/faq/2_gib_partition_limit.mdwn b/hurd/running/debian/faq/2_gib_partition_limit.mdwn index e803fefb..195191cb 100644 --- a/hurd/running/debian/faq/2_gib_partition_limit.mdwn +++ b/hurd/running/debian/faq/2_gib_partition_limit.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="2 GiB Partition Limit"]] diff --git a/hurd/running/debian/faq/512_mib_ram_limit.mdwn b/hurd/running/debian/faq/512_mib_ram_limit.mdwn index 1c023941..90c16a69 100644 --- a/hurd/running/debian/faq/512_mib_ram_limit.mdwn +++ b/hurd/running/debian/faq/512_mib_ram_limit.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="512 MiB RAM Limit"]] diff --git a/hurd/running/debian/faq/apt_umount.mdwn b/hurd/running/debian/faq/apt_umount.mdwn index b48452b9..f2889f3e 100644 --- a/hurd/running/debian/faq/apt_umount.mdwn +++ b/hurd/running/debian/faq/apt_umount.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="apt: unmount cdroms"]] diff --git a/hurd/running/debian/faq/bad_hypermeta_data.mdwn b/hurd/running/debian/faq/bad_hypermeta_data.mdwn index 4d79bad5..bc960e30 100644 --- a/hurd/running/debian/faq/bad_hypermeta_data.mdwn +++ b/hurd/running/debian/faq/bad_hypermeta_data.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] If you get the error `bad hypermeta data` when trying to mount an ext3 partition from GNU/Linux, that is usually because the file system has not been diff --git a/hurd/running/debian/faq/debugging_inside_glibc.mdwn b/hurd/running/debian/faq/debugging_inside_glibc.mdwn index 30348844..91b71d64 100644 --- a/hurd/running/debian/faq/debugging_inside_glibc.mdwn +++ b/hurd/running/debian/faq/debugging_inside_glibc.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] To get [[debugging]] information for glibc, you need to install the `libc0.3-dbg` package. At the place [[debugging/GDB]] looks for debugging diff --git a/hurd/running/debian/faq/debugging_translators.mdwn b/hurd/running/debian/faq/debugging_translators.mdwn index e72ead91..d3aadec8 100644 --- a/hurd/running/debian/faq/debugging_translators.mdwn +++ b/hurd/running/debian/faq/debugging_translators.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] In order to [[debug|debugging]] translators and being able to step into glibc during it, you need the `hurd-dbg` and `libc0.3-dbg` packages installed. Then diff --git a/hurd/running/debian/faq/dev_random.mdwn b/hurd/running/debian/faq/dev_random.mdwn index d39a815d..3b5fdffe 100644 --- a/hurd/running/debian/faq/dev_random.mdwn +++ b/hurd/running/debian/faq/dev_random.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="/dev/random"]] diff --git a/hurd/running/debian/faq/df.mdwn b/hurd/running/debian/faq/df.mdwn index 5b2256f4..4de232da 100644 --- a/hurd/running/debian/faq/df.mdwn +++ b/hurd/running/debian/faq/df.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] There is no `/etc/mtab`, so just running `df` will yield an error. Pass `df` a path like `df /` or `df ./` to see the disk usage of that particular file diff --git a/hurd/running/debian/faq/free_memory.mdwn b/hurd/running/debian/faq/free_memory.mdwn index 155a48c8..c1c0a83c 100644 --- a/hurd/running/debian/faq/free_memory.mdwn +++ b/hurd/running/debian/faq/free_memory.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Run `vmstat` to see memory and swap usage. diff --git a/hurd/running/debian/faq/hurd_console.mdwn b/hurd/running/debian/faq/hurd_console.mdwn index ba7918b5..c4a619a1 100644 --- a/hurd/running/debian/faq/hurd_console.mdwn +++ b/hurd/running/debian/faq/hurd_console.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Edit `/etc/default/hurd-console` to configure the Hurd console and enable it on bootup. See [[console]] for further information about the Hurd console. diff --git a/hurd/running/debian/faq/kernel_logs.mdwn b/hurd/running/debian/faq/kernel_logs.mdwn index e3a68be2..ff14ce5f 100644 --- a/hurd/running/debian/faq/kernel_logs.mdwn +++ b/hurd/running/debian/faq/kernel_logs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The kernel logs are written to `/dev/klog`. Run `cat /dev/klog > foo` as root and hit `ctrl+c` after a few seconds to catch the logs. You can do this only diff --git a/hurd/running/debian/faq/other_repositories.mdwn b/hurd/running/debian/faq/other_repositories.mdwn index 38407d07..88781d46 100644 --- a/hurd/running/debian/faq/other_repositories.mdwn +++ b/hurd/running/debian/faq/other_repositories.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] If you want to use the `apt-get source` facility, make sure that `/etc/apt/sources.list` contains a line like diff --git a/hurd/running/debian/faq/ps_hangs.mdwn b/hurd/running/debian/faq/ps_hangs.mdwn index 46c970b9..b5e35420 100644 --- a/hurd/running/debian/faq/ps_hangs.mdwn +++ b/hurd/running/debian/faq/ps_hangs.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] If `ps` hangs, try `ps -M` which might still work. diff --git a/hurd/running/debian/faq/reporting_bugs.mdwn b/hurd/running/debian/faq/reporting_bugs.mdwn index 631f170c..40781ab0 100644 --- a/hurd/running/debian/faq/reporting_bugs.mdwn +++ b/hurd/running/debian/faq/reporting_bugs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Please try to reproduce bugs which are not obviously Hurd-specific on Debian GNU/Linux and then file them there. diff --git a/hurd/running/debian/faq/sata_disk_drives.mdwn b/hurd/running/debian/faq/sata_disk_drives.mdwn index 139ddd7f..dad10cb9 100644 --- a/hurd/running/debian/faq/sata_disk_drives.mdwn +++ b/hurd/running/debian/faq/sata_disk_drives.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU Mach does not support SATA disk drives (/dev/sda etc. in GNU/Linux) natively, so using device:sd0s1 will not work, sd* devices are for SCSI drives only. The only way to get those drives to work is to put them into compatibility mode in the BIOS, if such an option exists. GNU Mach will then recognize them as hda etc. diff --git a/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn b/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn index 8305cd79..517d59dc 100644 --- a/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn +++ b/hurd/running/debian/faq/sshd_only_works_for_root_logins.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Privilege seperation does not work with Hurd currently. You need to explicitely set `PrivilegeSeparation` to `no` in `/etc/ssh/sshd_options`, just commenting out diff --git a/hurd/running/debian/faq/xserver-common.mdwn b/hurd/running/debian/faq/xserver-common.mdwn index bb80a815..09fbc902 100644 --- a/hurd/running/debian/faq/xserver-common.mdwn +++ b/hurd/running/debian/faq/xserver-common.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] You need to run `dpkg-reconfigure xserver-common` and select `Anybody` for starting X as there is no way to detect console users currently. diff --git a/hurd/running/debian/patch_submission.mdwn b/hurd/running/debian/patch_submission.mdwn index b2c938f0..66348dd9 100644 --- a/hurd/running/debian/patch_submission.mdwn +++ b/hurd/running/debian/patch_submission.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] If you fixed a Debian package which *FTBFS* (fails to build from source), you should submit the patch so that all users can profit from your work. diff --git a/hurd/running/debian/porting.mdwn b/hurd/running/debian/porting.mdwn index 546f325f..debe206b 100644 --- a/hurd/running/debian/porting.mdwn +++ b/hurd/running/debian/porting.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Debian packages that need porting"]] diff --git a/hurd/running/debian/porting/adduser.mdwn b/hurd/running/debian/porting/adduser.mdwn index b4413526..72ed6dbf 100644 --- a/hurd/running/debian/porting/adduser.mdwn +++ b/hurd/running/debian/porting/adduser.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `adduser` does work as expected, but what are these error messages? diff --git a/hurd/running/debian/porting/gcc.mdwn b/hurd/running/debian/porting/gcc.mdwn index 9f20193f..24fb6ec4 100644 --- a/hurd/running/debian/porting/gcc.mdwn +++ b/hurd/running/debian/porting/gcc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] For GCC trunk: diff --git a/hurd/running/debian/porting/gcc/c++.mdwn b/hurd/running/debian/porting/gcc/c++.mdwn index 41566aa8..c8d67b29 100644 --- a/hurd/running/debian/porting/gcc/c++.mdwn +++ b/hurd/running/debian/porting/gcc/c++.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!tag fixed_in_debian]] diff --git a/hurd/running/debian/porting/gcc/libmudflap.mdwn b/hurd/running/debian/porting/gcc/libmudflap.mdwn index 87d2061f..994b7782 100644 --- a/hurd/running/debian/porting/gcc/libmudflap.mdwn +++ b/hurd/running/debian/porting/gcc/libmudflap.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Single-threaded use appears to work: diff --git a/hurd/running/debian/porting/git-core-2.mdwn b/hurd/running/debian/porting/git-core-2.mdwn index f5929548..837608f5 100644 --- a/hurd/running/debian/porting/git-core-2.mdwn +++ b/hurd/running/debian/porting/git-core-2.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] On the otherwise-idle flubber: diff --git a/hurd/running/debian/porting/git-core.mdwn b/hurd/running/debian/porting/git-core.mdwn index f7dc450b..9e26d273 100644 --- a/hurd/running/debian/porting/git-core.mdwn +++ b/hurd/running/debian/porting/git-core.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Depends on [[libdbd-sqlite3-perl]]. diff --git a/hurd/running/debian/porting/libdbd-sqlite3-perl.mdwn b/hurd/running/debian/porting/libdbd-sqlite3-perl.mdwn index b2d3af69..2e6e7134 100644 --- a/hurd/running/debian/porting/libdbd-sqlite3-perl.mdwn +++ b/hurd/running/debian/porting/libdbd-sqlite3-perl.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Does build, but has test-suite problems: diff --git a/hurd/running/debian/porting/pth.mdwn b/hurd/running/debian/porting/pth.mdwn index 66564c25..8ddabb24 100644 --- a/hurd/running/debian/porting/pth.mdwn +++ b/hurd/running/debian/porting/pth.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] seems pth still doesn't work Doesn't build or doesn't work? diff --git a/hurd/running/debian/porting/runit.mdwn b/hurd/running/debian/porting/runit.mdwn index 0605f48e..865c3b17 100644 --- a/hurd/running/debian/porting/runit.mdwn +++ b/hurd/running/debian/porting/runit.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The `runit` package doesn't work, even its test suite doesn't finish. diff --git a/hurd/running/debian/porting/socat.mdwn b/hurd/running/debian/porting/socat.mdwn index 6d3b572a..280e75e1 100644 --- a/hurd/running/debian/porting/socat.mdwn +++ b/hurd/running/debian/porting/socat.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `socat` needs porting. Some work has already been done in 2007, see or contact diff --git a/hurd/running/gnu/create_an_image.mdwn b/hurd/running/gnu/create_an_image.mdwn index f133ea1d..2cdb8e27 100644 --- a/hurd/running/gnu/create_an_image.mdwn +++ b/hurd/running/gnu/create_an_image.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Creating a bootable qemu image from a root filesystem and bootloader diff --git a/hurd/running/gnu/setup.mdwn b/hurd/running/gnu/setup.mdwn index 180b5320..57a19054 100644 --- a/hurd/running/gnu/setup.mdwn +++ b/hurd/running/gnu/setup.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Setup is very easy (You need a GNU/Linux system to install GNU, we are developing an installer for GNU and if you want to help us join us on [[http://lists.gnu.org/mailman/listinfo/gnu-system-discuss][gnu-system-discuss]]), just follow these steps ... diff --git a/hurd/running/gnu/universal_package_manager.mdwn b/hurd/running/gnu/universal_package_manager.mdwn index 89fe0e52..bb8ff693 100644 --- a/hurd/running/gnu/universal_package_manager.mdwn +++ b/hurd/running/gnu/universal_package_manager.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Mission diff --git a/hurd/running/qemu/microsoft_windows.mdwn b/hurd/running/qemu/microsoft_windows.mdwn index 605d43e8..832b4bef 100644 --- a/hurd/running/qemu/microsoft_windows.mdwn +++ b/hurd/running/qemu/microsoft_windows.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Welcome, This document is for getting you started in a few minutes. diff --git a/hurd/running/qemu/networking.mdwn b/hurd/running/qemu/networking.mdwn index f896aa2e..71daa576 100644 --- a/hurd/running/qemu/networking.mdwn +++ b/hurd/running/qemu/networking.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## User mode network diff --git a/hurd/running/qemu/networking/sharing_files.mdwn b/hurd/running/qemu/networking/sharing_files.mdwn index 77485569..5bdec5f1 100644 --- a/hurd/running/qemu/networking/sharing_files.mdwn +++ b/hurd/running/qemu/networking/sharing_files.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # SCP diff --git a/hurd/running/vmware.mdwn b/hurd/running/vmware.mdwn index d0930bf0..1f99e247 100644 --- a/hurd/running/vmware.mdwn +++ b/hurd/running/vmware.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Installation diff --git a/hurd/running/vmware/discussion.mdwn b/hurd/running/vmware/discussion.mdwn index b61efc84..2db08654 100644 --- a/hurd/running/vmware/discussion.mdwn +++ b/hurd/running/vmware/discussion.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] I find that this is all quite quick to try and that I can run through the ./native-install and reboot cycle twice OK. However, at that point the diff --git a/hurd/settrans.mdwn b/hurd/settrans.mdwn index 008c73c5..5b381090 100644 --- a/hurd/settrans.mdwn +++ b/hurd/settrans.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The `settrans` command is used to attach a [[translator]] (server) to a given [[file_system_node|virtual_file_system]]. diff --git a/hurd/status.mdwn b/hurd/status.mdwn index 84d16d3b..1122b703 100644 --- a/hurd/status.mdwn +++ b/hurd/status.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Hurd, together with the GNU Mach microkernel, the GNU C Library and the other GNU and non-GNU programs in the GNU system, provide a diff --git a/hurd/subhurd.mdwn b/hurd/subhurd.mdwn index 6cb260d9..5b132604 100644 --- a/hurd/subhurd.mdwn +++ b/hurd/subhurd.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A sub-Hurd is like a [[neighbor_Hurd|neighborhurd]], however, makes use of some resources provided by another Hurd. For instance, backing store and the diff --git a/hurd/subhurd/running_a_subhurd.mdwn b/hurd/subhurd/running_a_subhurd.mdwn index 4b98f8a2..f337108e 100644 --- a/hurd/subhurd/running_a_subhurd.mdwn +++ b/hurd/subhurd/running_a_subhurd.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Running a Subhurd"]] diff --git a/hurd/toolchain.mdwn b/hurd/toolchain.mdwn index bc7048be..8b852089 100644 --- a/hurd/toolchain.mdwn +++ b/hurd/toolchain.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[binutils]] * [[GCC]] diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index e1597483..8f2f07b4 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A translator is simply a normal program acting as an object server and participating in the Hurd's diff --git a/hurd/translator/auth.mdwn b/hurd/translator/auth.mdwn index de47016e..d9e70ec2 100644 --- a/hurd/translator/auth.mdwn +++ b/hurd/translator/auth.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[*The_Authentication_Server*|documentation/auth]], the transcript of a talk about the details of the authentication mechanisms in the Hurd by Wolfgang diff --git a/hurd/translator/cvsfs.mdwn b/hurd/translator/cvsfs.mdwn index f4223b93..f5f1a9e0 100644 --- a/hurd/translator/cvsfs.mdwn +++ b/hurd/translator/cvsfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Setting up cvsfs on GNU/Hurd - A step by step process diff --git a/hurd/translator/devfs.mdwn b/hurd/translator/devfs.mdwn index 1f8fcf53..27df23aa 100644 --- a/hurd/translator/devfs.mdwn +++ b/hurd/translator/devfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `devfs` is a translator sitting on `/dev` and providing what is to be provided in there in a dynamic fashion -- as compared to static passive translator diff --git a/hurd/translator/emailfs.mdwn b/hurd/translator/emailfs.mdwn index a54ff634..80e2b150 100644 --- a/hurd/translator/emailfs.mdwn +++ b/hurd/translator/emailfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # How cool it would be if the email becomes similar to snail mail? diff --git a/hurd/translator/examples.mdwn b/hurd/translator/examples.mdwn index 5fccfd37..6319df77 100644 --- a/hurd/translator/examples.mdwn +++ b/hurd/translator/examples.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Setting up translators - HowTo diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn index e226cea2..441fb00f 100644 --- a/hurd/translator/ext2fs.mdwn +++ b/hurd/translator/ext2fs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The `ext2fs` translator from the upstream Hurd code base can only handle file systems with sizes of less than roughly 2 GiB. diff --git a/hurd/translator/fatfs.mdwn b/hurd/translator/fatfs.mdwn index 733778b2..006fac0b 100644 --- a/hurd/translator/fatfs.mdwn +++ b/hurd/translator/fatfs.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The current `fatfs` translator is read-only, and it has a severe bug: [[!GNU_Savannah_bug 25961]]. diff --git a/hurd/translator/magic.mdwn b/hurd/translator/magic.mdwn index 4d4b02b1..06ee798b 100644 --- a/hurd/translator/magic.mdwn +++ b/hurd/translator/magic.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The magic translator provides `/dev/fd`. diff --git a/hurd/translator/mboxfs.mdwn b/hurd/translator/mboxfs.mdwn index e1c27bf0..e357294f 100644 --- a/hurd/translator/mboxfs.mdwn +++ b/hurd/translator/mboxfs.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] diff --git a/hurd/translator/pfinet.mdwn b/hurd/translator/pfinet.mdwn index 9cafcf69..cbe50b48 100644 --- a/hurd/translator/pfinet.mdwn +++ b/hurd/translator/pfinet.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] To configure Internet connectivity, the `pfinet` (*Protocol Family Internet*) [[translator]] must be configured. This is done using the diff --git a/hurd/translator/pfinet/implementation.mdwn b/hurd/translator/pfinet/implementation.mdwn index ce5e6b94..50b5dfc2 100644 --- a/hurd/translator/pfinet/implementation.mdwn +++ b/hurd/translator/pfinet/implementation.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The `pfinet` server is a hacked Linux internet implementation with a glue layer translating between the Hurd [[RPC]]s and the middle layer of the Linux diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index b2601135..996ffd6d 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[Stefan_Siegl|stesie]] has added IPv6 support to the pfinet [[translator]]. This was [Savannah task #5470](http://savannah.gnu.org/task/?5470). diff --git a/hurd/translator/pflocal.mdwn b/hurd/translator/pflocal.mdwn index 84074050..dc2434dc 100644 --- a/hurd/translator/pflocal.mdwn +++ b/hurd/translator/pflocal.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The implementation of the `pflocal` server is in the `pflocal` directory, and uses [[`libpipe`|libpipe]] (shared code with the [[named_pipe|fifo]] diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index 2284d8f9..404a6764 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] diff --git a/hurd/translator/procfs/htop.mdwn b/hurd/translator/procfs/htop.mdwn index bed9045c..ce38b92c 100644 --- a/hurd/translator/procfs/htop.mdwn +++ b/hurd/translator/procfs/htop.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] open("/proc/stat", O_RDONLY) = 3 open("/proc/meminfo", O_RDONLY) = 3 diff --git a/hurd/translator/procfs/killall.mdwn b/hurd/translator/procfs/killall.mdwn index 1f1a3dcc..3d31b51a 100644 --- a/hurd/translator/procfs/killall.mdwn +++ b/hurd/translator/procfs/killall.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] open("/proc/stat", O_RDONLY) = 3 open("/proc/self/stat", O_RDONLY) = 3 diff --git a/hurd/translator/procfs/procps.mdwn b/hurd/translator/procfs/procps.mdwn index 1f1a3dcc..3d31b51a 100644 --- a/hurd/translator/procfs/procps.mdwn +++ b/hurd/translator/procfs/procps.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] open("/proc/stat", O_RDONLY) = 3 open("/proc/self/stat", O_RDONLY) = 3 diff --git a/hurd/translator/procfs/top.mdwn b/hurd/translator/procfs/top.mdwn index a0d6a513..2cba78ad 100644 --- a/hurd/translator/procfs/top.mdwn +++ b/hurd/translator/procfs/top.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] open("/proc/stat", O_RDONLY) = 3 open("/proc/sys/kernel/pid_max", O_RDONLY) = 3 diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn index d3ad7c4c..e4482e65 100644 --- a/hurd/translator/storeio.mdwn +++ b/hurd/translator/storeio.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `storeio` is a *translator for devices and other stores*. diff --git a/hurd/translator/stowfs.mdwn b/hurd/translator/stowfs.mdwn index 31a73b13..9c88f1a3 100644 --- a/hurd/translator/stowfs.mdwn +++ b/hurd/translator/stowfs.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=unionfs#stowfs]] diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index 49f02ae8..abd47c96 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `tmpfs` is a file system server for temporary data storage without using a real (permanent) [[backing_store]]. diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn index 81d2f362..b36fc1aa 100644 --- a/hurd/translator/tmpfs/notes_bing.mdwn +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] 1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index 72fa0765..3ec649e5 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] hde: what's the status on tmpfs? Broke diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 28c9ff22..8a29d0f7 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] diff --git a/hurd/translator/wishlist_1.mdwn b/hurd/translator/wishlist_1.mdwn index fa0f47cd..36290883 100644 --- a/hurd/translator/wishlist_1.mdwn +++ b/hurd/translator/wishlist_1.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[devfs]] diff --git a/hurd/translator/writing/example.mdwn b/hurd/translator/writing/example.mdwn index 2b75d63a..0a3be4df 100644 --- a/hurd/translator/writing/example.mdwn +++ b/hurd/translator/writing/example.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Data User-Server Translator Example diff --git a/hurd/translator/xmlfs.mdwn b/hurd/translator/xmlfs.mdwn index aa709839..769c43ce 100644 --- a/hurd/translator/xmlfs.mdwn +++ b/hurd/translator/xmlfs.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] diff --git a/hurd/virtual_file_system.mdwn b/hurd/virtual_file_system.mdwn index 738010cc..1e2f68fb 100644 --- a/hurd/virtual_file_system.mdwn +++ b/hurd/virtual_file_system.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Path names are resolved using a distributed protocol. No single entity is responsible for the resolution of diff --git a/hurd/virtualization.mdwn b/hurd/virtualization.mdwn index 3c6f19ea..42f83f77 100644 --- a/hurd/virtualization.mdwn +++ b/hurd/virtualization.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Olaf Buddenhagen has written a text about how [[/virtualization]] is applicable within Hurd systems: diff --git a/hurd/what_is_the_gnu_hurd.mdwn b/hurd/what_is_the_gnu_hurd.mdwn index 8a64d093..0b8f7ef6 100644 --- a/hurd/what_is_the_gnu_hurd.mdwn +++ b/hurd/what_is_the_gnu_hurd.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="What Is the GNU Hurd?"]] diff --git a/hurd/what_is_the_gnu_hurd/gramatically_speaking.mdwn b/hurd/what_is_the_gnu_hurd/gramatically_speaking.mdwn index cb9beaa9..5905a19b 100644 --- a/hurd/what_is_the_gnu_hurd/gramatically_speaking.mdwn +++ b/hurd/what_is_the_gnu_hurd/gramatically_speaking.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Grammatically speaking..."]] diff --git a/hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn b/hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn index 5e175592..51857e21 100644 --- a/hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn +++ b/hurd/what_is_the_gnu_hurd/origin_of_the_name.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Origin of the Name"]] diff --git a/ibac.mdwn b/ibac.mdwn index b8d2606c..c1d46ba8 100644 --- a/ibac.mdwn +++ b/ibac.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] IBAC stands for identity-based access control. In this access control scheme, access to a resource diff --git a/idl.mdwn b/idl.mdwn index 2fa6f081..db58f789 100644 --- a/idl.mdwn +++ b/idl.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] An IDL is an interface definition language. The most well-known is CORBA. An IDL compiler takes a specification and generates stubs diff --git a/index.mdwn b/index.mdwn index 5481effe..960300c8 100644 --- a/index.mdwn +++ b/index.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] **What Is the GNU Hurd?** The GNU Hurd is the GNU project's replacement for the Unix kernel. @@ -59,7 +59,7 @@ Read about ways to contribute [[in_more_detail|contributing]]. There are a couple of different [[Hurd_FAQs|hurd/FAQ]]. There are a number of [[IRC_channels|IRC]] and several -different [[mailing_lists]] with searchable archives. +different [[mailing lists]] with searchable archives. Before asking a question on a mailing list or on IRC, first, please try to answer your own question using a search engine and reading the introductory @@ -90,7 +90,7 @@ systems are currently mostly based on the [[Debian_GNU/Hurd|hurd/running/debian] sponsored by the [Debian project](http://www.debian.org/). Community resources for related projects focus around these pages, -, the [[mailing_lists]] and the [[IRC_channels|IRC]]. +, the [[mailing lists]] and the [[IRC_channels|IRC]]. If you want to see the current discussions in the Hurd project, please have a look at the [bug-hurd mailinglist archives](http://lists.gnu.org/pipermail/bug-hurd/). diff --git a/index/discussion.mdwn b/index/discussion.mdwn index 2dc542c5..f369ed35 100644 --- a/index/discussion.mdwn +++ b/index/discussion.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # TODO diff --git a/ipc.mdwn b/ipc.mdwn index 108bb395..2f9cef2e 100644 --- a/ipc.mdwn +++ b/ipc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] IPC stands for interprocess communication. diff --git a/irc.mdwn b/irc.mdwn index a53113f7..9d73311d 100644 --- a/irc.mdwn +++ b/irc.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="IRC"]] diff --git a/isolation.mdwn b/isolation.mdwn index de3df43e..638085e6 100644 --- a/isolation.mdwn +++ b/isolation.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] When two [[principal]]s cannot affect each other, they are said to be isolated from one another. Strictly speaking, if two principals diff --git a/license.mdwn b/license.mdwn index 8fa57c98..0f7bf9bd 100644 --- a/license.mdwn +++ b/license.mdwn @@ -3,4 +3,4 @@ text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is -included in the section entitled [[GNU_Free_Documentation_License|/fdl]]."]] +included in the section entitled [[GNU Free Documentation License|/fdl]]."]] diff --git a/liedtke.mdwn b/liedtke.mdwn index bf8c5dc0..8a204a32 100644 --- a/liedtke.mdwn +++ b/liedtke.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Liedtke is the father of [[microkernel/L4]]. diff --git a/mailing_lists.mdwn b/mailing_lists.mdwn index 58f0017e..d64582b8 100644 --- a/mailing_lists.mdwn +++ b/mailing_lists.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # On Posting diff --git a/mailing_lists/bug-hurd.mdwn b/mailing_lists/bug-hurd.mdwn index 66f49925..ee803d7d 100644 --- a/mailing_lists/bug-hurd.mdwn +++ b/mailing_lists/bug-hurd.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#bug-hurd]] diff --git a/mailing_lists/debian-hurd.mdwn b/mailing_lists/debian-hurd.mdwn index 1cef9017..735e321b 100644 --- a/mailing_lists/debian-hurd.mdwn +++ b/mailing_lists/debian-hurd.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#debian-hurd]] diff --git a/mailing_lists/gnu-system-discuss.mdwn b/mailing_lists/gnu-system-discuss.mdwn index 4d4ed429..d966e172 100644 --- a/mailing_lists/gnu-system-discuss.mdwn +++ b/mailing_lists/gnu-system-discuss.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#gnu-system-discuss]] diff --git a/mailing_lists/help-hurd.mdwn b/mailing_lists/help-hurd.mdwn index 65eb8191..7e283561 100644 --- a/mailing_lists/help-hurd.mdwn +++ b/mailing_lists/help-hurd.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#help-hurd]] diff --git a/mailing_lists/hurd-devel-readers.mdwn b/mailing_lists/hurd-devel-readers.mdwn index 4c8135fa..0476c501 100644 --- a/mailing_lists/hurd-devel-readers.mdwn +++ b/mailing_lists/hurd-devel-readers.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#hurd-devel-readers]] diff --git a/mailing_lists/hurd-devel.mdwn b/mailing_lists/hurd-devel.mdwn index c0805b53..26ca1c33 100644 --- a/mailing_lists/hurd-devel.mdwn +++ b/mailing_lists/hurd-devel.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#hurd-devel]] diff --git a/mailing_lists/l4-hurd.mdwn b/mailing_lists/l4-hurd.mdwn index 8c2527f0..493c38b6 100644 --- a/mailing_lists/l4-hurd.mdwn +++ b/mailing_lists/l4-hurd.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#l4-hurd]] diff --git a/mailing_lists/unmoderated.mdwn b/mailing_lists/unmoderated.mdwn index afd2fe21..4bef130e 100644 --- a/mailing_lists/unmoderated.mdwn +++ b/mailing_lists/unmoderated.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] In fact the lists *are* moderated for users that post from not-subscribed email addresses. However, this moderation should be transparent to the poster, you diff --git a/mailing_lists/web-hurd.mdwn b/mailing_lists/web-hurd.mdwn index 2e09244f..f449205f 100644 --- a/mailing_lists/web-hurd.mdwn +++ b/mailing_lists/web-hurd.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta redir=mailing_lists#web-hurd]] diff --git a/mechanism.mdwn b/mechanism.mdwn index 222fcd14..dddb234b 100644 --- a/mechanism.mdwn +++ b/mechanism.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Collaborative International Dictionary of English v.0.48 defines a mechanism as: diff --git a/microkernel.mdwn b/microkernel.mdwn index 4a067ba1..e2d70c01 100644 --- a/microkernel.mdwn +++ b/microkernel.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[Liedtke]] explains in [On Microkernel Construction](http://l4ka.org/publications/paper.php?docid=642) that a microkernel attempts to minimize the mandatory part of the operating diff --git a/microkernel/faq.mdwn b/microkernel/faq.mdwn index 4fb75103..a6c4f1f8 100644 --- a/microkernel/faq.mdwn +++ b/microkernel/faq.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Microkernel FAQ"]] diff --git a/microkernel/faq/multiserver_microkernel.mdwn b/microkernel/faq/multiserver_microkernel.mdwn index e42c4887..b16faa92 100644 --- a/microkernel/faq/multiserver_microkernel.mdwn +++ b/microkernel/faq/multiserver_microkernel.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="What is a Multiserver Microkernel?"]] diff --git a/microkernel/for_beginners.mdwn b/microkernel/for_beginners.mdwn index a901e827..ad50425e 100644 --- a/microkernel/for_beginners.mdwn +++ b/microkernel/for_beginners.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Concepts diff --git a/microkernel/mach/documentation.mdwn b/microkernel/mach/documentation.mdwn index f2a39f1c..3b12bfac 100644 --- a/microkernel/mach/documentation.mdwn +++ b/microkernel/mach/documentation.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] - [Meet Mach](http://www.stepwise.com/Articles/Technical/MeetMach.html), a summary of Mach's history and main concepts. diff --git a/microkernel/mach/external_pager_mechanism.mdwn b/microkernel/mach/external_pager_mechanism.mdwn index 40bd3d4a..b175d1cc 100644 --- a/microkernel/mach/external_pager_mechanism.mdwn +++ b/microkernel/mach/external_pager_mechanism.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Mach provides a so-called external pager [[mechanism]]. This mechanism serves to separate *managing memory* from *managing diff --git a/microkernel/mach/gnumach.mdwn b/microkernel/mach/gnumach.mdwn index abd53116..8c42d1e8 100644 --- a/microkernel/mach/gnumach.mdwn +++ b/microkernel/mach/gnumach.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU Mach is the microkernel that the [[GNU_Hurd|hurd]] system is based on. diff --git a/microkernel/mach/gnumach/boot_trace.mdwn b/microkernel/mach/gnumach/boot_trace.mdwn index bd3eb115..d33ef25a 100644 --- a/microkernel/mach/gnumach/boot_trace.mdwn +++ b/microkernel/mach/gnumach/boot_trace.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] `if NCPUS > 1` stuff is not being considered so far. diff --git a/microkernel/mach/gnumach/building/example.mdwn b/microkernel/mach/gnumach/building/example.mdwn index 25c8e1cc..7db98547 100644 --- a/microkernel/mach/gnumach/building/example.mdwn +++ b/microkernel/mach/gnumach/building/example.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] ## Compiling GNU Mach microkernel diff --git a/microkernel/mach/gnumach/debugging.mdwn b/microkernel/mach/gnumach/debugging.mdwn index 0867cbce..38cc7911 100644 --- a/microkernel/mach/gnumach/debugging.mdwn +++ b/microkernel/mach/gnumach/debugging.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Mach has a built-in kernel debugger. [Manual](http://www.gnu.org/software/hurd/gnumach-doc/Kernel-Debugger.html). diff --git a/microkernel/mach/gnumach/hardware_compatibility_list.mdwn b/microkernel/mach/gnumach/hardware_compatibility_list.mdwn index ae3d0ee1..2152c079 100644 --- a/microkernel/mach/gnumach/hardware_compatibility_list.mdwn +++ b/microkernel/mach/gnumach/hardware_compatibility_list.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # CPU Architecture diff --git a/microkernel/mach/gnumach/open_issues.mdwn b/microkernel/mach/gnumach/open_issues.mdwn index 4323ac4b..2f601199 100644 --- a/microkernel/mach/gnumach/open_issues.mdwn +++ b/microkernel/mach/gnumach/open_issues.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Open Issues"]] diff --git a/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn b/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn index 07c71568..96028896 100644 --- a/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn +++ b/microkernel/mach/gnumach/open_issues/resource_management_problems.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[Mach]] interfaces do not allow for proper resource accounting, when a server allocates resources on behalf of a client. diff --git a/microkernel/mach/gnumach/ports.mdwn b/microkernel/mach/gnumach/ports.mdwn index b25fbe60..a29b8651 100644 --- a/microkernel/mach/gnumach/ports.mdwn +++ b/microkernel/mach/gnumach/ports.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * x86. This is the main port. * [PowerPC](http://www.pjbruin.dds.nl/hurd/). Is not in a usable state. diff --git a/microkernel/mach/gnumach/ports/xen.mdwn b/microkernel/mach/gnumach/ports/xen.mdwn index 7391ea2e..a4c27c6a 100644 --- a/microkernel/mach/gnumach/ports/xen.mdwn +++ b/microkernel/mach/gnumach/ports/xen.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!toc]] diff --git a/microkernel/mach/gnumach/ports/xen/internals.mdwn b/microkernel/mach/gnumach/ports/xen/internals.mdwn index 8e46472d..eae9d9a8 100644 --- a/microkernel/mach/gnumach/ports/xen/internals.mdwn +++ b/microkernel/mach/gnumach/ports/xen/internals.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The port does use Xen's para-virtualized interface for device (ide, network, etc.) access. diff --git a/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn index f3b0d205..52e6db87 100644 --- a/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn +++ b/microkernel/mach/gnumach/ports/xen/networking_configuration.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!toc]] diff --git a/microkernel/mach/gnumach/projects.mdwn b/microkernel/mach/gnumach/projects.mdwn index 8ef71e30..bd13802c 100644 --- a/microkernel/mach/gnumach/projects.mdwn +++ b/microkernel/mach/gnumach/projects.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This page is a place to keep track of ideas about things that may be improved in GNU Mach, so that it'll evolve to a reliable microkernel for The Hurd, both @@ -15,7 +15,7 @@ in terms of stability and performance. If you find anything missing here, please feel free to add a entry with a short description. If you want to help with any of the task (thanks!), please send a mail to -*[[mailing_lists/bug-hurd]]* stating what task you wish to work on, +*[[mailing lists/bug-hurd]]* stating what task you wish to work on, so that no duplicate efforts end up. # Active Branches diff --git a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn index 0038f00e..e865e61a 100644 --- a/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn +++ b/microkernel/mach/gnumach/projects/clean_up_the_code.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # Restructure the tree in a sane way diff --git a/microkernel/mach/gnumach/projects/gdb_stubs.mdwn b/microkernel/mach/gnumach/projects/gdb_stubs.mdwn index 43e65a2b..ef1b4909 100644 --- a/microkernel/mach/gnumach/projects/gdb_stubs.mdwn +++ b/microkernel/mach/gnumach/projects/gdb_stubs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * diff --git a/microkernel/mach/gnumach/reference_manual.mdwn b/microkernel/mach/gnumach/reference_manual.mdwn index dab6423d..95d11517 100644 --- a/microkernel/mach/gnumach/reference_manual.mdwn +++ b/microkernel/mach/gnumach/reference_manual.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] *The GNU Mach Reference Manual* documents the architecture, the usage and the programming of the GNU Mach microkernel. At the moment, the manual documents diff --git a/microkernel/mach/ipc.mdwn b/microkernel/mach/ipc.mdwn index 010b51c9..aaf3ba23 100644 --- a/microkernel/mach/ipc.mdwn +++ b/microkernel/mach/ipc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[General_information|/ipc]] about IPC. diff --git a/microkernel/mach/ipc/sequence_numbering.mdwn b/microkernel/mach/ipc/sequence_numbering.mdwn index ea5cf5fe..eb94d662 100644 --- a/microkernel/mach/ipc/sequence_numbering.mdwn +++ b/microkernel/mach/ipc/sequence_numbering.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Mach's [[IPC]] mechanism allows for getting access to a message's sequence number. diff --git a/microkernel/mach/mig.mdwn b/microkernel/mach/mig.mdwn index 2bf81d59..4275a4b4 100644 --- a/microkernel/mach/mig.mdwn +++ b/microkernel/mach/mig.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Mach Interface Generator (MIG) is an [[IDL]] compiler. Based on an interface definition, it creates stubs to [[invoke]] object methods diff --git a/microkernel/mach/mig/documentation.mdwn b/microkernel/mach/mig/documentation.mdwn index be0796e8..82d51a72 100644 --- a/microkernel/mach/mig/documentation.mdwn +++ b/microkernel/mach/mig/documentation.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This is a small collection of links to external documents describing the *Mach Interface Generator* used by GNU Mach. diff --git a/microkernel/mach/mig/documentation/dealloc.mdwn b/microkernel/mach/mig/documentation/dealloc.mdwn index 42f06613..b627b532 100644 --- a/microkernel/mach/mig/documentation/dealloc.mdwn +++ b/microkernel/mach/mig/documentation/dealloc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The [[GNU_Mach_Reference_Manual|gnumach/reference_manual]] describes the `dealloc` flag in [Chapter 4.2.4, diff --git a/microkernel/mach/mig/documentation/servercopy.mdwn b/microkernel/mach/mig/documentation/servercopy.mdwn index 00edf0f3..8abf9b07 100644 --- a/microkernel/mach/mig/documentation/servercopy.mdwn +++ b/microkernel/mach/mig/documentation/servercopy.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] For IN args. If set it... diff --git a/microkernel/mach/mig/gnu_mig.mdwn b/microkernel/mach/mig/gnu_mig.mdwn index b2a41bac..03ef0967 100644 --- a/microkernel/mach/mig/gnu_mig.mdwn +++ b/microkernel/mach/mig/gnu_mig.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU MIG is the GNU distribution of the [[Mach_3.0_interface_generator_*MIG*|mig]], as maintained by the GNU Hurd diff --git a/microkernel/mach/mig/gnu_mig/open_issues.mdwn b/microkernel/mach/mig/gnu_mig/open_issues.mdwn index ad440b40..33e6429a 100644 --- a/microkernel/mach/mig/gnu_mig/open_issues.mdwn +++ b/microkernel/mach/mig/gnu_mig/open_issues.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Open Issues"]] diff --git a/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn b/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn index 27de1015..daace92e 100644 --- a/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn +++ b/microkernel/mach/mig/gnu_mig/open_issues/duplicate_inclusion_guards.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] E.g., both `/usr/include/hurd/process.h` and `/usr/include/hurd/process_request.h` use `_process_user_` as an inclusion diff --git a/microkernel/mach/port.mdwn b/microkernel/mach/port.mdwn index b3568c29..af4a0c8d 100644 --- a/microkernel/mach/port.mdwn +++ b/microkernel/mach/port.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Mach ports are [[capabilities|capability]]. diff --git a/microkernel/mach/rpc.mdwn b/microkernel/mach/rpc.mdwn index 5508ea3c..72acfaa0 100644 --- a/microkernel/mach/rpc.mdwn +++ b/microkernel/mach/rpc.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[General_information|/rpc]] about RPC. diff --git a/microkernel/viengoos.mdwn b/microkernel/viengoos.mdwn index 95009142..d4edc929 100644 --- a/microkernel/viengoos.mdwn +++ b/microkernel/viengoos.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] *viengoos* is a new kernel currently being designed and written by Neal Walfield. diff --git a/microkernel/viengoos/building.mdwn b/microkernel/viengoos/building.mdwn index b34188e2..536c21fa 100644 --- a/microkernel/viengoos/building.mdwn +++ b/microkernel/viengoos/building.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Check out Viengoos and switch to the viengoos-on-bare-metal branch (all development is currently done on this branch and it will diff --git a/microkernel/viengoos/documentation.mdwn b/microkernel/viengoos/documentation.mdwn index ccce208b..52ff7a48 100644 --- a/microkernel/viengoos/documentation.mdwn +++ b/microkernel/viengoos/documentation.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The most up-to-date documentation is in the source code itself, see in particular the header files in the hurd directory. diff --git a/microkernel/viengoos/hardware.mdwn b/microkernel/viengoos/hardware.mdwn index e5a2ddf5..aff70604 100644 --- a/microkernel/viengoos/hardware.mdwn +++ b/microkernel/viengoos/hardware.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] I boot over the network using PXE. diff --git a/microkernel/viengoos/projects.mdwn b/microkernel/viengoos/projects.mdwn index cbe39607..27dcc3e2 100644 --- a/microkernel/viengoos/projects.mdwn +++ b/microkernel/viengoos/projects.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!tag open_issue_viengoos]] diff --git a/microkernel/viengoos/serial_port.mdwn b/microkernel/viengoos/serial_port.mdwn index 01dd4050..14efcb9f 100644 --- a/microkernel/viengoos/serial_port.mdwn +++ b/microkernel/viengoos/serial_port.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Viengoos can be configured to send output to the serial port (in fact, this is the only configuration that I use). To talk to the serial diff --git a/naming_context.mdwn b/naming_context.mdwn index 28b2fabd..3a0751c0 100644 --- a/naming_context.mdwn +++ b/naming_context.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Names are bindings to objects, however, to find an object given a name, the relation must be looked up in a diff --git a/news.mdwn b/news.mdwn index c5c0a851..4511047c 100644 --- a/news.mdwn +++ b/news.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!inline pages="news/* and !*/discussion" diff --git a/news/2002-01-13.mdwn b/news/2002-01-13.mdwn index 06b62334..920c2593 100644 --- a/news/2002-01-13.mdwn +++ b/news/2002-01-13.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] An interview diff --git a/news/2002-01-19.mdwn b/news/2002-01-19.mdwn index 18fe6aab..c6923220 100644 --- a/news/2002-01-19.mdwn +++ b/news/2002-01-19.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Toronto Hurd User Group meets: The University of Waterloo Computer Science Club will be hosting a talk on the Hurd and the diff --git a/news/2002-02-18.mdwn b/news/2002-02-18.mdwn index b34c654a..e550a8f6 100644 --- a/news/2002-02-18.mdwn +++ b/news/2002-02-18.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Pro-Linux has published a GNU/Hurd diff --git a/news/2002-03-03.mdwn b/news/2002-03-03.mdwn index 9a66a2f5..8b60ed9b 100644 --- a/news/2002-03-03.mdwn +++ b/news/2002-03-03.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] There is a new mailing list called diff --git a/news/2002-03-08.mdwn b/news/2002-03-08.mdwn index c107dcfc..f64f04f1 100644 --- a/news/2002-03-08.mdwn +++ b/news/2002-03-08.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] We are pleased to announce version 1.3 of the GNU distribution of the Mach 3.0 interface generator `MIG'. It may be found in the file diff --git a/news/2002-03-23.mdwn b/news/2002-03-23.mdwn index 1936ca05..f3c12633 100644 --- a/news/2002-03-23.mdwn +++ b/news/2002-03-23.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Added the [[hurd/Hurd_Hacking_Guide]] to the documentation section. Thanks to Wolfgang Jährling for providing this introduction into GNU/Hurd and Mach diff --git a/news/2002-05-05.mdwn b/news/2002-05-05.mdwn index d5db172b..2b38863e 100644 --- a/news/2002-05-05.mdwn +++ b/news/2002-05-05.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] We are currently finishing the transition from a stdio-based GNU C Library (glibc) to a libio-based one. This is the result of about diff --git a/news/2002-05-18.mdwn b/news/2002-05-18.mdwn index e2cb9261..7017e410 100644 --- a/news/2002-05-18.mdwn +++ b/news/2002-05-18.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The "Linux and Unix User Group Heilbronn" (in Germany) is organizing a Debian GNU/Hurd Libre Software Meeting in diff --git a/news/2002-08-16.mdwn b/news/2002-08-16.mdwn index 69f42be4..9e70d686 100644 --- a/news/2002-08-16.mdwn +++ b/news/2002-08-16.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The Hurd sources have stabilized again after a short period in which some of the interfaces were changed to prepare support of long diff --git a/news/2002-10-03.mdwn b/news/2002-10-03.mdwn index 28ab527a..90f4da9f 100644 --- a/news/2002-10-03.mdwn +++ b/news/2002-10-03.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A new article about [[the_authentication_server|hurd/documentation/auth]] has been added to the web pages. It resembles the talk diff --git a/news/2002-10-03_2.mdwn b/news/2002-10-03_2.mdwn index 0dabd3b6..e08e2b3c 100644 --- a/news/2002-10-03_2.mdwn +++ b/news/2002-10-03_2.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Marcus Brinkmann speaks about the GNU Hurd at "Reflections | Projections 2002", the University of Waterloo diff --git a/news/2003-02-14.mdwn b/news/2003-02-14.mdwn index 89473575..2754d737 100644 --- a/news/2003-02-14.mdwn +++ b/news/2003-02-14.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The GNU/Hurd User's Guide is now accessible through the Documentation diff --git a/news/2003-07-02.mdwn b/news/2003-07-02.mdwn index b5433eee..7e9634b7 100644 --- a/news/2003-07-02.mdwn +++ b/news/2003-07-02.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The tarball for Debian GNU/Hurd that Marcus Brinkmann made over the years has been discontinued in favour of Jeff Bailey's diff --git a/news/2003-07-16.mdwn b/news/2003-07-16.mdwn index af8c8b74..da1fc12a 100644 --- a/news/2003-07-16.mdwn +++ b/news/2003-07-16.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] GNU/LinuxTag 2003 is now over and since there was a talk given about the Hurd, a demo GNU/Hurd machine running and the sale of Hurd diff --git a/news/2003-08-21.mdwn b/news/2003-08-21.mdwn index 602ee2ef..fcd2adb8 100644 --- a/news/2003-08-21.mdwn +++ b/news/2003-08-21.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Added a link to Patrick Strasser's the Hurd Source diff --git a/news/2005-01-28.mdwn b/news/2005-01-28.mdwn index 92056b38..3360fd3e 100644 --- a/news/2005-01-28.mdwn +++ b/news/2005-01-28.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Marcus Brinkmann added a small web page describing diff --git a/news/2005-09-20.mdwn b/news/2005-09-20.mdwn index 16424a8c..09e156eb 100644 --- a/news/2005-09-20.mdwn +++ b/news/2005-09-20.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Material from the Operating System topic during the Libre Software diff --git a/news/2006-04-27.mdwn b/news/2006-04-27.mdwn index d50fd272..9f99488a 100644 --- a/news/2006-04-27.mdwn +++ b/news/2006-04-27.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]]

The GNU Hurd project will participate in this year's Google Summer of Code, under the aegis of the GNU project.

@@ -14,7 +14,7 @@ Summer of Code, under the aegis of the GNU project.

The following is a list of items you might want to work on. If you want to modify or extend these tasks or have your own ideas what to work on, please feel invited to contact us on the -[[bug-hurd_mailing_list|mailing_lists/bug-hurd]] or +[[bug-hurd_mailing_list|mailing lists/bug-hurd]] or the [[#hurd_IRC_channel|irc]].

    diff --git a/news/2007-01-07.mdwn b/news/2007-01-07.mdwn index b82ec6e0..530491f2 100644 --- a/news/2007-01-07.mdwn +++ b/news/2007-01-07.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A number of GNU Hurd developers will again (as already in the previous years) meet at the time of the FOSDEM 2007, which will take place from 2007-02-24 to diff --git a/news/2007-01-14.mdwn b/news/2007-01-14.mdwn index 16947757..f99eda87 100644 --- a/news/2007-01-14.mdwn +++ b/news/2007-01-14.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]]

    Neal Walfield and Marcus Brinkmann have written and submitted for publication The GNU Hurd project will participate in this year's Google Summer of Code, under the aegis of the GNU project.

    @@ -14,7 +14,7 @@ Summer of Code, under the aegis of the GNU project.

    The following is a list of items you might want to work on. If you want to modify these task proposals or have your own ideas on what to work, then please don't hesitate to contact us on the -[[bug-hurd_mailing_list|mailing_lists/bug-hurd]] or +[[bug-hurd_mailing_list|mailing lists/bug-hurd]] or the [[#hurd_IRC_channel|irc]].

      diff --git a/news/2007-10-01.mdwn b/news/2007-10-01.mdwn index a95b2631..b35bc337 100644 --- a/news/2007-10-01.mdwn +++ b/news/2007-10-01.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This year the GNU Hurd had again been assigned one slot within the **Google Summer of Code** program, which was assigned to the task **design and implement diff --git a/news/2007-10-12.mdwn b/news/2007-10-12.mdwn index 8d46a07f..ae125149 100644 --- a/news/2007-10-12.mdwn +++ b/news/2007-10-12.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Stefan Siegl added [[support_for_IPv6_networking|hurd/translator/pfinet/ipv6]] to the *pfinet* translator. diff --git a/news/2008-02-11.mdwn b/news/2008-02-11.mdwn index 7b4346b8..0805287c 100644 --- a/news/2008-02-11.mdwn +++ b/news/2008-02-11.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A number of GNU Hurd developers will again (as already in the previous years) meet at the time of the FOSDEM 2008, which will take place from diff --git a/news/2008-03-19.mdwn b/news/2008-03-19.mdwn index 0a2c91e2..02ea4c5f 100644 --- a/news/2008-03-19.mdwn +++ b/news/2008-03-19.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The GNU Hurd project has been accepted as a mentoring organisation for the **Google Summer of Code 2008**! If you are a student and looking for a job diff --git a/news/2008-09-11.mdwn b/news/2008-09-11.mdwn index 85f31317..8dc39924 100644 --- a/news/2008-09-11.mdwn +++ b/news/2008-09-11.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Please see [[the_community/gsoc_page|community/gsoc]] for information about how our **Google Summer of Code 2008 participation** worked out. **Congratulations diff --git a/news/2008-11-14.mdwn b/news/2008-11-14.mdwn index 9cdbdea0..58e035c3 100644 --- a/news/2008-11-14.mdwn +++ b/news/2008-11-14.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[Samuel_Thibault|samuelthibault]] has implemented support for the PAE feature offered by modern x86 processors. This largely faciliates the deployment of diff --git a/news/2008-12-12.mdwn b/news/2008-12-12.mdwn index c55b991e..b2e92ef0 100644 --- a/news/2008-12-12.mdwn +++ b/news/2008-12-12.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Neal Walfield has submitted a paper to [[community/meetings/EuroSys_2009]] describing how resource management diff --git a/news/2009-03-28.mdwn b/news/2009-03-28.mdwn index 72741457..00aebb09 100644 --- a/news/2009-03-28.mdwn +++ b/news/2009-03-28.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The application phase for the **Google Summer of Code 2009** has already started. Please see our [[page_about_the_GSoC|community/gsoc]] for diff --git a/open_issues.mdwn b/open_issues.mdwn index c372abfb..b6771287 100644 --- a/open_issues.mdwn +++ b/open_issues.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Open Issues"]] diff --git a/open_issues/blkrrpart_ioctl.mdwn b/open_issues/blkrrpart_ioctl.mdwn index 81e07f3e..6f6d7cbd 100644 --- a/open_issues/blkrrpart_ioctl.mdwn +++ b/open_issues/blkrrpart_ioctl.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="BLKRRPART IOCTL"]] diff --git a/persistency.mdwn b/persistency.mdwn index 16234c9b..f5347a4e 100644 --- a/persistency.mdwn +++ b/persistency.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A persistent object is an object that survives reboot. On [[Unix]], files and directories are persistent but diff --git a/policy.mdwn b/policy.mdwn index 7412de5f..1bc3c527 100644 --- a/policy.mdwn +++ b/policy.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A policy is a rule that define what may or may not happens, not how it happens. The latter is referred to as [[mechanism]]. diff --git a/principal.mdwn b/principal.mdwn index 47ec3c7f..c9b952ec 100644 --- a/principal.mdwn +++ b/principal.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A principal is an accountable entity. A principal may be a user. On some computer systems, users are represented by their diff --git a/public_hurd_boxen.mdwn b/public_hurd_boxen.mdwn index f504225b..f7b264fb 100644 --- a/public_hurd_boxen.mdwn +++ b/public_hurd_boxen.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Here are some Hurd boxes that users have made available to the public: diff --git a/qemu.mdwn b/qemu.mdwn index c0ed12f0..bfd2f1cb 100644 --- a/qemu.mdwn +++ b/qemu.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] QEMU is free software written by Fabrice Bellard that implements a fast processor [[emulator|emulation]], allowing a user to run one operating system diff --git a/recent_changes.mdwn b/recent_changes.mdwn index e9bd13c4..594a0390 100644 --- a/recent_changes.mdwn +++ b/recent_changes.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Recent Changes"]] diff --git a/rpc.mdwn b/rpc.mdwn index 451dd4d4..9703268f 100644 --- a/rpc.mdwn +++ b/rpc.mdwn @@ -6,6 +6,6 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] RPC stands for remote procedure call. diff --git a/rules.mdwn b/rules.mdwn index ccc7363e..6f6f9e2f 100644 --- a/rules.mdwn +++ b/rules.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * [[Source_repositories]] * [[Savannah_group]] diff --git a/rules/savannah_group.mdwn b/rules/savannah_group.mdwn index 7de688be..4e2cf357 100644 --- a/rules/savannah_group.mdwn +++ b/rules/savannah_group.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] @@ -17,7 +17,7 @@ There is no need to be a formal member of the GNU Hurd Savannah group in order to be able to contribute to the system. In fact, if we added every single soul that was interested in the Hurd to the Savannah group it'd probably have exploded by now. We have the policy of adding people as soon as they are -beginning to make substantial contributions. Simply use the [[mailing_lists]] +beginning to make substantial contributions. Simply use the [[mailing lists]] for sending your contributions, for asking questions, and so on. Have a look at the page for [[contributing]]. Also be sure to have a look at diff --git a/rules/source_repositories.mdwn b/rules/source_repositories.mdwn index f15d0f3a..2c2092f8 100644 --- a/rules/source_repositories.mdwn +++ b/rules/source_repositories.mdwn @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Git repositories on Savannah, see (search for *hurd*). diff --git a/security.mdwn b/security.mdwn index 4c037982..0e22df00 100644 --- a/security.mdwn +++ b/security.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Alan Karp [identifies][1] 11 security questions: diff --git a/sfi.mdwn b/sfi.mdwn index 67d26105..4b57d7c6 100644 --- a/sfi.mdwn +++ b/sfi.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] SFI stands for Software-Based Fault Isolation. SFI is an [[isolation]] technique described by Wahbe et al. in their 1993 paper [Effcient diff --git a/sidebar.mdwn b/sidebar.mdwn index 89df4b54..446eecf2 100644 --- a/sidebar.mdwn +++ b/sidebar.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Welcome to... [[!img hurd/logo/boxes-redrawn.png link=/hurd/logo]] ... the GNU Hurd! diff --git a/tcb.mdwn b/tcb.mdwn index 9b117fae..f6018dae 100644 --- a/tcb.mdwn +++ b/tcb.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] TCB stands for trusted computed base. Unqualified, the trusted computing base referrers to the set of components programs diff --git a/trackers.mdwn b/trackers.mdwn index 028117ef..c8fe913e 100644 --- a/trackers.mdwn +++ b/trackers.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] A number of different trackers are available at the [GNU Savannah Hurd Group](http://savannah.gnu.org/projects/hurd). diff --git a/trust.mdwn b/trust.mdwn index f0fe0cb7..2bf0a9ae 100644 --- a/trust.mdwn +++ b/trust.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] The word trust is used in a number of contexts with different technical meanings. Sometimes it is used to confuse, for instance trusted computing is rarely about diff --git a/unix.mdwn b/unix.mdwn index 96c46caf..a927eb64 100644 --- a/unix.mdwn +++ b/unix.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # External diff --git a/unsorted/OskitMach.mdwn b/unsorted/OskitMach.mdwn index b5b92d68..0f7dfa54 100644 --- a/unsorted/OskitMach.mdwn +++ b/unsorted/OskitMach.mdwn @@ -22,7 +22,7 @@ concentrate on completely different microkernels (Coyotos being the current favourite), as well as on improving the original GNU Mach 1.x codebase. (See also [[microkernel/mach/gnumach/projects]].) -The [[mailing_lists]], or the [[IRC]] is, like always, the best source of more +The [[mailing lists]], or the [[IRC]] is, like always, the best source of more current information. There also exist other efforts: diff --git a/unsorted/changelogs.html b/unsorted/changelogs.html index 7689484e..299ef281 100644 --- a/unsorted/changelogs.html +++ b/unsorted/changelogs.html @@ -7,7 +7,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]]

      ChangeLogs

      diff --git a/user/flaviocruz.mdwn b/user/flaviocruz.mdwn index 450c2754..f3a67afd 100644 --- a/user/flaviocruz.mdwn +++ b/user/flaviocruz.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] Name: Flávio Cruz diff --git a/user/madhusudancs.mdwn b/user/madhusudancs.mdwn index 382f988a..903b0964 100644 --- a/user/madhusudancs.mdwn +++ b/user/madhusudancs.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="GNU/Linux compatible procfs"]] diff --git a/user/scolobb.mdwn b/user/scolobb.mdwn index 8cf47568..09016edb 100644 --- a/user/scolobb.mdwn +++ b/user/scolobb.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # scolobb diff --git a/user/tschwinge.mdwn b/user/tschwinge.mdwn index 5ffa6fd8..2c75292b 100644 --- a/user/tschwinge.mdwn +++ b/user/tschwinge.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] [[!meta title="Thomas Schwinge"]] diff --git a/user/vincentvikram.mdwn b/user/vincentvikram.mdwn index 8927bd4e..875b6311 100644 --- a/user/vincentvikram.mdwn +++ b/user/vincentvikram.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] * Name: Vikram Vincent * Email: vincentvikram@swatantra.org OR vincentvikram@gmail.com diff --git a/user/zhengda/howto.mdwn b/user/zhengda/howto.mdwn index cea3cf0b..a2664a18 100644 --- a/user/zhengda/howto.mdwn +++ b/user/zhengda/howto.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] This document briefly introduces how to set up the virtual network and connect the subhurd with the main hurd. diff --git a/virtualization.mdwn b/virtualization.mdwn index 325340b0..52131c12 100644 --- a/virtualization.mdwn +++ b/virtualization.mdwn @@ -6,7 +6,7 @@ document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled -[[GNU_Free_Documentation_License|/fdl]]."]]"""]] +[[GNU Free Documentation License|/fdl]]."]]"""]] # External -- cgit v1.2.3 From 45330a4073852117efcc7fba1608d6bf169dfe2a Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 23 May 2009 16:26:01 +0200 Subject: Link to Linux unionfs page. --- hurd/translator/unionfs.mdwn | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 8a29d0f7..b73d9d8e 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -15,3 +15,8 @@ is included in the section entitled # `stowfs` ... is a special mode of `unionfs`. + + +# External Links + + * [*Unioning file systems for Linux*](http://valerieaurora.org/union/) -- cgit v1.2.3 From 0702126f2c5d233ed4ed6b188f40472521a991c4 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 23 May 2009 16:33:08 +0200 Subject: Say why having a tmpfs is worthwhile. --- hurd/translator/tmpfs.mdwn | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs.mdwn b/hurd/translator/tmpfs.mdwn index abd47c96..0179ad6c 100644 --- a/hurd/translator/tmpfs.mdwn +++ b/hurd/translator/tmpfs.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -13,7 +14,13 @@ is included in the section entitled It is based on [[libdiskfs]]. -It's not working correctly at the moment. +Even though there are other possibilities of creating a +[[libstore/examples/ramdisk]] and running a regular, for example, [[`ext2` file +system|ext2fs]] on it, having a real `tmpfs` is better, as it need not deal +with the additional block-level indirection layer that `ext2` (or any other +disk-based file system) imposes. + +However, `tmpfs` is not working correctly at the moment: [[!inline pages="hurd/translator/tmpfs/*" -- cgit v1.2.3 From 2f25324f48d9651007776ddd2a219161d23bebeb Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 23 May 2009 16:36:42 +0200 Subject: Tag tmpfs issue pages as open_issue_hurd. --- hurd/translator/tmpfs/notes_bing.mdwn | 5 ++++- hurd/translator/tmpfs/notes_various.mdwn | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_bing.mdwn b/hurd/translator/tmpfs/notes_bing.mdwn index b36fc1aa..fa3eeac2 100644 --- a/hurd/translator/tmpfs/notes_bing.mdwn +++ b/hurd/translator/tmpfs/notes_bing.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2009 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,6 +9,8 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +[[!tag open_issue_hurd]] + 1. to run tmpfs as a regular user, /servers/default-pager must be executable by that user. by default it seems to be set to read/write. diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index 3ec649e5..01dc87d2 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -1,5 +1,5 @@ -[[!meta copyright="Copyright © 2005, 2006, 2007, 2008 Free Software Foundation, -Inc."]] +[[!meta copyright="Copyright © 2005, 2006, 2007, 2008, 2009 Free Software +Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -9,6 +9,8 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +[[!tag open_issue_hurd]] + hde: what's the status on tmpfs? Broke k0ro traced the errors like the assert show above to a pager problem. -- cgit v1.2.3 From b9344bc9677df69de86607f8444abb0602726257 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 29 May 2009 17:18:55 +0200 Subject: community/gsoc/project_ideas/unionmount -> hurd/translator/unionmount --- community/gsoc/project_ideas/unionmount.mdwn | 60 ---------------------------- hurd/translator.mdwn | 1 + hurd/translator/unionfs.mdwn | 3 ++ hurd/translator/unionmount.mdwn | 60 ++++++++++++++++++++++++++++ 4 files changed, 64 insertions(+), 60 deletions(-) delete mode 100644 community/gsoc/project_ideas/unionmount.mdwn create mode 100644 hurd/translator/unionmount.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/project_ideas/unionmount.mdwn b/community/gsoc/project_ideas/unionmount.mdwn deleted file mode 100644 index 47a3d85d..00000000 --- a/community/gsoc/project_ideas/unionmount.mdwn +++ /dev/null @@ -1,60 +0,0 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!meta title="Union Mounts"]] - -When setting a translator on Hurd -- similar to mounting a file system on UNIX --- the new node(s) exported by the translator are obscuring the original node -where the translator is set, and any nodes below it in the directory tree. The -translator itself can access the underlying node (which is a very nice feature, -as it allows translators presenting the contents of the node in a different -format); but it's no longer accessible from the "outside". - -Plan9 has a feature where a file system can be mounted in union mode: the new -file system doesn't obscure the mount point in this case, but instead the -contents are combined. (This feature has also been under discussion in Linux -for a couple of years now, under the label "VFS-based union mounts".) - -This kind of union mounts is generally useful, as it's sometimes more -convenient than unioning existing filesystem locations with unionfs -- it's not -necessary to mount a file system that is to be unioned at some external -location first: just union-mount it directly at the target location. - -But union mounts also allow creating passive translator hierarchies: If there -is a passive translator on a parent node, and further passive translators on -child nodes, the union mount allows the child nodes with the further translator -settings still to be visible after the parent translator has started. - -This could be useful for device nodes for example: let's say we have an -ethernet multiplexer at /dev/veth. Now the virtual subnodes could all be -directly under /dev, i.e. /dev/veth0, /dev/veth1 etc., and explicitely refer to -the main /dev/veth node in the translator command line. It would be more -elegant however to store the virtual nodes direcly below the main multiplexer -node -- /dev/veth/0, /dev/veth/1 etc. - -There are two possible approaches how union mounts could be implemented in the -Hurd. The first one is to let the various translators handle union mounts -internally, i.e. let them present the underlying nodes to the clients in -addition to the actual nodes they export themselfs. This probably can be -implemented as some kind of extension to the existing netfs and diskfs -libraries. - -The other possible apporach is less efficient and probably more tricky, but -probably also more generic: create a special unionmount translator, which -serves as a kind of proxy: setting the union-mounted translator on some -internal node; and at the actual mount location, presenting a union of the -nodes exported by this translator, and the nodes from the underlying file -system. - -The goal of this project is implementing union mounts using either of the -approaches described above. (Though it might be useful initially to prototype -both for comparision.) The ethernet multiplexer shall serve as an example use -case -- any changes necessary to allow using it with the union mount -functionality are also to be considered part of the task. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 8f2f07b4..5c14cfa9 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -70,6 +70,7 @@ available. * [[cvsfs]] * [[tmpfs]] * [[procfs]] +* [[unionmount]] * ... diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index b73d9d8e..6f845102 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -16,6 +16,9 @@ is included in the section entitled ... is a special mode of `unionfs`. +# See Also + + * [[unionmount]] # External Links diff --git a/hurd/translator/unionmount.mdwn b/hurd/translator/unionmount.mdwn new file mode 100644 index 00000000..47a3d85d --- /dev/null +++ b/hurd/translator/unionmount.mdwn @@ -0,0 +1,60 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +[[!meta title="Union Mounts"]] + +When setting a translator on Hurd -- similar to mounting a file system on UNIX +-- the new node(s) exported by the translator are obscuring the original node +where the translator is set, and any nodes below it in the directory tree. The +translator itself can access the underlying node (which is a very nice feature, +as it allows translators presenting the contents of the node in a different +format); but it's no longer accessible from the "outside". + +Plan9 has a feature where a file system can be mounted in union mode: the new +file system doesn't obscure the mount point in this case, but instead the +contents are combined. (This feature has also been under discussion in Linux +for a couple of years now, under the label "VFS-based union mounts".) + +This kind of union mounts is generally useful, as it's sometimes more +convenient than unioning existing filesystem locations with unionfs -- it's not +necessary to mount a file system that is to be unioned at some external +location first: just union-mount it directly at the target location. + +But union mounts also allow creating passive translator hierarchies: If there +is a passive translator on a parent node, and further passive translators on +child nodes, the union mount allows the child nodes with the further translator +settings still to be visible after the parent translator has started. + +This could be useful for device nodes for example: let's say we have an +ethernet multiplexer at /dev/veth. Now the virtual subnodes could all be +directly under /dev, i.e. /dev/veth0, /dev/veth1 etc., and explicitely refer to +the main /dev/veth node in the translator command line. It would be more +elegant however to store the virtual nodes direcly below the main multiplexer +node -- /dev/veth/0, /dev/veth/1 etc. + +There are two possible approaches how union mounts could be implemented in the +Hurd. The first one is to let the various translators handle union mounts +internally, i.e. let them present the underlying nodes to the clients in +addition to the actual nodes they export themselfs. This probably can be +implemented as some kind of extension to the existing netfs and diskfs +libraries. + +The other possible apporach is less efficient and probably more tricky, but +probably also more generic: create a special unionmount translator, which +serves as a kind of proxy: setting the union-mounted translator on some +internal node; and at the actual mount location, presenting a union of the +nodes exported by this translator, and the nodes from the underlying file +system. + +The goal of this project is implementing union mounts using either of the +approaches described above. (Though it might be useful initially to prototype +both for comparision.) The ethernet multiplexer shall serve as an example use +case -- any changes necessary to allow using it with the union mount +functionality are also to be considered part of the task. -- cgit v1.2.3 From 0a5c4dc01a5b771fbf56f617d648d7a658ff7c64 Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Mon, 8 Jun 2009 11:29:05 +0200 Subject: Added a comment to wishlist 2. --- hurd/translator/wishlist_2.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/wishlist_2.mdwn b/hurd/translator/wishlist_2.mdwn index 3ea68999..a927db55 100644 --- a/hurd/translator/wishlist_2.mdwn +++ b/hurd/translator/wishlist_2.mdwn @@ -76,6 +76,8 @@ Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html Am I off my rocker, or does an IMAP/POP translator sound like a good idea? It would make your remote mail servers look like local ones. Or what about a translator that makes a mbox format mail spool look like a directory. Can anyone think of a good use for an SMTP translator? +*Definitely: Copy my email in there to send it.* -- [[ArneBab|community/weblogs/ArneBab]] + ## UUEncode How about a UUEncode translator for those places you can only store ASCII. Combine this with a NNTP translator and store your data in someone's Usenet archive. Or since, (as far as I know), there are no size limitations on file names in the Hurd, why not have a filesystem translator whose underlying store is a file name. (Now ls becomes cat). -- cgit v1.2.3 From c444a6ecdb7d27ad0af25426abf9c683c3dc68d3 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 25 Jun 2009 14:37:12 +0200 Subject: hurd/translator_short-circuiting -> hurd/translator/short-circuiting --- hurd.mdwn | 1 - hurd/translator.mdwn | 2 ++ hurd/translator/short-circuiting.mdwn | 59 +++++++++++++++++++++++++++++++++++ hurd/translator_short-circuiting.mdwn | 59 ----------------------------------- 4 files changed, 61 insertions(+), 60 deletions(-) create mode 100644 hurd/translator/short-circuiting.mdwn delete mode 100644 hurd/translator_short-circuiting.mdwn (limited to 'hurd/translator') diff --git a/hurd.mdwn b/hurd.mdwn index 9c9629d5..67ad46e9 100644 --- a/hurd.mdwn +++ b/hurd.mdwn @@ -92,7 +92,6 @@ in the *unstable* branch of the Debian archive. * [[libhello_example]] -- Hurd library example * [[libnetfs]] -- short introductory material * [[IO_Path]] -* [[Translator short-circuiting]] * [[Porting]] * [[Debugging]] * [Hurd Sourcecode Reference](http://www.htu.tugraz.at/~past/hurd/global/): Searchable and browsable index of the code. diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 5c14cfa9..ad019fd4 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -46,6 +46,8 @@ Marcus Brinkmann has written a document about [[documentation/translators]]. Here are some [[hints_about_debugging_translators|debugging/translator]] available. +Read about translator [[short-circuiting]]. + # Existing Translators diff --git a/hurd/translator/short-circuiting.mdwn b/hurd/translator/short-circuiting.mdwn new file mode 100644 index 00000000..01bd6ccb --- /dev/null +++ b/hurd/translator/short-circuiting.mdwn @@ -0,0 +1,59 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +# Translator short-circuiting + +In traditional Unix filesystems contain special files. These are: +symbolic links, character devices, block devices, named pipes, and +named sockets. Naturally the Hurd also support these. + +However, if you take a look at `hurd/io.defs` and `hurd/fs.defs`, you'll +find that there are no RPCs that deal specifically with these types. +Sure, you can get the type of the file through `io_stat` (among other +things), but there are none that e.g. lets you create a symbolic link. + +If you take a look at how glibc implements `symlink`, you'll notice +that all it does is create a new file and sets its passive translator to +`/hurd/symlink DEST`. You can verify this yourself by creating a symlink +with `ln -s foo bar` and print its translator with `showtrans bar`. + +This is how the other special files are implemented as well. The header +`hurd/paths.h` contains a list of paths that are used to implement +special files: + +* `/hurd/symlink` +* `/hurd/chrdev` +* `/hurd/blkdev` +* `/hurd/fifo` +* `/hurd/ifsock` + +So all special files implemented through special purpose translators, +right? Well, actually there are no implementations of either `chrdev` or +`blkdev` in the Hurd. Instead these are implemented purely by /translator +short-circuiting/. + +Translator short-circuiting is when a translator, instead of starting a +passive translator, implements the functionality itself. For instance, +by continuing a file name look up by simply appending the path of a +symlink without returning to the client. + +In fact the translators that are implemented are only used as a default +implementation if the underlying translator does not implement the +functionality itself. + +To make sure that you use one of these translators, you can start it as +an active translator, or you can use a different path from the one in +`hurd/path.h`, e.g. `settrans bar /hurd/./symlink foo`. + +The best example of how short-circuiting is implemented can be found +in `libdiskfs`. Notice how it detects if a translator is a special +file in `diskfs_S_file_set_translator` and marks the node's `stat` +structure. And how it later checks the node's `stat` structure in +`diskfs_S_dir_lookup` and handles special file types appropriately. diff --git a/hurd/translator_short-circuiting.mdwn b/hurd/translator_short-circuiting.mdwn deleted file mode 100644 index 01bd6ccb..00000000 --- a/hurd/translator_short-circuiting.mdwn +++ /dev/null @@ -1,59 +0,0 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -# Translator short-circuiting - -In traditional Unix filesystems contain special files. These are: -symbolic links, character devices, block devices, named pipes, and -named sockets. Naturally the Hurd also support these. - -However, if you take a look at `hurd/io.defs` and `hurd/fs.defs`, you'll -find that there are no RPCs that deal specifically with these types. -Sure, you can get the type of the file through `io_stat` (among other -things), but there are none that e.g. lets you create a symbolic link. - -If you take a look at how glibc implements `symlink`, you'll notice -that all it does is create a new file and sets its passive translator to -`/hurd/symlink DEST`. You can verify this yourself by creating a symlink -with `ln -s foo bar` and print its translator with `showtrans bar`. - -This is how the other special files are implemented as well. The header -`hurd/paths.h` contains a list of paths that are used to implement -special files: - -* `/hurd/symlink` -* `/hurd/chrdev` -* `/hurd/blkdev` -* `/hurd/fifo` -* `/hurd/ifsock` - -So all special files implemented through special purpose translators, -right? Well, actually there are no implementations of either `chrdev` or -`blkdev` in the Hurd. Instead these are implemented purely by /translator -short-circuiting/. - -Translator short-circuiting is when a translator, instead of starting a -passive translator, implements the functionality itself. For instance, -by continuing a file name look up by simply appending the path of a -symlink without returning to the client. - -In fact the translators that are implemented are only used as a default -implementation if the underlying translator does not implement the -functionality itself. - -To make sure that you use one of these translators, you can start it as -an active translator, or you can use a different path from the one in -`hurd/path.h`, e.g. `settrans bar /hurd/./symlink foo`. - -The best example of how short-circuiting is implemented can be found -in `libdiskfs`. Notice how it detects if a translator is a special -file in `diskfs_S_file_set_translator` and marks the node's `stat` -structure. And how it later checks the node's `stat` structure in -`diskfs_S_dir_lookup` and handles special file types appropriately. -- cgit v1.2.3 From c838f31395bb2243fa0bf336069f9eef0c0ea912 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 25 Jun 2009 15:01:15 +0200 Subject: hurd/translator/short-circuiting: Add some further details and explanations. --- hurd/translator/short-circuiting.mdwn | 73 +++++++++++++++++++++-------------- 1 file changed, 45 insertions(+), 28 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/short-circuiting.mdwn b/hurd/translator/short-circuiting.mdwn index 01bd6ccb..064e4abb 100644 --- a/hurd/translator/short-circuiting.mdwn +++ b/hurd/translator/short-circuiting.mdwn @@ -8,52 +8,69 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] -# Translator short-circuiting - -In traditional Unix filesystems contain special files. These are: +In traditional [[Unix]], file systems contain special files. These are: symbolic links, character devices, block devices, named pipes, and named sockets. Naturally the Hurd also support these. However, if you take a look at `hurd/io.defs` and `hurd/fs.defs`, you'll -find that there are no RPCs that deal specifically with these types. +find that there are no [[RPC]]s that deal specifically with these types. Sure, you can get the type of the file through `io_stat` (among other -things), but there are none that e.g. lets you create a symbolic link. +things), but there are none that e.g. lets you create a symbolic link. -If you take a look at how glibc implements `symlink`, you'll notice -that all it does is create a new file and sets its passive translator to +If you take a look at how [[glibc]] implements `symlink`, you'll notice +that all it does is create a new file and set its passive translator to `/hurd/symlink DEST`. You can verify this yourself by creating a symlink -with `ln -s foo bar` and print its translator with `showtrans bar`. +with `ln -s foo bar` and print its passive translator setting with `showtrans +bar`. This is how the other special files are implemented as well. The header `hurd/paths.h` contains a list of paths that are used to implement special files: -* `/hurd/symlink` -* `/hurd/chrdev` -* `/hurd/blkdev` -* `/hurd/fifo` -* `/hurd/ifsock` + * `/hurd/symlink` + * `/hurd/chrdev` + * `/hurd/blkdev` + * `/hurd/fifo` + * `/hurd/ifsock` -So all special files implemented through special purpose translators, -right? Well, actually there are no implementations of either `chrdev` or -`blkdev` in the Hurd. Instead these are implemented purely by /translator -short-circuiting/. +So all special files are implemented through special-purpose translators, +right? Well, actually there aren't even implementations of either `chrdev` or +`blkdev` in the Hurd. Instead these are implemented purely by *translator +short-circuiting*, as well as the others from the above list are, if possible. -Translator short-circuiting is when a translator, instead of starting a -passive translator, implements the functionality itself. For instance, -by continuing a file name look up by simply appending the path of a -symlink without returning to the client. +Translator short-circuiting is when a file system server, instead of starting a +passive translator -- say, for resolving a symbolic link -- implements the +functionality itself. For instance, by continuing a file name look-up by +simply appending the path of a symlink's target without returning to the caller +a `FS_RETRY_*` reply, which is what the [[`symlink`|symlink]] translator would +do. (And that's all the `symlink` translator ever does, by the way.) -In fact the translators that are implemented are only used as a default -implementation if the underlying translator does not implement the -functionality itself. +In fact this list's translators that actually are implemented (`symlink`, +`fifo`, `ifsock`) are only used as a default implementation if the underlying +file system's translator does not implement the functionality itself, i.e., if +it doesn't short-circuit it. -To make sure that you use one of these translators, you can start it as +To make sure that you use one of these translators, that you bypass the +short-circuiting mechanism, you can either start it as an active translator, or you can use a different path from the one in `hurd/path.h`, e.g. `settrans bar /hurd/./symlink foo`. The best example of how short-circuiting is implemented can be found -in `libdiskfs`. Notice how it detects if a translator is a special -file in `diskfs_S_file_set_translator` and marks the node's `stat` -structure. And how it later checks the node's `stat` structure in +in [[`libdiskfs`|libdiskfs]]. Notice how it detects if a translator to store +is a special file in `diskfs_S_file_set_translator` and (if possible) instead +of storing a real passive translator setting on the disk, simply has (for +example) [[`ext2fs`|ext2fs]]' `diskfs_create_symlink_hook` handle this case. + +When reading (resolving), it checks the node's `stat` structure in +`diskfs_S_file_get_translator`, or `diskfs_S_dir_lookup` and handles special file types appropriately. + +Doing this translator short-circuiting has disadvantages: code duplication, or +in general adding code complexity that isn't needed for implementing the same +functionality, but it also has advantages: using functionality that the file +system's data structures nevertheless already provide -- storing symbolic links +in `ext2fs`' inodes instead of storing passive translator settings -- and thus +staying compatible with other operating systems mounting that file system. +Also, this short-circuiting does preserve system resources, as it's no longer +required to start a `symlink` translator for resolving each symbolic link, as +well as it does reduce the [[RPC]] overhead. -- cgit v1.2.3 From 8146471c38766cac0aff5074823aa958dda101b0 Mon Sep 17 00:00:00 2001 From: Carl Fredrik Hammar Date: Thu, 25 Jun 2009 18:30:27 +0200 Subject: hurd/translator/short-circuiting: Polish and elaborate --- hurd/translator/short-circuiting.mdwn | 48 ++++++++++++++++++++++------------- 1 file changed, 30 insertions(+), 18 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/short-circuiting.mdwn b/hurd/translator/short-circuiting.mdwn index 064e4abb..9de9f7b8 100644 --- a/hurd/translator/short-circuiting.mdwn +++ b/hurd/translator/short-circuiting.mdwn @@ -34,34 +34,40 @@ special files: * `/hurd/ifsock` So all special files are implemented through special-purpose translators, -right? Well, actually there aren't even implementations of either `chrdev` or -`blkdev` in the Hurd. Instead these are implemented purely by *translator -short-circuiting*, as well as the others from the above list are, if possible. - -Translator short-circuiting is when a file system server, instead of starting a -passive translator -- say, for resolving a symbolic link -- implements the -functionality itself. For instance, by continuing a file name look-up by -simply appending the path of a symlink's target without returning to the caller -a `FS_RETRY_*` reply, which is what the [[`symlink`|symlink]] translator would -do. (And that's all the `symlink` translator ever does, by the way.) - -In fact this list's translators that actually are implemented (`symlink`, +right? Not quite, instead the translators of this list are often +implemented in their underlying filesystem through *translator +short-circuiting*. In fact, `chrdev` and `blkdev` aren't even implemented +as translators at all. + +Translator short-circuiting is when a file system server implements the +functionality of a passive translator itself, instead of actually starting +it. For instance, all the [[`symlink`|symlink]] translator does is return +a `FS_RETRY_*` reply to the caller. So instead of starting it, the file +system server can simply continue the file name look-up internally by +appending the target of the symbolic link to the path being looked-up. + +This way, we can skip starting the `symlink` translator, skip retrying +the look-up on the newly started translator, and we might also skip a +retry to the same file system server again, if the target of the symbolic +link is in it. + +In fact, the list's translators that actually are implemented (`symlink`, `fifo`, `ifsock`) are only used as a default implementation if the underlying file system's translator does not implement the functionality itself, i.e., if it doesn't short-circuit it. -To make sure that you use one of these translators, that you bypass the +To make sure that you use one of these translators, there by bypassing the short-circuiting mechanism, you can either start it as -an active translator, or you can use a different path from the one in +an active translator, or use a different path from the one in `hurd/path.h`, e.g. `settrans bar /hurd/./symlink foo`. The best example of how short-circuiting is implemented can be found in [[`libdiskfs`|libdiskfs]]. Notice how it detects if a translator to store -is a special file in `diskfs_S_file_set_translator` and (if possible) instead -of storing a real passive translator setting on the disk, simply has (for -example) [[`ext2fs`|ext2fs]]' `diskfs_create_symlink_hook` handle this case. +is a special file in `diskfs_S_file_set_translator` and instead +of storing a real passive translator setting on the disk, stores it as a +symlink node (using `diskfs_create_symlink_hook` or a generic implementation). -When reading (resolving), it checks the node's `stat` structure in +In later look-ups to the node, it checks the node's `stat` structure in `diskfs_S_file_get_translator`, or `diskfs_S_dir_lookup` and handles special file types appropriately. @@ -71,6 +77,12 @@ functionality, but it also has advantages: using functionality that the file system's data structures nevertheless already provide -- storing symbolic links in `ext2fs`' inodes instead of storing passive translator settings -- and thus staying compatible with other operating systems mounting that file system. + Also, this short-circuiting does preserve system resources, as it's no longer required to start a `symlink` translator for resolving each symbolic link, as well as it does reduce the [[RPC]] overhead. + +It can also confuse users who expect the passive translator to start. +For instance, if a user notices that [[`symlink`|symlink]]'s code is +lacking some functionality, but that it unexpectedly works when the user +tries to run it. -- cgit v1.2.3 From 1d4a7349a0c3e041ea53cc92eb15a1d6716126e2 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 8 Jul 2009 15:59:20 +0200 Subject: hurd/translator/unionfs: Link to MHDDFS. --- hurd/translator/unionfs.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 6f845102..d2631e44 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -23,3 +23,5 @@ is included in the section entitled # External Links * [*Unioning file systems for Linux*](http://valerieaurora.org/union/) + + * [MHDDFS](http://mhddfs.uvw.ru/) -- cgit v1.2.3 From 4df575a930a0341e53ff2236f68aeeaf6136b8d1 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 8 Jul 2009 16:20:46 +0200 Subject: hurd/translator/unionfs: Undo previous change and instead link to the FUSE page about unionfs. --- hurd/translator/unionfs.mdwn | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index d2631e44..9f1fa169 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -24,4 +24,5 @@ is included in the section entitled * [*Unioning file systems for Linux*](http://valerieaurora.org/union/) - * [MHDDFS](http://mhddfs.uvw.ru/) + * [FUSE page about + `unionfs`](http://sourceforge.net/apps/mediawiki/fuse/index.php?title=UnionFileSystems) -- cgit v1.2.3 From 07cdb3587fc5deed912b63a3ec35fe9fc0876bc1 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sun, 2 Aug 2009 12:52:06 +0200 Subject: hurd/translator/exec: New. --- hurd/translator.mdwn | 1 + hurd/translator/exec.mdwn | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 hurd/translator/exec.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index ad019fd4..4995a005 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -52,6 +52,7 @@ Read about translator [[short-circuiting]]. # Existing Translators * [[auth]] +* [[exec]] * [[pfinet]] * [[pflocal]] * [[hostmux]] diff --git a/hurd/translator/exec.mdwn b/hurd/translator/exec.mdwn new file mode 100644 index 00000000..d5b6bfbc --- /dev/null +++ b/hurd/translator/exec.mdwn @@ -0,0 +1,12 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +The *exec* server, listening on `/servers/exec`, is responsible for +preparing the execution of processes. -- cgit v1.2.3 From b6fe6dfb4e338849ccdd38c33e12c0311878a2b9 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 8 Aug 2009 21:31:36 +0200 Subject: hurd/translator/unionfs: Update the sources link. --- hurd/translator/unionfs.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 9f1fa169..b177b874 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] - +Source repository: -- cgit v1.2.3 From 127340741f01e7984aa48b637946b79e334b78b4 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Mon, 28 Sep 2009 18:08:36 +0300 Subject: Add the short documentation of unionmount. --- hurd/translator/unionfs.mdwn | 125 ++++++++++++++++++++++++++++++++++++++-- hurd/translator/unionmount.mdwn | 51 +--------------- 2 files changed, 122 insertions(+), 54 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index b177b874..93a3a385 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -8,18 +8,135 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +# `unionfs` + Source repository: +# `unionmount` + +... is a special mode of `unionfs`. + +## Project Idea + +When setting a translator on Hurd -- similar to mounting a file system on UNIX +-- the new node(s) exported by the translator are obscuring the original node +where the translator is set, and any nodes below it in the directory tree. The +translator itself can access the underlying node (which is a very nice feature, +as it allows translators presenting the contents of the node in a different +format); but it's no longer accessible from the "outside". + +Plan9 has a feature where a file system can be mounted in union mode: the new +file system doesn't obscure the mount point in this case, but instead the +contents are combined. (This feature has also been under discussion in Linux +for a couple of years now, under the label "VFS-based union mounts".) + +This kind of union mounts is generally useful, as it's sometimes more +convenient than unioning existing filesystem locations with unionfs -- it's not +necessary to mount a file system that is to be unioned at some external +location first: just union-mount it directly at the target location. + +But union mounts also allow creating passive translator hierarchies: If there +is a passive translator on a parent node, and further passive translators on +child nodes, the union mount allows the child nodes with the further translator +settings still to be visible after the parent translator has started. + +This could be useful for device nodes for example: let's say we have an +ethernet multiplexer at /dev/veth. Now the virtual subnodes could all be +directly under /dev, i.e. /dev/veth0, /dev/veth1 etc., and explicitely refer to +the main /dev/veth node in the translator command line. It would be more +elegant however to store the virtual nodes direcly below the main multiplexer +node -- /dev/veth/0, /dev/veth/1 etc. + +There are two possible approaches how union mounts could be implemented in the +Hurd. The first one is to let the various translators handle union mounts +internally, i.e. let them present the underlying nodes to the clients in +addition to the actual nodes they export themselfs. This probably can be +implemented as some kind of extension to the existing netfs and diskfs +libraries. + +The other possible apporach is less efficient and probably more tricky, but +probably also more generic: create a special unionmount translator, which +serves as a kind of proxy: setting the union-mounted translator on some +internal node; and at the actual mount location, presenting a union of the +nodes exported by this translator, and the nodes from the underlying file +system. + +The goal of this project is implementing union mounts using either of the +approaches described above. (Though it might be useful initially to prototype +both for comparision.) The ethernet multiplexer shall serve as an example use +case -- any changes necessary to allow using it with the union mount +functionality are also to be considered part of the task. + +## Implementation + +### Source + +Union mounts are currently implemented as two additional command line +options of the `unionfs` translator. This implementation resides in +the master-unionmount branch of the unionfs git repository. To +checkout the code, do the following: + + $ git clone git://git.sv.gnu.org/hurd/unionfs.git + $ cd unionfs + $ git checkout -b master-unionmount + $ git pull origin master-unionmount + +You can skip the checkout step if you don't mind that the +`master-unionmount` branch gets merged into the `master` branch. + +### Short Documentation + +The `unionmount` project adds options "--mount" and "--no-mount" to +`unionfs` (short versions: "-t" and "-n" correspondingly). Both +options are used to implement union-mounting, but the first option +will create a *transparent* union mount, while the second option will +create a *nontransparent* union mount. + +One can create a transparent union mount with the following command: + + $ settrans -a unionfs --underlying --mount= + +When running + + $ fsysopts + +one will see the information about the ``, not the +`unionfs` translator. Although this might seem the only natural way +to do union mounts, one must keep in mind that such transparency +deprives one of the possibility to modify the unioned virtual +filesystem exported by `unionfs` at run-time (via `fsysopts`). + +One can create a nontransparent union mount with the following command: + + $ settrans -a unionfs --underlying --no-mount= + +When running + + $ fsysopts + +one will see the information about the `unionfs` translator. Although +this way allows modifying the contents of the unioned filesystem +exported by `unionfs` at runtime, the access to `` is +blocked. + +The filesystem exported by the *mountee* (``) is actually +treated like a normal filesystem within `unionfs`, which means that +one can assign priorities to the *mountee* to achieve the desired +order of layering of the unioned directories. The following will make +`unionfs` query the underlying filesystem first and then the +*mountee*: + + $ settrans -a unionfs --priority=2 --underlying --priority=1 --mount= + +Note that the same functionality can also be achieved by assigning +priority 1 to the underlying filesystem and keeping the priority of +the *mountee* at 0. # `stowfs` ... is a special mode of `unionfs`. -# See Also - - * [[unionmount]] - # External Links * [*Unioning file systems for Linux*](http://valerieaurora.org/union/) diff --git a/hurd/translator/unionmount.mdwn b/hurd/translator/unionmount.mdwn index 47a3d85d..65f09719 100644 --- a/hurd/translator/unionmount.mdwn +++ b/hurd/translator/unionmount.mdwn @@ -8,53 +8,4 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] -[[!meta title="Union Mounts"]] - -When setting a translator on Hurd -- similar to mounting a file system on UNIX --- the new node(s) exported by the translator are obscuring the original node -where the translator is set, and any nodes below it in the directory tree. The -translator itself can access the underlying node (which is a very nice feature, -as it allows translators presenting the contents of the node in a different -format); but it's no longer accessible from the "outside". - -Plan9 has a feature where a file system can be mounted in union mode: the new -file system doesn't obscure the mount point in this case, but instead the -contents are combined. (This feature has also been under discussion in Linux -for a couple of years now, under the label "VFS-based union mounts".) - -This kind of union mounts is generally useful, as it's sometimes more -convenient than unioning existing filesystem locations with unionfs -- it's not -necessary to mount a file system that is to be unioned at some external -location first: just union-mount it directly at the target location. - -But union mounts also allow creating passive translator hierarchies: If there -is a passive translator on a parent node, and further passive translators on -child nodes, the union mount allows the child nodes with the further translator -settings still to be visible after the parent translator has started. - -This could be useful for device nodes for example: let's say we have an -ethernet multiplexer at /dev/veth. Now the virtual subnodes could all be -directly under /dev, i.e. /dev/veth0, /dev/veth1 etc., and explicitely refer to -the main /dev/veth node in the translator command line. It would be more -elegant however to store the virtual nodes direcly below the main multiplexer -node -- /dev/veth/0, /dev/veth/1 etc. - -There are two possible approaches how union mounts could be implemented in the -Hurd. The first one is to let the various translators handle union mounts -internally, i.e. let them present the underlying nodes to the clients in -addition to the actual nodes they export themselfs. This probably can be -implemented as some kind of extension to the existing netfs and diskfs -libraries. - -The other possible apporach is less efficient and probably more tricky, but -probably also more generic: create a special unionmount translator, which -serves as a kind of proxy: setting the union-mounted translator on some -internal node; and at the actual mount location, presenting a union of the -nodes exported by this translator, and the nodes from the underlying file -system. - -The goal of this project is implementing union mounts using either of the -approaches described above. (Though it might be useful initially to prototype -both for comparision.) The ethernet multiplexer shall serve as an example use -case -- any changes necessary to allow using it with the union mount -functionality are also to be considered part of the task. +[[!meta redir=unionfs]] -- cgit v1.2.3 From ed59faf772c24131e60444392b3cadcb9f6cb473 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Mon, 28 Sep 2009 18:18:18 +0300 Subject: Add a warning about the problem with syncing in unionfs. --- hurd/translator/unionfs.mdwn | 3 +++ 1 file changed, 3 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 93a3a385..407fa134 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -12,6 +12,9 @@ is included in the section entitled Source repository: +Right now there are some problems with syncing, so please be aware +that it might not work as expected. + # `unionmount` ... is a special mode of `unionfs`. -- cgit v1.2.3 From 93ff33abc6c96b5d528030a2fc438b458846ae47 Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Tue, 29 Sep 2009 08:35:11 +0200 Subject: unionfs: Added a short note what it does. --- hurd/translator/unionfs.mdwn | 2 ++ 1 file changed, 2 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 407fa134..42ecdce7 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -10,6 +10,8 @@ is included in the section entitled # `unionfs` +*Unionfs allows you to simply union one directory or translator into another one, so you see the files of both of them side by side.* + Source repository: Right now there are some problems with syncing, so please be aware -- cgit v1.2.3 From 50845c8ca740ce1609d24c8e17dc8196e53aed40 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 29 Sep 2009 21:05:47 +0200 Subject: Tiny improvement w.r.t. unionmount redir. --- hurd/translator.mdwn | 1 - hurd/translator/unionfs.mdwn | 1 + hurd/translator/unionmount.mdwn | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 4995a005..ea420a72 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -73,7 +73,6 @@ Read about translator [[short-circuiting]]. * [[cvsfs]] * [[tmpfs]] * [[procfs]] -* [[unionmount]] * ... diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 42ecdce7..331ad19f 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -17,6 +17,7 @@ Source repository: Right now there are some problems with syncing, so please be aware that it might not work as expected. + # `unionmount` ... is a special mode of `unionfs`. diff --git a/hurd/translator/unionmount.mdwn b/hurd/translator/unionmount.mdwn index 65f09719..7384afc7 100644 --- a/hurd/translator/unionmount.mdwn +++ b/hurd/translator/unionmount.mdwn @@ -8,4 +8,4 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] -[[!meta redir=unionfs]] +[[!meta redir=unionfs#unionmount]] -- cgit v1.2.3 From f442694a9ede423aeca68935b0b2679640254f12 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Wed, 30 Sep 2009 18:08:55 +0300 Subject: Added some information about nsmux. --- hurd/translator.mdwn | 1 + hurd/translator/writing/nsmux.mdwn | 106 +++++++++++++++++++++++++++++++++++++ 2 files changed, 107 insertions(+) create mode 100644 hurd/translator/writing/nsmux.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index ea420a72..cfb1f7db 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -73,6 +73,7 @@ Read about translator [[short-circuiting]]. * [[cvsfs]] * [[tmpfs]] * [[procfs]] +* [[nsmux|translator/writing/nsmux]] * ... diff --git a/hurd/translator/writing/nsmux.mdwn b/hurd/translator/writing/nsmux.mdwn new file mode 100644 index 00000000..735c1fde --- /dev/null +++ b/hurd/translator/writing/nsmux.mdwn @@ -0,0 +1,106 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +# nsmux + +`nsmux` implements the simplest use-case of namespace-based translator +selection (see below). + +## Source + +`nsmux` translator can be obtained with the following command: + + $ git clone git://github.com/scolobb/nsmux.git + +`filter` translator can be obtained with the following command: + + $ git clone git://github.com/scolobb/filter.git + +The filter is not yet working. + +It is highly probable that soon the code will be moved to Savannah. + +## Namespace-based Translator Selection + +Namespace-based translator selection is the special technique of using +"magic" filenames for both accessing the file and setting translators +on it. + +A "magic" filename is a filename which contains an unescaped sequence +of two commas: ",,". This sequence can be escaped by adding another +comma: ",,,". In the magic filename the part up to the first double +commas is interpreted as the filename itself; the remaining segments +into which the string is split by occurrences of ",," are treated as +names of translators located under `/hurd/`. + +The simplest advantage before traditional way of setting +translators is shown in the following examples. Compare this + + $ settrans -a file translator1 + $ settrans -a file translator2 + $ cat file + +to this: + + $ cat file,,translator1,,translator2 + +One simple command versus three more lengthy ones is an obvious +improvement. However, this advantage is not the only one and, +probably, not even the most important. + +What is a good candidate for the most important advantage is that +translators requested via "magic" filenames are session-bound. In +other words, by running `cat file,,translator` we set a translator +visible *only* to `cat`, while the original file remains untranslated. +Such session-specific translators are called **dynamic** and there is +no (theoretical) way for a client to get a port to a dynamic +translator requested by another client. + +Obviously, dynamic translators can be stacked, similarly to static +translators. Also, dynamic translator stacks may reside on top of +static translator stacks. + +An important operation of namespace-based translator selection is +*filtering*. Filtering basically consists in looking up a translator +by name in the stack and ignoring translators located on top of it. +Note that filtering does not mean dropping some translators: in the +current implementation a filter is expected to be a normal dynamic +translator, included in the dynamic translator stack similarly to +other translators. + +An important detail is that filtering is not limited to dynamic +translator stacks: a filter should be able to descend into static +translator stacks as well. + +Although the concept of filtering may seem purely abstract in the +simplest use-case of setting dynamic translators on top of files, the +situation changes greatly when dynamic translator stacks on top of +directories are considered. In this case, the implementation of +namespace-based translator selection is expected to be able to +propagate the dynamic translators associated with the directory down +the directory structure. That is, all files located under a directory +opened with magic syntax, are expected to be translated by the same +set of translators. In this case having the possibility to +specifically discard some of the translators set up on top of certain +files is very useful. + +Note that the implementation of propagation of dynamic translators +down directories is not fully conceived at the moment. The +fundamental problem is distinguishing between situations when the +dynamic translators are to be set on the underlying files of the +directory or on the directory itself. + +## Currently Implemented + +Currently there a working (though not heavily tested) implementation +of the simplest use-case of namespace-based translator selection in +the form of translator `nsmux`. The filter is partially implemented +and this is the immediate goal. Propagating translators down +directories is the next objective. -- cgit v1.2.3 From 1ee04b164bb6c593387500bbf2b0dabeef3a9d36 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Wed, 30 Sep 2009 19:33:28 +0300 Subject: Add the usage information about nsmux. --- hurd/translator/writing/nsmux.mdwn | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/writing/nsmux.mdwn b/hurd/translator/writing/nsmux.mdwn index 735c1fde..c07a30bd 100644 --- a/hurd/translator/writing/nsmux.mdwn +++ b/hurd/translator/writing/nsmux.mdwn @@ -13,6 +13,17 @@ is included in the section entitled `nsmux` implements the simplest use-case of namespace-based translator selection (see below). +To use `nsmux` do the following: + + $ settrans -a nsmux + +After this operation `` will be a mirror of `` with +namespace-based translator selection functionality enabled. + +Please note that due to some details `nsmux` may complain a lot when +run as a normal user. This matter is the most urgent on the TODO +list. + ## Source `nsmux` translator can be obtained with the following command: -- cgit v1.2.3 From f85b511c46e479410f310d0763cc8fc4fb79326b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Thu, 1 Oct 2009 09:05:16 +0200 Subject: Put nsmux in line with the other translator pages. --- community/gsoc/2008.mdwn | 3 +- hurd/translator.mdwn | 2 +- hurd/translator/nsmux.mdwn | 117 +++++++++++++++++++++++++++++++++++++ hurd/translator/writing/nsmux.mdwn | 117 ------------------------------------- 4 files changed, 120 insertions(+), 119 deletions(-) create mode 100644 hurd/translator/nsmux.mdwn delete mode 100644 hurd/translator/writing/nsmux.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/2008.mdwn b/community/gsoc/2008.mdwn index d7b467bb..d994f2b0 100644 --- a/community/gsoc/2008.mdwn +++ b/community/gsoc/2008.mdwn @@ -23,7 +23,8 @@ did a great job! vacation). The project however was hampered by various misunderstandings, wrong assumptions, and several major redesigns during the course of the work -- which is probably more our fault than the student's. In the end, though, he - completed nsmux (the main namespace proxy handling the magic filename + completed [[hurd/translator/nsmux]] (the main namespace proxy handling the + magic filename lookups, running dynamic translators on demand); he still works on finishing the translator stack filtering necessary to implement some of the desired functionality (accessing files while skipping existing translators). diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index cfb1f7db..158f53d7 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -73,7 +73,7 @@ Read about translator [[short-circuiting]]. * [[cvsfs]] * [[tmpfs]] * [[procfs]] -* [[nsmux|translator/writing/nsmux]] +* [[nsmux]] * ... diff --git a/hurd/translator/nsmux.mdwn b/hurd/translator/nsmux.mdwn new file mode 100644 index 00000000..c07a30bd --- /dev/null +++ b/hurd/translator/nsmux.mdwn @@ -0,0 +1,117 @@ +[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +# nsmux + +`nsmux` implements the simplest use-case of namespace-based translator +selection (see below). + +To use `nsmux` do the following: + + $ settrans -a nsmux + +After this operation `` will be a mirror of `` with +namespace-based translator selection functionality enabled. + +Please note that due to some details `nsmux` may complain a lot when +run as a normal user. This matter is the most urgent on the TODO +list. + +## Source + +`nsmux` translator can be obtained with the following command: + + $ git clone git://github.com/scolobb/nsmux.git + +`filter` translator can be obtained with the following command: + + $ git clone git://github.com/scolobb/filter.git + +The filter is not yet working. + +It is highly probable that soon the code will be moved to Savannah. + +## Namespace-based Translator Selection + +Namespace-based translator selection is the special technique of using +"magic" filenames for both accessing the file and setting translators +on it. + +A "magic" filename is a filename which contains an unescaped sequence +of two commas: ",,". This sequence can be escaped by adding another +comma: ",,,". In the magic filename the part up to the first double +commas is interpreted as the filename itself; the remaining segments +into which the string is split by occurrences of ",," are treated as +names of translators located under `/hurd/`. + +The simplest advantage before traditional way of setting +translators is shown in the following examples. Compare this + + $ settrans -a file translator1 + $ settrans -a file translator2 + $ cat file + +to this: + + $ cat file,,translator1,,translator2 + +One simple command versus three more lengthy ones is an obvious +improvement. However, this advantage is not the only one and, +probably, not even the most important. + +What is a good candidate for the most important advantage is that +translators requested via "magic" filenames are session-bound. In +other words, by running `cat file,,translator` we set a translator +visible *only* to `cat`, while the original file remains untranslated. +Such session-specific translators are called **dynamic** and there is +no (theoretical) way for a client to get a port to a dynamic +translator requested by another client. + +Obviously, dynamic translators can be stacked, similarly to static +translators. Also, dynamic translator stacks may reside on top of +static translator stacks. + +An important operation of namespace-based translator selection is +*filtering*. Filtering basically consists in looking up a translator +by name in the stack and ignoring translators located on top of it. +Note that filtering does not mean dropping some translators: in the +current implementation a filter is expected to be a normal dynamic +translator, included in the dynamic translator stack similarly to +other translators. + +An important detail is that filtering is not limited to dynamic +translator stacks: a filter should be able to descend into static +translator stacks as well. + +Although the concept of filtering may seem purely abstract in the +simplest use-case of setting dynamic translators on top of files, the +situation changes greatly when dynamic translator stacks on top of +directories are considered. In this case, the implementation of +namespace-based translator selection is expected to be able to +propagate the dynamic translators associated with the directory down +the directory structure. That is, all files located under a directory +opened with magic syntax, are expected to be translated by the same +set of translators. In this case having the possibility to +specifically discard some of the translators set up on top of certain +files is very useful. + +Note that the implementation of propagation of dynamic translators +down directories is not fully conceived at the moment. The +fundamental problem is distinguishing between situations when the +dynamic translators are to be set on the underlying files of the +directory or on the directory itself. + +## Currently Implemented + +Currently there a working (though not heavily tested) implementation +of the simplest use-case of namespace-based translator selection in +the form of translator `nsmux`. The filter is partially implemented +and this is the immediate goal. Propagating translators down +directories is the next objective. diff --git a/hurd/translator/writing/nsmux.mdwn b/hurd/translator/writing/nsmux.mdwn deleted file mode 100644 index c07a30bd..00000000 --- a/hurd/translator/writing/nsmux.mdwn +++ /dev/null @@ -1,117 +0,0 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -# nsmux - -`nsmux` implements the simplest use-case of namespace-based translator -selection (see below). - -To use `nsmux` do the following: - - $ settrans -a nsmux - -After this operation `` will be a mirror of `` with -namespace-based translator selection functionality enabled. - -Please note that due to some details `nsmux` may complain a lot when -run as a normal user. This matter is the most urgent on the TODO -list. - -## Source - -`nsmux` translator can be obtained with the following command: - - $ git clone git://github.com/scolobb/nsmux.git - -`filter` translator can be obtained with the following command: - - $ git clone git://github.com/scolobb/filter.git - -The filter is not yet working. - -It is highly probable that soon the code will be moved to Savannah. - -## Namespace-based Translator Selection - -Namespace-based translator selection is the special technique of using -"magic" filenames for both accessing the file and setting translators -on it. - -A "magic" filename is a filename which contains an unescaped sequence -of two commas: ",,". This sequence can be escaped by adding another -comma: ",,,". In the magic filename the part up to the first double -commas is interpreted as the filename itself; the remaining segments -into which the string is split by occurrences of ",," are treated as -names of translators located under `/hurd/`. - -The simplest advantage before traditional way of setting -translators is shown in the following examples. Compare this - - $ settrans -a file translator1 - $ settrans -a file translator2 - $ cat file - -to this: - - $ cat file,,translator1,,translator2 - -One simple command versus three more lengthy ones is an obvious -improvement. However, this advantage is not the only one and, -probably, not even the most important. - -What is a good candidate for the most important advantage is that -translators requested via "magic" filenames are session-bound. In -other words, by running `cat file,,translator` we set a translator -visible *only* to `cat`, while the original file remains untranslated. -Such session-specific translators are called **dynamic** and there is -no (theoretical) way for a client to get a port to a dynamic -translator requested by another client. - -Obviously, dynamic translators can be stacked, similarly to static -translators. Also, dynamic translator stacks may reside on top of -static translator stacks. - -An important operation of namespace-based translator selection is -*filtering*. Filtering basically consists in looking up a translator -by name in the stack and ignoring translators located on top of it. -Note that filtering does not mean dropping some translators: in the -current implementation a filter is expected to be a normal dynamic -translator, included in the dynamic translator stack similarly to -other translators. - -An important detail is that filtering is not limited to dynamic -translator stacks: a filter should be able to descend into static -translator stacks as well. - -Although the concept of filtering may seem purely abstract in the -simplest use-case of setting dynamic translators on top of files, the -situation changes greatly when dynamic translator stacks on top of -directories are considered. In this case, the implementation of -namespace-based translator selection is expected to be able to -propagate the dynamic translators associated with the directory down -the directory structure. That is, all files located under a directory -opened with magic syntax, are expected to be translated by the same -set of translators. In this case having the possibility to -specifically discard some of the translators set up on top of certain -files is very useful. - -Note that the implementation of propagation of dynamic translators -down directories is not fully conceived at the moment. The -fundamental problem is distinguishing between situations when the -dynamic translators are to be set on the underlying files of the -directory or on the directory itself. - -## Currently Implemented - -Currently there a working (though not heavily tested) implementation -of the simplest use-case of namespace-based translator selection in -the form of translator `nsmux`. The filter is partially implemented -and this is the immediate goal. Propagating translators down -directories is the next objective. -- cgit v1.2.3 From 668211b95b6fcbe198c6f1d032acf22921693609 Mon Sep 17 00:00:00 2001 From: Sergiu Ivanov Date: Tue, 27 Oct 2009 22:27:44 +0200 Subject: Update the information about the sources of nsmux and filter. Now that both translators have been incorporated into the incubator.git repository, the users are advised to obtain their sources from Savannah. --- hurd/translator/nsmux.mdwn | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/nsmux.mdwn b/hurd/translator/nsmux.mdwn index c07a30bd..61f3eebd 100644 --- a/hurd/translator/nsmux.mdwn +++ b/hurd/translator/nsmux.mdwn @@ -26,18 +26,24 @@ list. ## Source -`nsmux` translator can be obtained with the following command: +`nsmux` translator can be obtained with the following series of +commands: - $ git clone git://github.com/scolobb/nsmux.git + $ git clone git://git.sv.gnu.org/hurd/incubator.git nsmux + $ cd nsmux/ + $ git fetch origin nsmux + $ git checkout -b nsmux FETCH_HEAD -`filter` translator can be obtained with the following command: +`filter` translator can be obtained with the following series of +commands: - $ git clone git://github.com/scolobb/filter.git + $ git clone git://git.sv.gnu.org/hurd/incubator.git filter + $ cd filter/ + $ git fetch origin filter + $ git checkout -b filter FETCH_HEAD The filter is not yet working. -It is highly probable that soon the code will be moved to Savannah. - ## Namespace-based Translator Selection Namespace-based translator selection is the special technique of using -- cgit v1.2.3 From ae465c6da2b6a0137af040d2ee45ebbd87405a6d Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 27 Oct 2009 23:41:28 +0100 Subject: Simplify Git commands. --- hurd/translator/nsmux.mdwn | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/nsmux.mdwn b/hurd/translator/nsmux.mdwn index 61f3eebd..d156772b 100644 --- a/hurd/translator/nsmux.mdwn +++ b/hurd/translator/nsmux.mdwn @@ -31,16 +31,14 @@ commands: $ git clone git://git.sv.gnu.org/hurd/incubator.git nsmux $ cd nsmux/ - $ git fetch origin nsmux - $ git checkout -b nsmux FETCH_HEAD + $ git checkout -b nsmux origin/nsmux `filter` translator can be obtained with the following series of commands: $ git clone git://git.sv.gnu.org/hurd/incubator.git filter $ cd filter/ - $ git fetch origin filter - $ git checkout -b filter FETCH_HEAD + $ git checkout -b filter origin/filter The filter is not yet working. -- cgit v1.2.3 From 1ead889249f9b8c2ea0095e96e3bfd9b30d4b9f2 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Wed, 30 Dec 2009 00:37:13 +0100 Subject: typo --- hurd/translator/storeio.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/storeio.mdwn b/hurd/translator/storeio.mdwn index e4482e65..8e26a959 100644 --- a/hurd/translator/storeio.mdwn +++ b/hurd/translator/storeio.mdwn @@ -27,4 +27,4 @@ You can even `ungzip` files on the fly (`bunzip2` is available as well): You can use the *typed store*, to create filter chains (of course this example is kind of useless since you could use the `gunzip` store directly): - settrans -ca node /hurd/storeio -T type gunzip:file:foo.gz + settrans -ca node /hurd/storeio -T typed gunzip:file:foo.gz -- cgit v1.2.3 From 908f9f13e8b7fdf48310c5cd1374093866a36ed2 Mon Sep 17 00:00:00 2001 From: Samuel Thibault Date: Tue, 12 Jan 2010 01:40:58 +0100 Subject: Add a related fix from Zheng Da --- hurd/translator/tmpfs/notes_various.mdwn | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index 01dc87d2..417c79be 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -212,3 +212,7 @@ is included in the section entitled seems something more broke in the meantime :-( ah, right... but I the main problem was some other change (or maybe it never really worked, not sure anymore) + +--- + + http://savannah.gnu.org/bugs/?26751 -- cgit v1.2.3 From ba8795f97e621475c8ff7a45ab5845d431828947 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 12 Jan 2010 14:04:17 +0100 Subject: hurd/translator/tmpfs/notes_various: Use shortcut syntax. --- hurd/translator/tmpfs/notes_various.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/notes_various.mdwn b/hurd/translator/tmpfs/notes_various.mdwn index 417c79be..5e4e991c 100644 --- a/hurd/translator/tmpfs/notes_various.mdwn +++ b/hurd/translator/tmpfs/notes_various.mdwn @@ -215,4 +215,4 @@ is included in the section entitled --- - http://savannah.gnu.org/bugs/?26751 +[[!GNU_Savannah_bug 26751]] -- cgit v1.2.3 From 178c1c37ab90f9693785af0a876ca816d8b7733e Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 10 Mar 2010 08:42:45 +0100 Subject: community/gsoc: Clean up a bit. community/gsoc/2009: Tidy up. hurd/translator/unionfs: Mention that unionmount has been worked on as a GSoC 2009 project. --- community/gsoc.mdwn | 6 +++-- community/gsoc/2009.mdwm | 53 -------------------------------------------- community/gsoc/2009.mdwn | 23 +++++++++++++++++++ hurd/translator/unionfs.mdwn | 6 ++++- 4 files changed, 32 insertions(+), 56 deletions(-) delete mode 100644 community/gsoc/2009.mdwm create mode 100644 community/gsoc/2009.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc.mdwn b/community/gsoc.mdwn index aa5a7c5b..1d93b37c 100644 --- a/community/gsoc.mdwn +++ b/community/gsoc.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -27,7 +28,8 @@ getting one slot each year. In 2008 we successfully participated on our own, no longer within the GNU project. Read about our five students' success on the [[2008]] page. -In 2009 we participated under the GNU umbrella with one slot again. +The next year, we participated under the GNU umbrella with one slot again. +Read about it on the [[2009]] page. # Joining in diff --git a/community/gsoc/2009.mdwm b/community/gsoc/2009.mdwm deleted file mode 100644 index ce3b26fb..00000000 --- a/community/gsoc/2009.mdwm +++ /dev/null @@ -1,53 +0,0 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!meta title="Google Summer of Code"]] - -# 2009 - -The GNU Hurd project this year unfortunately is not in the list of accepted -mentoring organizations. - -However, don't despair! This doesn't mean that you'd not be allowed to work on -your favorite GNU Hurd project. For one, there's the possibility that a slot -for your project can be allocated under the [auspices of the GNU -project](http://www.gnu.org/software/soc-projects/). Second, we're of course -always open to introducing newcomers to the world of the GNU Hurd outside of -any Google Summer of whatever project. Just pick a task from the list pointed -to below on this page and get in touch with us! - - - -The applications have been evaluated and the following student has -been accepted: - - * [[Sergiu Ivanov|scolobb]] - - -# History - -2006 and 2007 we participated in GSoC under the umbrella of the GNU project, -getting one slot each year. - - - -In 2008 we successfully participated on our own, no longer within the GNU -project. Read about our five students' success on the [[2008]] page. - - -# Joining in - -If these successes got you interested in contributing some larger part yourself - -in your free time or maybe in next years Google Summer of Code - -please have a look at our [[project_ideas]] and read up about [[contributing]]. - -Also, feel free to ask your questions at one of our -[[regular_IRC_meetings|IRC#regular_meetings]]. diff --git a/community/gsoc/2009.mdwn b/community/gsoc/2009.mdwn new file mode 100644 index 00000000..6efeb839 --- /dev/null +++ b/community/gsoc/2009.mdwn @@ -0,0 +1,23 @@ +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled +[[GNU Free Documentation License|/fdl]]."]]"""]] + +[[!meta title="Google Summer of Code 2009"]] + +The GNU Hurd project unfortunately was not in the list of accepted +mentoring organizations. + +We did get one slot from the GNU project's. + +The applications have been evaluated and the following student has +been accepted: + + * [[Sergiu Ivanov|scolobb]] -- working on a *[[VFS-style union + mount|hurd/translator/unionmount]]* functionality; [Google's project + page](http://socghop.appspot.com/gsoc/student_project/show/google/gsoc2009/karlberry/t124022551214). diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index 331ad19f..d1e3868b 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -73,6 +74,9 @@ both for comparision.) The ethernet multiplexer shall serve as an example use case -- any changes necessary to allow using it with the union mount functionality are also to be considered part of the task. +[[Sergiu Ivanov|scolobb]] has been working on this as a [[Google Summer of Code +2009 project|community/gsoc/2009]]. + ## Implementation ### Source -- cgit v1.2.3 From 5ce04abf3d656e138652d22683ced20231eb8015 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 20 Jul 2010 08:09:28 +0200 Subject: hurd/translator/ext2fs: Add link to ``Second Extended File System'' documentation. --- hurd/translator/ext2fs.mdwn | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/ext2fs.mdwn b/hurd/translator/ext2fs.mdwn index 441fb00f..69d035db 100644 --- a/hurd/translator/ext2fs.mdwn +++ b/hurd/translator/ext2fs.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,11 +9,20 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +# Issues + The `ext2fs` translator from the upstream Hurd code base can only handle file systems with sizes of less than roughly 2 GiB. +[[!tag open_issue_hurd]] + A patch exists to lift this limitation (and is being used in the [[Debian_GNU/Hurd_distribution|running/debian]]), but it introduces another incompatibility: `ext2fs` then only supports block sizes of 4096 bytes. Smaller block sizes are commonly automatically selected by `mke2fs` when using small backend stores, like floppy devices. + + +# Documentation + + -- cgit v1.2.3 From 5e78541e82cea5718a36424aca5b16070466d32c Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 23 Jul 2010 22:20:07 +0200 Subject: hurd/translator/pfinet/ipv6: No support for IOCTLs. --- hurd/translator/pfinet/ipv6.mdwn | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 996ffd6d..28586620 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -51,6 +52,11 @@ Quite the same, but with static IPv6 address assignment: -A 2001:4b88:10e4:0:216:3eff:feff:4223/64 -G 2001:4b88:10e4::1 +# Missing Functionality + +Amongst other things, support for [[IOCTL]]s is missing. + + # Binaries For your convenience -- this work is not yet available in the Debian packages -- cgit v1.2.3 From b2971a846e9c54772ff7ba07249d780e45680295 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Fri, 23 Jul 2010 22:22:12 +0200 Subject: hurd/translator/pfinet/ipv6: Remove broken link (and obsolete comment). --- hurd/translator/pfinet/ipv6.mdwn | 9 --------- 1 file changed, 9 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 28586620..5afee0c6 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -55,12 +55,3 @@ Quite the same, but with static IPv6 address assignment: # Missing Functionality Amongst other things, support for [[IOCTL]]s is missing. - - -# Binaries - -For your convenience -- this work is not yet available in the Debian packages --- binaries of a patched (multicast reception) GNU Mach kernel (including -default driver set and debugging support) and a stripped pfinet translator -(named `pfinet6` here) are being provided at - -- cgit v1.2.3 From 4b1f7411dd9c3b3e20a766cbef071d0010ab842d Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 24 Jul 2010 10:39:20 +0200 Subject: hurd/translator/tmpfs/tmpfs_vs_defpager: New. --- hurd/translator/tmpfs/tmpfs_vs_defpager.mdwn | 73 ++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 hurd/translator/tmpfs/tmpfs_vs_defpager.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/tmpfs/tmpfs_vs_defpager.mdwn b/hurd/translator/tmpfs/tmpfs_vs_defpager.mdwn new file mode 100644 index 00000000..ef041a23 --- /dev/null +++ b/hurd/translator/tmpfs/tmpfs_vs_defpager.mdwn @@ -0,0 +1,73 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +\#hurd, freenode, 2010 + + humm... why does tmpfs try to use the default pager? that's a bad idea, and probably will never work correctly... + * slpz is thinking about old issues + tmpfs should create its own pagers, just like ext2fs, storeio... + slopez@slp-hurd:~$ settrans -a tmp /hurd/tmpfs 10M + slopez@slp-hurd:~$ echo "foo" > tmp/bar + slopez@slp-hurd:~$ cat tmp/bar + foo + slopez@slp-hurd:~$ + :-) + slpz: woo you fixed it? + pochu: well, it's WIP, but reading/writing works... + I've replaced the use of default pager for the standard pager creation mechanism + slpz: err... how is it supposed to use swap space if not using the default pager? + slpz: or do you mean that it should act as a proxy, just allocating anonymous memory (backed by the default pager) itself? + antrik: the kernel uses the default pager if the application pager isn't responsive enough + antrik: it will just create memory objects and provide zerofilled pages when requested by the kernel (after a page fault) + youpi: that makes sense I guess... but how is that relevant to the question at hand?... + antrik: memory objects will contain the data by themselves + antrik: as youpi said, when memory is scarce, GNU Mach will start paging out data from memory objects to the default pager + antrik: that's the way in which pages will get into swap space + (if needed) + the thing being that the tmpfs pager has a chance to select pages he doesn't care any more about + slpz: well, the point is that instead of writing the pages to a backing store, tmpfs will just keep them in anonymous memory, and let the default pager write them out when there is pressure, right? + youpi: no idea what you are talking about. apparently I still don't really understand this stuff :-( + ah, but tmpfs doesn't have pages he doesn't care about, does it? + antrik: yes, but the term "anonymous memory" could be a bit confusing. + antrik: in GNU Mach, anonymous memory is backed by a memory object without a pager. In tmpfs, nodes will be allocated in memory objects, and the pager for those memory objects will be tmpfs itself + slpz: hm... I thought anynymous memory is backed by memory objects created from the default pager? + yes, I understand that tmpfs is supposed to be the pager for the objects it provides. they are obviously not anonymoust -- they have inodes in the tmpfs name space + but my understanding so far was that when Mach returns pages to the pager, they end up in anonymous memory allocated to the pager process; and then this pager is responsible for writing them back to the actual backing store + am I totally off there?... + (i.e. in my understanding the returned pages do not reside in the actual memory object the pager provides, but in an anonymous memory object) + antrik: you're right. The trick here is, when does Mach return the pages? + antrik: if we set the attribute "can_persist" in a memory object, Mach will keep it until object cache is full or memory is scarce + or we change the attributes so it can no longer persist, of course + without a backing store, if Mach starts sending us pages to be written, we're in trouble + so we must do something about it. One option, could be creating another pager and copying the contents between objects. + another pager? not sure what you mean + BTW, you didn't really say why we can't use the default pager for tmpfs objects :-) + well, there're two problems when using the default pager as backing store for translators + 1) Mach relies on it to do swapping tasks, so meddling with it is not a good idea + 2) There're problems with seqnos when trying to work with the default pager from tasks other the kernel itself + (probably, the latter could be fixed) + antrik: pager's terminology is a bit confusing. One can also say creating another memory object (though the function in libpager is "pager_create") + not sure why "meddling" with it would be a problem... + and yeah, I was vaguely aware that there is some seqno problem with tmpfs... though so far I didn't really understand what it was about :-) + makes sense now + anyways, AIUI now you are trying to come up with a mechanism where the default pager is not used for tmpfs objects directly, but without making it inefficient? + slpz: still don't understand what you mean by creating another memory object/pager... + (and yeat, the terminology is pretty mixed up even in Mach itself) + antrik: I meant creating another pager, in terms of calling again to libpager's pager_create + slpz: well, I understand what "create another pager" means... I just don't understand what this other pager would be, when you would create it, and what for... + antrik: oh, ok, sorry + antrik: creating another pager it's just a trick to avoid losing information when Mach's objects cache is full, and it decides to purge one of our objects + anyway, IMHO object caching mechanism is obsolete and should be replaced + I'm writting a comment to bug #28730 which says something about this + antrik: just one more thing :-) + if you look at the code, for most time of their lives, anonymous memory objects don't have a pager + not even the default one + only the pageout thread, when the system is running really low on memory, gives them a reference to the default pager by calling vm_object_pager_create + this is not really important, but worth noting ;-) -- cgit v1.2.3 From db9cc248fe1e78ebf6bf2a34c7418529d8b4a3b0 Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Wed, 25 Aug 2010 13:58:19 +0200 Subject: note: tarfs needs uatime fix. --- hurd/translator/examples.mdwn | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'hurd/translator') diff --git a/hurd/translator/examples.mdwn b/hurd/translator/examples.mdwn index 6319df77..2972efde 100644 --- a/hurd/translator/examples.mdwn +++ b/hurd/translator/examples.mdwn @@ -36,7 +36,7 @@ or ftp$ cd ftp.fr.debian.org ftp/ftp.fr.debian.org $ ls -* tarfs translator +* tarfs translator (needs uatime fix, 2010-08-25 → [git repo](http://github.com/giselher/tarfs)) You can use tarfs to mount (almost) any tar file: @@ -50,7 +50,7 @@ You can even use it to create new tar files: $ cp -r all my files new/ $ syncfs new -This is not as fast as `tar czvf newfile.tar.gz all my files` but at least, it's more original. ;) +This is not as fast as `tar czvf newfile.tar.gz all my files`, but at least it's more original. ;) * cvsfs translator -- cgit v1.2.3 From be0f0de2f47f07b609473ecda4b21f15db39470a Mon Sep 17 00:00:00 2001 From: Arne Babenhauserheide Date: Wed, 25 Aug 2010 13:59:03 +0200 Subject: note: reading tarfiles with tarfs is currently broken. --- hurd/translator/examples.mdwn | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'hurd/translator') diff --git a/hurd/translator/examples.mdwn b/hurd/translator/examples.mdwn index 2972efde..ee766fbf 100644 --- a/hurd/translator/examples.mdwn +++ b/hurd/translator/examples.mdwn @@ -38,7 +38,7 @@ or * tarfs translator (needs uatime fix, 2010-08-25 → [git repo](http://github.com/giselher/tarfs)) -You can use tarfs to mount (almost) any tar file: +You can use tarfs to mount (almost) any tar file (currently broken, 2010-08-25): $ settrans -ca a /hurd/tarfs -z myfile.tar.gz $ settrans -ca b /hurd/tarfs -y myfile.tar.bz2 -- cgit v1.2.3 From f67536a378772dbf5661c2402f59bcf289841d69 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 4 Sep 2010 09:48:31 +0200 Subject: netio, tarfs: Moved from hurdextras to incubator. --- hurd/translator.mdwn | 6 +++--- hurd/translator/netio.mdwn | 17 +++++++++++++++++ hurd/translator/tarfs.mdwn | 25 +++++++++++++++++++++++++ hurdextras.mdwn | 19 ++++++++++--------- 4 files changed, 55 insertions(+), 12 deletions(-) create mode 100644 hurd/translator/netio.mdwn create mode 100644 hurd/translator/tarfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 8037550b..672f6c9f 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -78,6 +78,7 @@ Read about translator [[short-circuiting]]. * [[fatfs]] * [[magic]] * [[unionfs]] +* [[nfs]] * ... @@ -89,7 +90,8 @@ Read about translator [[short-circuiting]]. * [[tmpfs]] * [[procfs]] * [[nsmux]] -* nfs -- easily mount nfs anywhere. See /hurd/nfs +* [[netio]] +* [[tarfs]] * ... # Translators (only) in Hurdextras @@ -100,13 +102,11 @@ Read about translator [[short-circuiting]]. * [httpfs](http://www.nongnu.org/hurdextras/#httpfs) * [gopherfs](http://www.nongnu.org/hurdextras/#cvsfs) * [memfs](http://www.nongnu.org/hurdextras/#gopherfs) -* [netio](http://www.nongnu.org/hurdextras/#netio) * [notice](http://www.nongnu.org/hurdextras/#notice) * [pith](http://www.nongnu.org/hurdextras/#pith) * [pptop](http://www.nongnu.org/hurdextras/#pptop) * [run](http://www.nongnu.org/hurdextras/#run) * [smbfs](http://www.nongnu.org/hurdextras/#smbfs) -* [tarfs](http://www.nongnu.org/hurdextras/#tarfs) * [xmlfs](http://www.nongnu.org/hurdextras/#xmlfs) * [mboxfs](http://www.nongnu.org/hurdextras/#mboxfs) diff --git a/hurd/translator/netio.mdwn b/hurd/translator/netio.mdwn new file mode 100644 index 00000000..aca9cd69 --- /dev/null +++ b/hurd/translator/netio.mdwn @@ -0,0 +1,17 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +`netio` is a translator designed for creating socket ports through the +filesystem. + + +# Source + +incubator, netio/master diff --git a/hurd/translator/tarfs.mdwn b/hurd/translator/tarfs.mdwn new file mode 100644 index 00000000..e25e3255 --- /dev/null +++ b/hurd/translator/tarfs.mdwn @@ -0,0 +1,25 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +`tarfs` is a translator aimed at providing access to tar files through the +filesystem. This way you don't have to extract files from the archive to +access them. It supports compressed archives (bzip2 and gzip) through +[[libstore]]. + + +# Status + +Works fine on most cases, occasional corruptions when writing using bzip2/gzip +stores. + + +# Source + +incubator, tarfs/master diff --git a/hurdextras.mdwn b/hurdextras.mdwn index c322acb0..07fb4e69 100644 --- a/hurdextras.mdwn +++ b/hurdextras.mdwn @@ -17,6 +17,8 @@ This is about merging some hurdextras stuff into Hurd proper repostitories. ## cvsfs +/!\ Waiting for . + * stesie -- OK ## gopherfs @@ -28,31 +30,30 @@ This is about merging some hurdextras stuff into Hurd proper repostitories. ## libfuse +/!\ Waiting for . + * stesie -- OK ## mboxfs +Tarball-import, plus trivial changes. + * Ludovic Courtes -- OK * mmenal -- NOK (but trivial) -- OK -## netio - - * mo / Moritz Schulte -- OK - ## notice +Tarball-import. + * Wolfgang Jährling -- OK ## run +Tarball-import. + * Marcus Brinkmann -- OK * Manuel Menal -- NOK (but trivial) -- OK -## tarfs - - * Ludovic Courtes -- OK - * Ben Asselstine -- OK - # Not Interesting -- cgit v1.2.3 From f45c10a4dde96ec9f32bce6f88af9e2c8506edbb Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 4 Sep 2010 10:04:11 +0200 Subject: gopherfs: Moved from hurdextras to incubator. --- hurd/translator.mdwn | 1 + hurd/translator/gopherfs.mdwn | 16 ++++++++++++++++ hurdextras.mdwn | 7 ------- 3 files changed, 17 insertions(+), 7 deletions(-) create mode 100644 hurd/translator/gopherfs.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index 672f6c9f..dd5c5b4d 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -92,6 +92,7 @@ Read about translator [[short-circuiting]]. * [[nsmux]] * [[netio]] * [[tarfs]] +* [[gopherfs]] * ... # Translators (only) in Hurdextras diff --git a/hurd/translator/gopherfs.mdwn b/hurd/translator/gopherfs.mdwn new file mode 100644 index 00000000..6c32430f --- /dev/null +++ b/hurd/translator/gopherfs.mdwn @@ -0,0 +1,16 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +`gopherfs` is a virtual filesystem allowing you to access Gopher sites. + + +# Source + +incubator, gopherfs/master diff --git a/hurdextras.mdwn b/hurdextras.mdwn index 9db1c8d6..45a82dab 100644 --- a/hurdextras.mdwn +++ b/hurdextras.mdwn @@ -21,13 +21,6 @@ This is about merging some hurdextras stuff into Hurd proper repostitories. * stesie -- OK -## gopherfs - - * mmenal / Manuel Menal -- NOK (but trivial) -- OK - * Ben Asseltsine -- OK - * mrphython / James A. Morrison -- OK - * Igor Khavkine -- OK - ## libfuse /!\ Waiting for . -- cgit v1.2.3 From a28c06b80bfbecc09312e28ab61a1794d2d2b29b Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 14 Sep 2010 14:55:53 +0200 Subject: Merge community/gsoc/project_ideas/procfs into hurd/translator/procfs. --- community/gsoc/project_ideas/libgtop.mdwn | 6 ++--- community/gsoc/project_ideas/procfs.mdwn | 45 ------------------------------- hurd/translator/procfs.mdwn | 32 +++++++++++++++++++++- 3 files changed, 34 insertions(+), 49 deletions(-) delete mode 100644 community/gsoc/project_ideas/procfs.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/project_ideas/libgtop.mdwn b/community/gsoc/project_ideas/libgtop.mdwn index 14304de2..8eb6953e 100644 --- a/community/gsoc/project_ideas/libgtop.mdwn +++ b/community/gsoc/project_ideas/libgtop.mdwn @@ -1,4 +1,4 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -14,8 +14,8 @@ libgtop is a library used by many applications (especially GNOME applications) to abstract the system-specific methods for obtaining information about the current state of the system -- processes running, system load etc. -A [[Linux-compatible_procfs|madhusudancs]] implementation has been created -during GSoC 2008, and should cover a large part of the functionality of +A Linux-compatible [[hurd/translator/procfs]] is available +and should cover a large part of the functionality of libgtop. However, not all necessary information is exported via /proc (even on Linux); there are some bits still missing in the Hurd procfs implementation; and there are a couple of bugs that need to be fixed to make it fully usable. diff --git a/community/gsoc/project_ideas/procfs.mdwn b/community/gsoc/project_ideas/procfs.mdwn deleted file mode 100644 index d4760aae..00000000 --- a/community/gsoc/project_ideas/procfs.mdwn +++ /dev/null @@ -1,45 +0,0 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!meta title="procfs"]] - -Although there is no standard (POSIX or other) for the layout of the `/proc` -pseudo-filesystem, it turned out a very useful facility in GNU/Linux and other -systems, and many tools concerned with process management use it. (`ps`, `top`, -`htop`, `gtop`, `killall`, `pkill`, ...) - -Instead of porting all these tools to use [[hurd/libps]] (Hurd's official method for -accessing process information), they could be made to run out of the box, by -implementing a Linux-compatible `/proc` filesystem for the Hurd. - -The goal is to implement all `/proc` functionality needed for the various process -management tools to work. (On Linux, the `/proc` filesystem is used also for -debugging purposes; but this is highly system-specific anyways, so there is -probably no point in trying to duplicate this functionality as well...) - -The [[existing_partially_working_procfs_implementation|hurd/translator/procfs]] -can serve as a starting point, but needs to be largely rewritten. (It should -use [[hurd/libnetfs]] rather than [[hurd/libtrivfs]]; the data format needs to -change to be more Linux-compatible; and it needs adaptation to newer system -interfaces.) - -This project requires learning [[hurd/translator]] programming, and -understanding some of the internals of process management in the Hurd. It -should not be too hard coding-wise; and the task is very nicely defined by the -existing Linux `/proc` interface -- no design considerations necessary. - -**Note**: We already have several applications for this task. - -Possible mentors: Olaf Buddenhagen (antrik) - -Exercise: Add or fix one piece in the existing procfs translator. - -*Status*: Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for -GSoC 2008. He is still working on some outstanding issues. diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index 404a6764..0247aa33 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -1,4 +1,5 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this @@ -8,8 +9,37 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +Although there is no standard (POSIX or other) for the layout of the `/proc` +pseudo-filesystem, it turned out a very useful facility in GNU/Linux and other +systems, and many tools concerned with process management use it. (`ps`, `top`, +`htop`, `gtop`, `killall`, `pkill`, ...) + +Instead of porting all these tools to use [[libps]] (Hurd's official method for +accessing process information), they could be made to run out of the box, by +implementing a Linux-compatible `/proc` filesystem for the Hurd. + +The goal is to implement all `/proc` functionality needed for the various process +management tools to work. (On Linux, the `/proc` filesystem is used also for +debugging purposes; but this is highly system-specific anyways, so there is +probably no point in trying to duplicate this functionality as well...) + +*Status*: Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for +[[GSoC 2008|community/gsoc/2008]]. + +In August 2010, Jérémie Koenig [published another, new +version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). + + +# Internals + + +## Old Implementation from [[open_issues/HurdExtras]] + + +## Files opened by various tools + * [[`ps`|procps]] * [[`top`|top]] * [[`htop`|htop]] -- cgit v1.2.3 From 9b6a5bd202ca8f0a99b9d3a17ea3e077aa7fcf41 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 14 Sep 2010 17:32:08 +0200 Subject: hurd/translator/procfs: Imported Jérémie Koenig's version into procfs.git. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- hurd/translator/procfs.mdwn | 4 ++++ source_repositories.mdwn | 1 + 2 files changed, 5 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index 0247aa33..bc22530f 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -26,8 +26,12 @@ probably no point in trying to duplicate this functionality as well...) *Status*: Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for [[GSoC 2008|community/gsoc/2008]]. +# New Implementation by Jérémie Koenig + In August 2010, Jérémie Koenig [published another, new version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). +This can be found in , +branch *jkoenig/master*. # Internals diff --git a/source_repositories.mdwn b/source_repositories.mdwn index 41ca37be..8729e48b 100644 --- a/source_repositories.mdwn +++ b/source_repositories.mdwn @@ -17,6 +17,7 @@ is included in the section entitled * [[glibc]] * [[incubator]] + * [[hurd/translator/procfs]] * ... ## Branches -- cgit v1.2.3 From d5ae18f16370d7b53412c3aebfdf7df90cb81213 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 15 Sep 2010 05:26:12 +0200 Subject: hurd/translator/procfs: How to build jkoenig's procfs. --- hurd/translator/procfs.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index bc22530f..4f882674 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -33,6 +33,15 @@ version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). This can be found in , branch *jkoenig/master*. +Testing it is as simple as this: + + $ git clone git://git.savannah.gnu.org/hurd/procfs.git + $ cd procfs/ + $ git checkout jkoenig/master + $ make + $ settrans -ca proc procfs --compatible + $ ls -l proc/ + # Internals -- cgit v1.2.3 From 61977258f0d13492f986bb3d2d452056d13821ae Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 15 Sep 2010 05:27:46 +0200 Subject: hurd/translator/procfs: Remove old trace files. --- hurd/translator/procfs.mdwn | 16 +--------------- hurd/translator/procfs/htop.mdwn | 25 ------------------------- hurd/translator/procfs/killall.mdwn | 23 ----------------------- hurd/translator/procfs/procps.mdwn | 23 ----------------------- hurd/translator/procfs/top.mdwn | 18 ------------------ 5 files changed, 1 insertion(+), 104 deletions(-) delete mode 100644 hurd/translator/procfs/htop.mdwn delete mode 100644 hurd/translator/procfs/killall.mdwn delete mode 100644 hurd/translator/procfs/procps.mdwn delete mode 100644 hurd/translator/procfs/top.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index 4f882674..da7eb77c 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -43,20 +43,6 @@ Testing it is as simple as this: $ ls -l proc/ -# Internals - - -## Old Implementation from [[open_issues/HurdExtras]] +# Old Implementation from [[open_issues/HurdExtras]] - - -## Files opened by various tools - - * [[`ps`|procps]] - * [[`top`|top]] - * [[`htop`|htop]] - * `gtop` - * [[`killall`|killall]] - * `pkill` - * ... diff --git a/hurd/translator/procfs/htop.mdwn b/hurd/translator/procfs/htop.mdwn deleted file mode 100644 index ce38b92c..00000000 --- a/hurd/translator/procfs/htop.mdwn +++ /dev/null @@ -1,25 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/meminfo", O_RDONLY) = 3 - open("/proc/stat", O_RDONLY) = 3 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 - open("/proc/1/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 - open("/proc/1/status", O_RDONLY) = 4 - open("/proc/1/statm", O_RDONLY) = 4 - open("/proc/1/stat", O_RDONLY) = 4 - open("/proc/1/cmdline", O_RDONLY) = 4 - open("/proc/2/task", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 4 - open("/proc/2/status", O_RDONLY) = 4 - open("/proc/2/statm", O_RDONLY) = 4 - open("/proc/2/stat", O_RDONLY) = 4 - open("/proc/2/cmdline", O_RDONLY) = 4 - [...] diff --git a/hurd/translator/procfs/killall.mdwn b/hurd/translator/procfs/killall.mdwn deleted file mode 100644 index 3d31b51a..00000000 --- a/hurd/translator/procfs/killall.mdwn +++ /dev/null @@ -1,23 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/self/stat", O_RDONLY) = 3 - open("/proc/uptime", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 - open("/proc/meminfo", O_RDONLY) = 4 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 - open("/proc/1/stat", O_RDONLY) = 6 - open("/proc/1/status", O_RDONLY) = 6 - open("/proc/1/cmdline", O_RDONLY) = 6 - open("/proc/2/stat", O_RDONLY) = 6 - open("/proc/2/status", O_RDONLY) = 6 - open("/proc/2/cmdline", O_RDONLY) = 6 - [...] diff --git a/hurd/translator/procfs/procps.mdwn b/hurd/translator/procfs/procps.mdwn deleted file mode 100644 index 3d31b51a..00000000 --- a/hurd/translator/procfs/procps.mdwn +++ /dev/null @@ -1,23 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/self/stat", O_RDONLY) = 3 - open("/proc/uptime", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 4 - open("/proc/meminfo", O_RDONLY) = 4 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 5 - open("/proc/1/stat", O_RDONLY) = 6 - open("/proc/1/status", O_RDONLY) = 6 - open("/proc/1/cmdline", O_RDONLY) = 6 - open("/proc/2/stat", O_RDONLY) = 6 - open("/proc/2/status", O_RDONLY) = 6 - open("/proc/2/cmdline", O_RDONLY) = 6 - [...] diff --git a/hurd/translator/procfs/top.mdwn b/hurd/translator/procfs/top.mdwn deleted file mode 100644 index 2cba78ad..00000000 --- a/hurd/translator/procfs/top.mdwn +++ /dev/null @@ -1,18 +0,0 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - - open("/proc/stat", O_RDONLY) = 3 - open("/proc/sys/kernel/pid_max", O_RDONLY) = 3 - open("/proc", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY|0x80000) = 3 - open("/proc/1/stat", O_RDONLY) = 4 - open("/proc/1/statm", O_RDONLY) = 4 - open("/proc/2/stat", O_RDONLY) = 4 - open("/proc/2/statm", O_RDONLY) = 4 - [...] -- cgit v1.2.3 From 72f0fbdbac020e532ac430c18442c73243dfceb9 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 4 Oct 2010 11:33:41 +0200 Subject: hurd/translator/unionfs: Link to Linux' overlay file system proposal, 2010-09-20. --- hurd/translator/unionfs.mdwn | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/unionfs.mdwn b/hurd/translator/unionfs.mdwn index d1e3868b..2b692cf9 100644 --- a/hurd/translator/unionfs.mdwn +++ b/hurd/translator/unionfs.mdwn @@ -153,3 +153,8 @@ the *mountee* at 0. * [FUSE page about `unionfs`](http://sourceforge.net/apps/mediawiki/fuse/index.php?title=UnionFileSystems) + + * [Linux' overlay file system proposal, + 2010-09-20](http://thread.gmane.org/gmane.linux.kernel/1038413) + + How is this different? -- cgit v1.2.3 From ff42d21836ec433707da4ef4f982f12dedb4e384 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 6 Oct 2010 20:57:19 +0200 Subject: hurd/translator/procfs: Minor bug w/ jkoenig's procfs. --- hurd/translator/procfs.mdwn | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index da7eb77c..80f822e3 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -43,6 +43,15 @@ Testing it is as simple as this: $ ls -l proc/ +## Open Issues + +[[!tag open_issue_hurd]] + + * Files' permissions: + + the only glitch is that files/dirs have the right user as owner, but always with root group + + # Old Implementation from [[open_issues/HurdExtras]] -- cgit v1.2.3 From 378838ad9e7e724a1a3e8c8727f1ba65e995863a Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Wed, 6 Oct 2010 22:51:02 +0200 Subject: hurd/translator/procfs/jkoenig: New. --- hurd/translator/procfs.mdwn | 24 +----------- hurd/translator/procfs/jkoenig.mdwn | 76 +++++++++++++++++++++++++++++++++++++ 2 files changed, 77 insertions(+), 23 deletions(-) create mode 100644 hurd/translator/procfs/jkoenig.mdwn (limited to 'hurd/translator') diff --git a/hurd/translator/procfs.mdwn b/hurd/translator/procfs.mdwn index 80f822e3..70448e94 100644 --- a/hurd/translator/procfs.mdwn +++ b/hurd/translator/procfs.mdwn @@ -26,30 +26,8 @@ probably no point in trying to duplicate this functionality as well...) *Status*: Madhusudan.C.S has implemented a new, fully functional [[procfs|madhusudancs]] for [[GSoC 2008|community/gsoc/2008]]. -# New Implementation by Jérémie Koenig -In August 2010, Jérémie Koenig [published another, new -version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). -This can be found in , -branch *jkoenig/master*. - -Testing it is as simple as this: - - $ git clone git://git.savannah.gnu.org/hurd/procfs.git - $ cd procfs/ - $ git checkout jkoenig/master - $ make - $ settrans -ca proc procfs --compatible - $ ls -l proc/ - - -## Open Issues - -[[!tag open_issue_hurd]] - - * Files' permissions: - - the only glitch is that files/dirs have the right user as owner, but always with root group +# [[New Implementation by Jérémie Koenig|jkoenig]] # Old Implementation from [[open_issues/HurdExtras]] diff --git a/hurd/translator/procfs/jkoenig.mdwn b/hurd/translator/procfs/jkoenig.mdwn new file mode 100644 index 00000000..1275ce52 --- /dev/null +++ b/hurd/translator/procfs/jkoenig.mdwn @@ -0,0 +1,76 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +In August 2010, Jérémie Koenig [published another, new +version](http://lists.gnu.org/archive/html/bug-hurd/2010-08/msg00165.html). +This can be found in , +branch *jkoenig/master*. + +Testing it is as simple as this: + + $ git clone git://git.savannah.gnu.org/hurd/procfs.git + $ cd procfs/ + $ git checkout jkoenig/master + $ make + $ settrans -ca proc procfs --compatible + $ ls -l proc/ + + +# Open Issues + +[[!tag open_issue_hurd]] + + * IRC, #hurd, around September 2010 + + jkoenig: from a quick read, your procfs implementation seems quite + simple, probably much more what I was expecting from Madhusudan (who probably + now hates you :) ) + jkoenig: is it not possible to provide a /proc/self which points at the + client's pid? + (also, shouldn't /proc/version say something else than "Linux"?) + to make linux tools work, no :/ + kfreebsd does that too + really? + yes + (kfreebsd, not freebsd) + does kbsd's one print just "Linux version x.y.z" too, or something + more eg in a second line? + (as curiosity) + % cat /proc/version + Linux version 2.6.16 (des@freebsd.org) (gcc version 4.3.5) #4 Sun Dec + 18 04:30:00 CET 1977 + k + I had some problems with killall5 to read the pid from /proc, Is + this now more reliable? + I haven't tested with jkoenig's implementation + [...] + looks like he did 'self' too, see rootdir_entries[] in rootdir.c + but it doesn't point at self + youpi: there is no way to provide /proc/self, because the server + doesn't know the identity of the client + :/ + youpi: using the existing mechanisms, we would need another magic + lookup type + an alternative idea I discussed with cfhammer once would be for the + client to voluntarily provide it's identity to the server... but that would + be a rather fundamental change that requires careful consideration + also, object migration could be used, so the implementation would be + provided by the server, but the execution would happen in the client... but + that's even more involved :-) + but we've seen how much that'd help with a lot of other stuff + I'm not sure whether we discussed this on the ML at some point, or + only on IRC + it "just" needs to be commited :) + in either case, it can't hurt to bring this up again :-) + + * IRC, #hurd, around October 2010 + + the only glitch is that files/dirs have the right user as + owner, but always with root group -- cgit v1.2.3 From 0d41c97e727159917752e7d9f18dbb7a018d157d Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Sat, 23 Oct 2010 22:37:54 +0200 Subject: hurd/translator/ext2fs/large_stores: Copyright as per Ogi's email. , 2010-09-08. --- hurd/translator/ext2fs/large_stores.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'hurd/translator') diff --git a/hurd/translator/ext2fs/large_stores.txt b/hurd/translator/ext2fs/large_stores.txt index e17a02a5..6e7ffc6f 100644 --- a/hurd/translator/ext2fs/large_stores.txt +++ b/hurd/translator/ext2fs/large_stores.txt @@ -1,3 +1,13 @@ +[[!meta copyright="Copyright © 2005, 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + This is -*- mode: outline -*- * Introduction -- cgit v1.2.3 From eccf2986513cc41c412b1c30aa5dcb88a4c981b5 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 29 Nov 2010 07:58:51 +0100 Subject: Add links to some LWN articles, and then some. --- community/gsoc/project_ideas.mdwn | 6 +-- .../gsoc/project_ideas/libdiskfs_locking.mdwn | 41 ----------------- documentation.mdwn | 6 ++- glibc.mdwn | 9 ++++ glibc/environment_variables.mdwn | 15 ++++++ glibc/fork.mdwn | 9 ++++ glibc/poll.mdwn | 15 ++++++ hurd/debugging.mdwn | 10 ++-- hurd/translator.mdwn | 6 ++- hurd/translator/libguestfs.mdwn | 15 ++++++ open_issues/debugging.mdwn | 42 +++++++++++++++++ open_issues/gdb-heap.mdwn | 15 ++++++ open_issues/locking.mdwn | 53 ++++++++++++++++++++++ open_issues/performance.mdwn | 2 + open_issues/unit_testing.mdwn | 10 ++++ open_issues/virtualization/file_systems.mdwn | 3 +- unix.mdwn | 16 +++++-- 17 files changed, 214 insertions(+), 59 deletions(-) delete mode 100644 community/gsoc/project_ideas/libdiskfs_locking.mdwn create mode 100644 glibc/environment_variables.mdwn create mode 100644 glibc/poll.mdwn create mode 100644 hurd/translator/libguestfs.mdwn create mode 100644 open_issues/debugging.mdwn create mode 100644 open_issues/gdb-heap.mdwn create mode 100644 open_issues/locking.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index 2102e8f7..b039608f 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -6,8 +6,8 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] We offer a wide range of possible projects to choose from. If you have an idea not listed here, we'd love to hear about it! @@ -82,7 +82,7 @@ See also the list of [Hurd-related X.org project ideas](http://wiki.x.org/wiki/H [[!inline pages="community/gsoc/project_ideas/server_overriding" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/tcp_ip_stack" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/nfs" show=0 feeds=no actions=yes]] -[[!inline pages="community/gsoc/project_ideas/libdiskfs_locking" show=0 feeds=no actions=yes]] +[[!inline pages="open_issues/locking" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/pthreads" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/sound" show=0 feeds=no actions=yes]] [[!inline pages="open_issues/performance/io_system" show=0 feeds=no actions=yes]] diff --git a/community/gsoc/project_ideas/libdiskfs_locking.mdwn b/community/gsoc/project_ideas/libdiskfs_locking.mdwn deleted file mode 100644 index 0618bbe6..00000000 --- a/community/gsoc/project_ideas/libdiskfs_locking.mdwn +++ /dev/null @@ -1,41 +0,0 @@ -[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, -Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!meta title="Fix libdiskfs Locking Issues"]] - -Nowadays the most often encountered cause of Hurd crashes seems to be lockups -in the [[hurd/translator/ext2fs]] server. One of these could be traced -recently, and turned out to be a lock inside [[hurd/libdiskfs]] that was taken -and not released in some cases. There is reason to believe that there are more -faulty paths causing these lockups. - -The task is systematically checking the [[hurd/libdiskfs]] code for this kind of locking -issues. To achieve this, some kind of test harness has to be implemented: For -example instrumenting the code to check locking correctness constantly at -runtime. Or implementing a unit testing framework that explicitly checks -locking in various code paths. (The latter could serve as a template for -implementing unit checks in other parts of the Hurd codebase...) - -(A systematic code review would probably suffice to find the existing locking -issues; but it wouldn't document the work in terms of actual code produced, and -thus it's not suitable for a GSoC project...) - -[Linux' *sparse*](https://sparse.wiki.kernel.org/) could be worth looking at. - -This task requires experience with debugging locking issues in multithreaded -applications. - -Possible mentors: Samuel Thibault (youpi) - -Exercise: If you could actually track down and fix one of the existing locking -errors before the end of the application process, that would be excellent. This -might be rather tough though, so probably you need to talk to us about an -alternative exercise task... diff --git a/documentation.mdwn b/documentation.mdwn index 62d96e9c..5c666f3f 100644 --- a/documentation.mdwn +++ b/documentation.mdwn @@ -5,8 +5,8 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[FAQ]] @@ -18,6 +18,8 @@ Documentation for... * [[MIG|microkernel/mach/mig/documentation]] + * [[UNIX]] + # Presentations diff --git a/glibc.mdwn b/glibc.mdwn index cefbb19c..f47efc03 100644 --- a/glibc.mdwn +++ b/glibc.mdwn @@ -29,6 +29,15 @@ Porting glibc to a specific architecture is non-trivial. ## [[Hurd-specific Port|hurd/glibc]] +# Implementation Details + + * [[environment_variables]] + + * [[fork]] + + * [[poll]] + + # Open Issues [[!inline pages=tag/open_issue_glibc raw=yes feeds=no]] diff --git a/glibc/environment_variables.mdwn b/glibc/environment_variables.mdwn new file mode 100644 index 00000000..76c1371e --- /dev/null +++ b/glibc/environment_variables.mdwn @@ -0,0 +1,15 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + + +# External + + * [*putenv() and setenv()*](http://www.greenend.org.uk/rjk/2008/putenv.html) + by Richard Kettlewell. diff --git a/glibc/fork.mdwn b/glibc/fork.mdwn index 564d9d5b..c9efd1f4 100644 --- a/glibc/fork.mdwn +++ b/glibc/fork.mdwn @@ -49,3 +49,12 @@ they have patches for software packages, to avoid using `fork` followed by * We no longer support `MACH_IPC_COMPAT`, thus we can get rid of the `err = __mach_port_allocate_name ([...]); if (err == KERN_NAME_EXISTS)` code ([[!taglink open_issue_glibc]]). + + +# External + + * [*How fork(2) ought to be*](http://www.greenend.org.uk/rjk/fork.html) by + Richard Kettlewell. + + * [*The self-pipe trick*](http://cr.yp.to/docs/selfpipe.html) by + D. J. Bernstein. diff --git a/glibc/poll.mdwn b/glibc/poll.mdwn new file mode 100644 index 00000000..d96f27a5 --- /dev/null +++ b/glibc/poll.mdwn @@ -0,0 +1,15 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + + +# External + + * [*poll() and EOF*](http://www.greenend.org.uk/rjk/2001/06/poll.html) by + Richard Kettlewell. diff --git a/hurd/debugging.mdwn b/hurd/debugging.mdwn index d6c5b18f..d6e9c8b5 100644 --- a/hurd/debugging.mdwn +++ b/hurd/debugging.mdwn @@ -6,8 +6,9 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + # Strategies @@ -16,11 +17,6 @@ is included in the section entitled * [[subhurd]] -- running another Hurd system in parallel * [[rpctrace]] -- tracing [[RPC]]s -## To Do - - * [[open_issues/ltrace]] - * [[open_issues/latrace]] - * [[open_issues/profiling]] # About Specific Packages diff --git a/hurd/translator.mdwn b/hurd/translator.mdwn index c3ca1278..9e109a28 100644 --- a/hurd/translator.mdwn +++ b/hurd/translator.mdwn @@ -6,8 +6,8 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] A translator is simply a normal program acting as an object server and participating in the Hurd's @@ -117,6 +117,8 @@ Read about translator [[short-circuiting]]. * [[wishlist_1]] * [[wishlist_2]] * [[open_issues/network_file_system_by_just_forwarding_RPCs]] + * [[libguestfs]] + # Internally diff --git a/hurd/translator/libguestfs.mdwn b/hurd/translator/libguestfs.mdwn new file mode 100644 index 00000000..649b31f5 --- /dev/null +++ b/hurd/translator/libguestfs.mdwn @@ -0,0 +1,15 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_hurd]] + +[libguestfs](http://libguestfs.org/) is said to be able to access a lot +of different filesystem types -- can we use it to build GNU Hurd +[[translator]]s? (There is a [[FUSE]] module, too.) diff --git a/open_issues/debugging.mdwn b/open_issues/debugging.mdwn new file mode 100644 index 00000000..95b7bf9b --- /dev/null +++ b/open_issues/debugging.mdwn @@ -0,0 +1,42 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + + +# Existing + +We have debugging infrastructure. For example: + + * [[GDB]] + + * [[GNU Mach debugging|microkernel/mach/gnumach/debugging]] + + * [[GNU Hurd debugging|hurd/debugging]], including + [[hurd/debugging/rpctrace]] and more. + + +# To Do + + * [[ltrace]] + + * [[latrace]] + + * [[profiling]] + + * *[Checkpoint/restart](http://lwn.net/Articles/412749/) allows the state of + a set of processes to be saved to persistent storage, then restarted at + some future time* -- quoting from Jonathan Corbet's 2010 Linux Kernel + Summit report. + + This is surely a very useful facility to have for reproducing failures, for + example. But on the other hand it's questionable how it can help with + debugging failures in [[GNU Hurd server|hurd/translator]]s' interactions, + as their state is typically spread between several processes. + + * [[locking]] diff --git a/open_issues/gdb-heap.mdwn b/open_issues/gdb-heap.mdwn new file mode 100644 index 00000000..75c31bbe --- /dev/null +++ b/open_issues/gdb-heap.mdwn @@ -0,0 +1,15 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_gdb]] + +Might be interesting to have a look at +[*gdb-heap*](https://fedorahosted.org/gdb-heap/) with respect to our +long-lived [[hurd/translator]] processes. diff --git a/open_issues/locking.mdwn b/open_issues/locking.mdwn new file mode 100644 index 00000000..1717133a --- /dev/null +++ b/open_issues/locking.mdwn @@ -0,0 +1,53 @@ +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, +Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_hurd]] + +Every now and then, new locking issues are discovered in +[[hurd/libdiskfs]] or [[hurd/translator/ext2fs]], for example. Nowadays +these in fact seem to be the most often encountered cause of Hurd crashes +/ lockups. + +One of these could be traced +recently, and turned out to be a lock inside [[hurd/libdiskfs]] that was taken +and not released in some cases. There is reason to believe that there are more +faulty paths causing these lockups. + +The task is systematically checking the [[hurd/libdiskfs]] code for this kind of locking +issues. To achieve this, some kind of test harness has to be implemented: For +example instrumenting the code to check locking correctness constantly at +runtime. Or implementing a [[unit testing]] framework that explicitly checks +locking in various code paths. (The latter could serve as a template for +implementing unit tests in other parts of the Hurd codebase...) + +(A systematic code review would probably suffice to find the existing locking +issues; but it wouldn't document the work in terms of actual code produced, and +thus it's not suitable for a GSoC project...) + +This task requires experience with debugging locking issues in multithreaded +applications. + +Tools have been written for static code analysis, than can help to locate +and fix such errors. + + * Coccinelle + + * + + * + + * clang + + * + + * Linux' sparse + + * diff --git a/open_issues/performance.mdwn b/open_issues/performance.mdwn index a4816680..3d146a72 100644 --- a/open_issues/performance.mdwn +++ b/open_issues/performance.mdwn @@ -11,3 +11,5 @@ License|/fdl]]."]]"""]] * [[I/O System|io_system]] * [[fork]] + + * [[unit testing]] diff --git a/open_issues/unit_testing.mdwn b/open_issues/unit_testing.mdwn index b9fb3700..80a2860a 100644 --- a/open_issues/unit_testing.mdwn +++ b/open_issues/unit_testing.mdwn @@ -43,3 +43,13 @@ abandoned). * * + + * [*[ANNOUNCE] ktest.pl: Easy and flexible testing script for Linux Kernel + Developers*](http://lwn.net/Articles/412302/) by Steven Rostedt, + 2010-10-28. + + * -- ``comprehensive testing and + benchmarking platform''. This one might be useful for [[performance]] + testing, too? + + * diff --git a/open_issues/virtualization/file_systems.mdwn b/open_issues/virtualization/file_systems.mdwn index 3bf2299d..a12ea10d 100644 --- a/open_issues/virtualization/file_systems.mdwn +++ b/open_issues/virtualization/file_systems.mdwn @@ -20,4 +20,5 @@ be explored. * Linux saw a patch for [*generic name to handle and open by handle syscalls*](http://thread.gmane.org/gmane.linux.file-systems/46648) posted, which in turn can be beneficial for a [[QEMU]] emulation of a 9P file - system. + system. LWN's Jonathan Corbet covered this [*open by + handle*](http://lwn.net/Articles/375888/) functionality on 2010-02-23. diff --git a/unix.mdwn b/unix.mdwn index a927eb64..601b36d1 100644 --- a/unix.mdwn +++ b/unix.mdwn @@ -1,12 +1,15 @@ -[[!meta copyright="Copyright © 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2010 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta title="UNIX"]] + # External @@ -15,3 +18,10 @@ is included in the section entitled * [*Standardizing UNIX*](http://www.informit.com/articles/printerfriendly.aspx?p=691503), an article by David Chisnall. + + * [*Ghosts of Unix Past: a historical search for design + patterns*](http://lwn.net/Articles/411845/) (2010-10-27) by Neil Brown, + including file descriptors and the single, hierarchical namespace. + + * [*UNIX File Permissions*](http://www.greenend.org.uk/rjk/2004/perms.html) + (2004) by Richard Kettlewell. -- cgit v1.2.3 From 38368072b37bf73dda26dac536e4aa6cf13c67e4 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Mon, 29 Nov 2010 13:41:16 +0100 Subject: system_call: New. --- community/gsoc/project_ideas/libcap.mdwn | 8 ++++---- community/gsoc/project_ideas/libcap/details.mdwn | 8 ++++---- community/gsoc/project_ideas/secure_chroot.mdwn | 11 ++++++----- community/gsoc/project_ideas/valgrind.mdwn | 8 ++++---- extensibility.mdwn | 9 +++++---- faq/sharing_the_user_space.mdwn | 2 +- glibc.mdwn | 13 +++++++++++-- glibc/fork.mdwn | 20 +++++++++++++------- hurd/glibc/hurd-specific_api.mdwn | 11 ++++++----- hurd/networking.mdwn | 11 ++++++----- hurd/ng/microkernelcoyotos.mdwn | 4 +++- hurd/ng/trivialconfinementvsconstructorvsfork.mdwn | 18 ++++++++++++++---- hurd/translator/wishlist_2.mdwn | 12 +++++++++++- qemu.mdwn | 12 ++++++------ system_call.mdwn | 19 +++++++++++++++++++ 15 files changed, 113 insertions(+), 53 deletions(-) create mode 100644 system_call.mdwn (limited to 'hurd/translator') diff --git a/community/gsoc/project_ideas/libcap.mdwn b/community/gsoc/project_ideas/libcap.mdwn index 1346203d..18c49c48 100644 --- a/community/gsoc/project_ideas/libcap.mdwn +++ b/community/gsoc/project_ideas/libcap.mdwn @@ -1,12 +1,12 @@ -[[!meta copyright="Copyright © 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!meta title="Implementing libcap"]] @@ -33,7 +33,7 @@ probably doable without previous experience with either, though. David Hedberg applied for this project in 2010, and though he didn't go through with it, -he fleshed out many [[libcap/details]]. +he fleshed out many [[details]]. Possible mentors: Samuel Thibault (youpi) diff --git a/community/gsoc/project_ideas/libcap/details.mdwn b/community/gsoc/project_ideas/libcap/details.mdwn index aa27a84e..85695978 100644 --- a/community/gsoc/project_ideas/libcap/details.mdwn +++ b/community/gsoc/project_ideas/libcap/details.mdwn @@ -5,8 +5,8 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!meta title="Details on implementing libcap"]] @@ -59,7 +59,7 @@ Each process has a three bit fields representing each of the three sets (P, E and I). Each bit field is currently built up of two (32 bit) integers to be able to hold the 33 currently defined capabilities (see linux/capability.h). Each process further has a bounding set which -bounds the permitted set. Two syscalls handles the setting and getting +bounds the permitted set. Two [[system call]]s handles the setting and getting of capabilities; *capset* and *capget*. Some related functionality can also be controlled by calling *prctl*: the right to read/drop the bounding capabilities (PR_CAPBSET_READ/PR_CAPBSET_DROP) and whether @@ -428,7 +428,7 @@ the following (also detailed somewhat in the same article): * Execute process as root (or setuid) to gain all capabilities. -* Use the prctl system call to enable keepcaps for the process +* Use the prctl [[system call]] to enable keepcaps for the process (same(?) effect as enabling SECURE_NO_SETUID_FIXUP for the process). keepcaps should be off by default. diff --git a/community/gsoc/project_ideas/secure_chroot.mdwn b/community/gsoc/project_ideas/secure_chroot.mdwn index feb30a7c..57739861 100644 --- a/community/gsoc/project_ideas/secure_chroot.mdwn +++ b/community/gsoc/project_ideas/secure_chroot.mdwn @@ -1,17 +1,18 @@ -[[!meta copyright="Copyright © 2008, 2009 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2008, 2009, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!meta title="Secure chroot Implementation"]] As the Hurd attempts to be (almost) fully [[UNIX]]-compatible, it also implements a -`chroot()` system call. However, the current implementation is not really +`chroot` [[system call]]. However, the current implementation is not really good, as it allows easily escaping the `chroot`, for example by use of [[passive_translators|hurd/translator]]. @@ -20,7 +21,7 @@ workaround changing the behavior of passive translators in a `chroot`; changing the context in which passive translators are executed; changing the interpretation of filenames in a chroot; to reworking the whole passive translator mechanism. Some involving a completely different approach to -`chroot` implementation, using a proxy instead of a special system call in the +`chroot` implementation, using a proxy instead of a special [[system call]] in the filesystem servers. See diff --git a/community/gsoc/project_ideas/valgrind.mdwn b/community/gsoc/project_ideas/valgrind.mdwn index c6fc7459..7d68e82d 100644 --- a/community/gsoc/project_ideas/valgrind.mdwn +++ b/community/gsoc/project_ideas/valgrind.mdwn @@ -18,7 +18,7 @@ although they work on Linux. Even more importantly, it will help finding bugs in the Hurd servers themselfs. To keep track of memory use, -Valgrind however needs to know how each system call affects the validity of memory regions. +Valgrind however needs to know how each [[system call]] affects the validity of memory regions. This knowledge is highly kernel-specific, and thus Valgrind needs to be explicitely ported for every system. @@ -26,11 +26,11 @@ Such a port involves two major steps: making Valgrind understand how kernel traps work in general on the system in question; and how all the individual kernel calls affect memory. The latter step is where most of the work is, -as the behaviour of each single system call needs to be described. +as the behaviour of each single [[system call]] needs to be described. Compared to Linux, Mach (the microkernel used by the Hurd) has very few kernel traps. -Almost all system calls are implemented as RPCs instead -- +Almost all [[system call]]s are implemented as RPCs instead -- either handled by Mach itself, or by the various Hurd servers. All RPCs use a pair of mach\_msg() invocations: one to send a request message, and one to receive a reply. @@ -62,7 +62,7 @@ The goal of this task is at minimum to make Valgrind grok Mach traps, and to implement the generic RPC handler. Ideally, specific handling for RPCs needing it should also be implemented. -Completing this project will require digging into Valgrind's handling of system calls, +Completing this project will require digging into Valgrind's handling of [[system call]]s, and into Hurd RPCs. It is not an easy task, but a fairly predictable one -- there shouldn't be any unexpected difficulties, diff --git a/extensibility.mdwn b/extensibility.mdwn index 01b1f3b1..17cd5e51 100644 --- a/extensibility.mdwn +++ b/extensibility.mdwn @@ -1,17 +1,18 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] An extensible system is one that enables extensibility. Enabling extensibility means providing non-privileged mechanisms to extend existing objects and to introduce new objects. [[UNIX]] is generally not an extensible system as it does -not generally facilitate the hooking of system calls. For instance, there is +not generally facilitate the hooking of [[system call]]s. For instance, there is no way to hook into the virtual file system. This has motivated the introduction of separate, parallel interfaces by both the GNOME and KDE projects to provide users a more integrated view of their objects. diff --git a/faq/sharing_the_user_space.mdwn b/faq/sharing_the_user_space.mdwn index 7d09ccc0..ec880827 100644 --- a/faq/sharing_the_user_space.mdwn +++ b/faq/sharing_the_user_space.mdwn @@ -15,7 +15,7 @@ everything but the kernel is shared? *Answer:* Given that both Linux and GNU Hurd are using the [[ELF]] binary format, this could indeed be made possible, if all programs agreed to rely on only one abstraction layer, for example the standard C library ([[glibc]]). -(Additionally, for example for system calls that are not covered by glibc +(Additionally, for example for [[system call]]s that are not covered by glibc calls, you'd need to be able to reliably trap and emulate these.) However, Linux' and the GNU Hurd's [[ABI]]'s have sufficiently diverged, so that this is not easy to do. That's why you can't currently install a system in this way, diff --git a/glibc.mdwn b/glibc.mdwn index f47efc03..2eba3667 100644 --- a/glibc.mdwn +++ b/glibc.mdwn @@ -6,8 +6,8 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!meta title="GNU C Library"]] @@ -31,6 +31,15 @@ Porting glibc to a specific architecture is non-trivial. # Implementation Details + * [[hurd/glibc/Hurd-specific API]] + + * [[open_issues/secure_file_descriptor_handling]] + + +## Individual functions + +Some of these are well-known as [[UNIX]] [[system call]]s. + * [[environment_variables]] * [[fork]] diff --git a/glibc/fork.mdwn b/glibc/fork.mdwn index c9efd1f4..e8556a91 100644 --- a/glibc/fork.mdwn +++ b/glibc/fork.mdwn @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] -On [[Unix]] systems, `fork` is a rather simple system call. +On [[Unix]] systems, `fork` is a rather simple [[system call]]. Our implementation in [[glibc]] is and needs to be rather bulky. @@ -22,12 +22,13 @@ which requires a small number of [[RPC]] for each of them. In sum, [[this affects performance|open_issues/performance/fork]] when new processes are continuously being spawned from the shell, for example. -Often, a `fork` call will eventually be followed by an `exec`, which will in -turn close (most of) the duplicated port rights. Unfortunately, this cannot be -known at the time the `fork` executing, so the code calling `fork` has to be -modified, and the `fork`, `exec` combo be replaced by a `posix_spawn` call, for -example, to avoid this work of duplicating each port right, then closing each -again. +Often, a `fork` call will eventually be followed by an `exec`, which [[may in +turn close|open_issues/secure_file_descriptor_handling]] (most of) the +duplicated port rights. Unfortunately, this cannot be known at the time the +`fork` executing, so in order to optimize this, the code calling `fork` has to +be modified instead, and the `fork`, `exec` combo be replaced by a +`posix_spawn` call, for example, to avoid this work of duplicating each port +right, then closing each again. As far as we know, Cygwin has the same problem of `fork` being a nontrivial operation. Perhaps we can learn from what they're been doing? Also, perhaps @@ -51,6 +52,11 @@ they have patches for software packages, to avoid using `fork` followed by ([[!taglink open_issue_glibc]]). +## Related + + * [[secure file descriptor handling]]. + + # External * [*How fork(2) ought to be*](http://www.greenend.org.uk/rjk/fork.html) by diff --git a/hurd/glibc/hurd-specific_api.mdwn b/hurd/glibc/hurd-specific_api.mdwn index aeb63d91..75220279 100644 --- a/hurd/glibc/hurd-specific_api.mdwn +++ b/hurd/glibc/hurd-specific_api.mdwn @@ -1,17 +1,18 @@ -[[!meta copyright="Copyright © 2002, 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2002, 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] [[!meta title="Hurd-specific glibc API"]] These functions have meaning only under Hurd. They are needed to get port -names that are used in native Hurd API (the RPC calls to servers). The `.defs` +names that are used in native Hurd API (the [[RPC]]s to servers). The `.defs` and `.h` files can be found in `/include/hurd` when all development files are installed (Debian package `hurd-dev`.) Note that `.defs` are not included in C programs -- they are used to produce `.h` files. @@ -157,7 +158,7 @@ programs -- they are used to produce `.h` files.

      thread_t
      hurd_thread_self (void);
      -
      Return the current thread's thread port. This is a cheap operation (no system call), but it relies on Hurd signal state being set up.
      +
      Return the current thread's thread port. This is a cheap operation (no [[system call]]), but it relies on Hurd signal state being set up.

      error_t
      diff --git a/hurd/networking.mdwn b/hurd/networking.mdwn index ff16eb25..bdf9def2 100644 --- a/hurd/networking.mdwn +++ b/hurd/networking.mdwn @@ -1,12 +1,13 @@ -[[!meta copyright="Copyright © 2000, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2000, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] For each supported `PF_*` protocol family, there is a file `/servers/socket/N` where `N` is the numberic value fo the `PF_*` symbol. Right now @@ -17,10 +18,10 @@ where `N` is the numberic value fo the `PF_*` symbol. Right now User programs open those files, and use the `socket_create` [[RPC]] to make a new socket. With that socket, they can use the other `socket_*` RPCs and also the `io_*` RPCs. The `socket_*` RPCs are essentially clones of the [[Unix]] -syscalls in question. +[[system call]]s in question. The only exception is `sockaddrs`, which are implemented as [[ports|libports]] -instead of the opaque data arrays they are in the syscalls. You manipulate +instead of the opaque data arrays they are in the system calls. You manipulate `sockaddr` ports with the `socket_create_address`, `socket_fabricate_address`, and `socket_whatis_address` calls. The `sockaddr` port is then used in socket calls like `socket_connect` and `socket_accept`. diff --git a/hurd/ng/microkernelcoyotos.mdwn b/hurd/ng/microkernelcoyotos.mdwn index cdf4e1bf..2340901d 100644 --- a/hurd/ng/microkernelcoyotos.mdwn +++ b/hurd/ng/microkernelcoyotos.mdwn @@ -2,7 +2,9 @@ [Coyotos](http://www.coyotos.org/index.html) is a microkernel and OS and the successor of EROS, that itself is the successor of KeyKOS. A more complete history can be found [here](http://www.coyotos.org/history.html). Its main objectives are to correcte some shortcomings of EROS, demonstrate that an atomic kernel design scales well, and (eventually) to completely formally verify both the kernel and critical system components by writing them in a new language called [bitc](http://www.bitc-lang.org/). [See [l4.verified](http://nicta.com.au/research/projects/l4.verified) for work on formally verifying an L4 microkernel.] -Coyotos is an orthogonally persistent pure capability system. It uses continuation based unbuffered asynchronous IPC (actually it's synchronous IPC with asynchronous syscalls). +Coyotos is an orthogonally persistent pure capability system. It uses +continuation based unbuffered asynchronous IPC (actually it's synchronous IPC +with asynchronous [[system calls]]). TODO: explain these terms and (more important) their consequences on system design. diff --git a/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn b/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn index 4eeef6ee..0d91dee7 100644 --- a/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn +++ b/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn @@ -6,10 +6,11 @@ This comparison is about a simple situation: there is a parent process P, which # Trivial Confinement -For trivial confinement, there is a system call to create a process from some memory pages. P performs the following steps: +For trivial confinement, there is a [[system call]] to create a process from +some memory pages. P performs the following steps: * Allocate some memory and put the code image of the child into that memory. This can be done by P, or for example by the file system which then gives the resulting memory (space bank) to P. -* Perform the system call on that memory. The result is a capability to C. +* Perform the [[system call]] on that memory. The result is a capability to C. * Send A to C using the returned capability. Note that it is up to the implementation of the system what happens with P's access to the memory which holds the child. For example, it is probably a good idea if it is at least unmapped, so it cannot accidentily write things in it. It could even be revoked, so that it can't write things in it, even if it wants to. @@ -32,7 +33,16 @@ This mechanism is targeted at a specific use pattern, namely that a process is c # POSIX Fork -POSIX fork, or rather fork+exec, is how things are done on many current systems. It may be insightful to see it included in the comparison, especially for people who are new to the subject. There are two system calls, fork and exec. Fork will create a clone of the current process, including all the capabilities (that is, file descriptors) of the parent (except the ones which have explicitly been excluded). Exec is a system call which really goes to the filesystem, not the kernel (although on systems which use it, the filesystem usually resides in the kernel), and asks it to spawn a new process from the contents of a certain path in place of the caller. This passes all capabilities to the new process. The procedure is: +POSIX fork, or rather fork+exec, is how things are done on many current +systems. It may be insightful to see it included in the comparison, especially +for people who are new to the subject. There are two [[system call]]s, fork and +exec. Fork will create a clone of the current process, including all the +capabilities (that is, file descriptors) of the parent (except the ones which +have explicitly been excluded). Exec is a [[system call]] which really goes to +the filesystem, not the kernel (although on systems which use it, the +filesystem usually resides in the kernel), and asks it to spawn a new process +from the contents of a certain path in place of the caller. This passes all +capabilities to the new process. The procedure is: * P calls fork(), creating P'. * P' drops B. @@ -67,7 +77,7 @@ Except for the control, there is really only one other difference, and that's ad What it doesn't do is protect the code image against bugs in P. In the constructor the trusted and well-tested constructor code is handling the image, for trivial confinement the (very possibly) buggy program P. In particular, when starting a program from a file system, with trivial confinement the operation is: * Ask the file system for the code, receive a capability to a space bank with a copy (on write) of it. -* Make the system call to turn it into a program. +* Make the [[system call]] to turn it into a program. Now this isn't much more complicated than the constructor which does: diff --git a/hurd/translator/wishlist_2.mdwn b/hurd/translator/wishlist_2.mdwn index a927db55..77f39644 100644 --- a/hurd/translator/wishlist_2.mdwn +++ b/hurd/translator/wishlist_2.mdwn @@ -70,7 +70,17 @@ Here's an [idea](http://www.circlemud.org/~jelson/software/fusd/docs/node13.html * "One particularly interesting application of FUSD that we've found very useful is as a way to let regular user-space libraries export device file APIs. For example, imagine you had a library which factored large composite numbers. Typically, it might have a C interface--say, a function called `int *factorize(int bignum)`. With FUSD, it's possible to create a device file interface--say, a device called `/dev/factorize` to which clients can `write(2)` a big number, then `read(2)` back its factors. -* This may sound strange, but device file APIs have at least three advantages over a typical library API. First, it becomes much more language independent--any language that can make system calls can access the factorization library. Second, the factorization code is running in a different address space; if it crashes, it won't crash or corrupt the caller. Third, and most interestingly, it is possible to use `select(2)` to wait for the factorization to complete. `select(2)` would make it easy for a client to factor a large number while remaining responsive to other events that might happen in the meantime. In other words, FUSD allows normal user-space libraries to integrate seamlessly with UNIX's existing, POSIX-standard event notification interface: `select(2)`." +* This may sound strange, but device file APIs have at least three advantages + over a typical library API. First, it becomes much more language + independent--any language that can make [[system call]]s can access the + factorization library. Second, the factorization code is running in a + different address space; if it crashes, it won't crash or corrupt the + caller. Third, and most interestingly, it is possible to use `select(2)` to + wait for the factorization to complete. `select(2)` would make it easy for a + client to factor a large number while remaining responsive to other events + that might happen in the meantime. In other words, FUSD allows normal + user-space libraries to integrate seamlessly with UNIX's existing, + POSIX-standard event notification interface: `select(2)`." ## Mail diff --git a/qemu.mdwn b/qemu.mdwn index 19b5fb9f..d7cea5ad 100644 --- a/qemu.mdwn +++ b/qemu.mdwn @@ -1,13 +1,13 @@ -[[!meta copyright="Copyright © 2005, 2007, 2008, 2009 Free Software Foundation, -Inc."]] +[[!meta copyright="Copyright © 2005, 2007, 2008, 2009, 2010 Free Software +Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] QEMU is free software written by Fabrice Bellard that implements a fast processor [[emulator|emulation]], allowing a user to run one operating system @@ -19,8 +19,8 @@ reasonable speed while being easy to port on new host CPUs. QEMU has two operating modes: * User mode emulation: QEMU can launch Linux processes compiled for one CPU - on another CPU. Linux system calls are converted because of endianness and - 32/64 bit mismatches. Wine and Dosemu are the main targets for QEMU. + on another CPU. Linux [[system call]]s are converted because of endianness + and 32/64 bit mismatches. Wine and Dosemu are the main targets for QEMU. * System mode emulation: QEMU emulates a full system, including a processor and various peripherials. It enables easier testing and debugging of diff --git a/system_call.mdwn b/system_call.mdwn new file mode 100644 index 00000000..197889cb --- /dev/null +++ b/system_call.mdwn @@ -0,0 +1,19 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +In an [[UNIX]]-like system, a *system call* (*syscall*) is used to request all +kinds of functionality from the operating system kernel. + +A [[microkernel]]-based system typically won't offer a lot of system calls -- +apart from one central one, and that is *send message* -- but instead [[RPC]]s +will be used instead. + +In the [[GNU Hurd|hurd]], a lot of what is traditionlly considered to be a UNIX +system call is implemented (primarily by means of [[RPC]]) inside [[glibc]]. -- cgit v1.2.3 From cd782d77c1e90976cb6dacf6ba78ba762f145a50 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 30 Nov 2010 10:39:28 +0100 Subject: Been reading another LWN issue... --- capability.mdwn | 14 ++-- community/gsoc/project_ideas.mdwn | 2 +- community/gsoc/project_ideas/valgrind.mdwn | 80 ---------------------- glibc.mdwn | 9 ++- glibc/fallocate.mdwn | 17 +++++ glibc/fork.mdwn | 18 +++-- glibc/signals.mdwn | 32 +++++++++ hurd/glibc/hurd-specific_api.mdwn | 8 ++- hurd/ng/trivialconfinementvsconstructorvsfork.mdwn | 24 ++++--- hurd/translator/magic.mdwn | 11 +-- open_issues/code_analysis.mdwn | 12 +++- open_issues/debugging.mdwn | 16 +++-- open_issues/multithreading.mdwn | 4 +- open_issues/nightly_builds_deb_packages.mdwn | 6 ++ open_issues/secure_file_descriptor_handling.mdwn | 9 +++ open_issues/unit_testing.mdwn | 9 ++- open_issues/valgrind.mdwn | 80 ++++++++++++++++++++++ persistency.mdwn | 11 +-- unix.mdwn | 48 +++++++++++-- unix/file_descriptor.mdwn | 13 ++++ virtualization.mdwn | 7 +- 21 files changed, 296 insertions(+), 134 deletions(-) delete mode 100644 community/gsoc/project_ideas/valgrind.mdwn create mode 100644 glibc/fallocate.mdwn create mode 100644 glibc/signals.mdwn create mode 100644 open_issues/valgrind.mdwn create mode 100644 unix/file_descriptor.mdwn (limited to 'hurd/translator') diff --git a/capability.mdwn b/capability.mdwn index 367ea163..d78810d5 100644 --- a/capability.mdwn +++ b/capability.mdwn @@ -1,12 +1,13 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] A capability is a protected reference. It is a reference in that it designates an object; it is protected in that in cannot be @@ -27,7 +28,6 @@ sent a string to identify the file to B, the identifier lacks a than A intended. Be ensuring that [[designation]] and [[authorization]] are always bound together, these problems are avoided. -[[Unix]] file descriptors can be viewed as capabilities. Unix file -descriptors do not survive reboot, that is, they are not -[[persistent|persistency]]. To work around this, [[ACL]]s are used to -recover authority. +[[UNIX file descriptors|unix/file_descriptor]] can be viewed as capabilities. +They do not survive reboot, that is, they are not [[persistent|persistency]]. +To work around this, [[ACL]]s are used to recover authority. diff --git a/community/gsoc/project_ideas.mdwn b/community/gsoc/project_ideas.mdwn index b039608f..649e05c1 100644 --- a/community/gsoc/project_ideas.mdwn +++ b/community/gsoc/project_ideas.mdwn @@ -106,4 +106,4 @@ See also the list of [Hurd-related X.org project ideas](http://wiki.x.org/wiki/H [[!inline pages="community/gsoc/project_ideas/testsuites" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/libcap" show=0 feeds=no actions=yes]] [[!inline pages="community/gsoc/project_ideas/xattr" show=0 feeds=no actions=yes]] -[[!inline pages="community/gsoc/project_ideas/valgrind" show=0 feeds=no actions=yes]] +[[!inline pages="open_issues/valgrind" show=0 feeds=no actions=yes]] diff --git a/community/gsoc/project_ideas/valgrind.mdwn b/community/gsoc/project_ideas/valgrind.mdwn deleted file mode 100644 index 7d68e82d..00000000 --- a/community/gsoc/project_ideas/valgrind.mdwn +++ /dev/null @@ -1,80 +0,0 @@ -[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] - -[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable -id="license" text="Permission is granted to copy, distribute and/or modify this -document under the terms of the GNU Free Documentation License, Version 1.2 or -any later version published by the Free Software Foundation; with no Invariant -Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] - -[[!meta title="Porting Valgrind to the Hurd"]] - -[Valgrind](http://valgrind.org/) is an extremely useful debugging tool for memory errors. -(And some other kinds of hard-to-find errors too.) -Aside from being useful for program development in general, -a Hurd port will help finding out why certain programs segfault on the Hurd, -although they work on Linux. -Even more importantly, it will help finding bugs in the Hurd servers themselfs. - -To keep track of memory use, -Valgrind however needs to know how each [[system call]] affects the validity of memory regions. -This knowledge is highly kernel-specific, -and thus Valgrind needs to be explicitely ported for every system. - -Such a port involves two major steps: -making Valgrind understand how kernel traps work in general on the system in question; -and how all the individual kernel calls affect memory. -The latter step is where most of the work is, -as the behaviour of each single [[system call]] needs to be described. - -Compared to Linux, -Mach (the microkernel used by the Hurd) has very few kernel traps. -Almost all [[system call]]s are implemented as RPCs instead -- -either handled by Mach itself, or by the various Hurd servers. -All RPCs use a pair of mach\_msg() invocations: -one to send a request message, and one to receive a reply. -However, while all RPCs use the same mach\_msg() trap, -the actual effect of the call varies greatly depending on which RPC is invoked -- -similar to the ioctl() call on Linux. -Each request thus must be handled individually. - -Unlike ioctl(), -the RPC invocations have explicit type information for the parameters though, -which can be retrieved from the message header. -By analyzing the parameters of the RPC reply message, -Valgrind can know exactly which memory regions are affected by that call, -even without specific knowledge of the RPC in question. -Thus implementing a general parser for the reply messages -will already give Valgrind a fairly good approximation of memory validity -- -without having to specify the exact semantic of each RPC by hand. - -While this should make Valgrind quite usable on the Hurd already, it's not perfect: -some RPCs might return a buffer that is only partially filled with valid data; -or some reply parameters might be optional, -and only contain valid data under certain conditions. -Such specific semantics can't be deduced from the message headers alone. -Thus for a complete port, -it will still be necessary to go through the list of all known RPCs, -and implement special handling in Valgrind for those RPCs that need it. - -The goal of this task is at minimum to make Valgrind grok Mach traps, -and to implement the generic RPC handler. -Ideally, specific handling for RPCs needing it should also be implemented. - -Completing this project will require digging into Valgrind's handling of [[system call]]s, -and into Hurd RPCs. -It is not an easy task, but a fairly predictable one -- -there shouldn't be any unexpected difficulties, -and no major design work is necessary. -It doesn't require any specific previous knowledge: -only good programming skills in general. -On the other hand, -the student will obtain a good understanding of Hurd RPCs while working on this task, -and thus perfect qualifications for Hurd development in general :-) - -Possible mentors: Samuel Thibault (youpi) - -Exercise: As a starter, -students can try to teach valgrind a couple of Linux ioctls, -as this will make them learn how to use the read/write primitives of valgrind. diff --git a/glibc.mdwn b/glibc.mdwn index 2eba3667..124216d9 100644 --- a/glibc.mdwn +++ b/glibc.mdwn @@ -36,11 +36,18 @@ Porting glibc to a specific architecture is non-trivial. * [[open_issues/secure_file_descriptor_handling]] +## Concepts + + * [[environment_variables]] + + * [[signals]] + + ## Individual functions Some of these are well-known as [[UNIX]] [[system call]]s. - * [[environment_variables]] + * [[fallocate]] * [[fork]] diff --git a/glibc/fallocate.mdwn b/glibc/fallocate.mdwn new file mode 100644 index 00000000..3aecf16b --- /dev/null +++ b/glibc/fallocate.mdwn @@ -0,0 +1,17 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +Not yet implemented for the GNU Hurd in [[glibc]]. + + +# External + + * [*Punching holes in files*](http://lwn.net/Articles/415889/), Jonathan + Corbet, 2010-11-17. diff --git a/glibc/fork.mdwn b/glibc/fork.mdwn index e8556a91..378fe835 100644 --- a/glibc/fork.mdwn +++ b/glibc/fork.mdwn @@ -14,10 +14,10 @@ Our implementation in [[glibc]] is and needs to be rather bulky. For example, it has to duplicate all port rights for the new [[Mach task|microkernel/mach/task]]. The address space can simply be duplicated by -standard means of the [[microkernel/Mach]], but as [[file descriptor]]s (for -example) are a concept that is implemented inside [[glibc]] (based on [[Mach -port|microkernel/mach/port]]s), these have to be duplicated from userspace, -which requires a small number of [[RPC]] for each of them. +standard means of the [[microkernel/Mach]], but as [[unix/file_descriptor]]s +(for example) are a concept that is implemented inside [[glibc]] (based on +[[Mach port|microkernel/mach/port]]s), these have to be duplicated from +userspace, which requires a small number of [[RPC]] for each of them. In sum, [[this affects performance|open_issues/performance/fork]] when new processes are continuously being spawned from the shell, for example. @@ -43,7 +43,7 @@ they have patches for software packages, to avoid using `fork` followed by ([[!taglink open_issue_glibc]]). * Include de-duplicate information from elsewhere: [[hurd-paper]], - [[hurd-talk]] [[hurd/ng/trivialconfinementvsconstructorvsfork]], + [[hurd-talk]], [[hurd/ng/trivialconfinementvsconstructorvsfork]], [[open_issues/resource_management_problems/zalloc_panics]] ([[!taglink open_issue_glibc open_issue_documentation]]). @@ -54,13 +54,11 @@ they have patches for software packages, to avoid using `fork` followed by ## Related - * [[secure file descriptor handling]]. + * [[open_issues/secure_file_descriptor_handling]]. # External - * [*How fork(2) ought to be*](http://www.greenend.org.uk/rjk/fork.html) by - Richard Kettlewell. + * {{$unix#djb_self-pipe}}. - * [*The self-pipe trick*](http://cr.yp.to/docs/selfpipe.html) by - D. J. Bernstein. + * {{$unix#rjk_fork}}. diff --git a/glibc/signals.mdwn b/glibc/signals.mdwn new file mode 100644 index 00000000..40fdc0e1 --- /dev/null +++ b/glibc/signals.mdwn @@ -0,0 +1,32 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +*[[UNIX]] signals* are a means to asynchronously invoke a specific function +(*signal handler*). This may impact on [[system call]]s that are executing at +the same time in that they may be completely aborted, return incomplete +results, scheduled for restarting, or cause signal delivery to be blocked upon +the system call's completion. + +An explanation can be found in the relevant standards, an overview, including +UNIX signals' deficiencies is given in {{$unix#2010_brown_ghosts_3}}, for +example. + +The UNIX signalling mechanism is implemented for the GNU Hurd by means of a +separate signal-handling thread that is part of every process. This makes +handling of signals a separate thread of control. + + * [[SA_SIGINFO, SA_SIGACTION|open_issues/sa_siginfo_sa_sigaction]] + + +# External + + * {{$unix#djb_self-pipe}}. + + * {{$unix#rjk_fork}}. diff --git a/hurd/glibc/hurd-specific_api.mdwn b/hurd/glibc/hurd-specific_api.mdwn index 75220279..7ead63cd 100644 --- a/hurd/glibc/hurd-specific_api.mdwn +++ b/hurd/glibc/hurd-specific_api.mdwn @@ -82,7 +82,13 @@ programs -- they are used to produce `.h` files.
      openport (io_t port, int flags);

      -
      Open a file descriptor on a port. FLAGS are as for open; flags affected by io_set_openmodes are not changed by this. If successful, this consumes a user reference for PORT (which will be deallocated on close.) See &lt;hurd/io.defs&gt; and &lt;hurd/io.h&gt;.
      +
      Open a [[unix/file_descriptor]] on a [[microkernel/mach/port]]. FLAGS + are as for open; flags affected by io_set_openmodes are + not changed by this. If successful, this consumes a user reference for + PORT (which will be deallocated on close.) See + &lt;hurd/io.defs&gt; and + &lt;hurd/io.h&gt;. +

      task_t
      diff --git a/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn b/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn index 0d91dee7..949895e7 100644 --- a/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn +++ b/hurd/ng/trivialconfinementvsconstructorvsfork.mdwn @@ -34,15 +34,15 @@ This mechanism is targeted at a specific use pattern, namely that a process is c # POSIX Fork POSIX fork, or rather fork+exec, is how things are done on many current -systems. It may be insightful to see it included in the comparison, especially -for people who are new to the subject. There are two [[system call]]s, fork and -exec. Fork will create a clone of the current process, including all the -capabilities (that is, file descriptors) of the parent (except the ones which -have explicitly been excluded). Exec is a [[system call]] which really goes to -the filesystem, not the kernel (although on systems which use it, the -filesystem usually resides in the kernel), and asks it to spawn a new process -from the contents of a certain path in place of the caller. This passes all -capabilities to the new process. The procedure is: +systems. It may be insightful to see it included in the comparison, especially +for people who are new to the subject. There are two [[system call]]s, fork +and exec. Fork will create a clone of the current process, including all the +capabilities (that is, [[unix/file_descriptor]]s) of the parent (except the +ones which have explicitly been excluded). Exec is a [[system call]] which +really goes to the filesystem, not the kernel (although on systems which use +it, the filesystem usually resides in the kernel), and asks it to spawn a new +process from the contents of a certain path in place of the caller. This +passes all capabilities to the new process. The procedure is: * P calls fork(), creating P'. * P' drops B. @@ -62,7 +62,11 @@ In contrast, the other two options don't pass anything by default. If there is a The problem of fork+exec can be solved. It is if the default would be to not pass capabilities to the new process, but specify a list of capabilities that it should keep, or (like in the other cases) pass them over a new channel which is implicitly created during the fork. However, in that case the only difference with trivial confinement is that P' dies in the process (and thus must be created to prevent P from dying). Almost any use of exec is in practice preceded by a fork for this purpose. It would be easier to make trivial confinement the default operation and let P die directly after it in the rare case that it should. -The only reason for continuing to use fork+exec would be that it is what existing programs do. However, they break anyway if they need to specify which file descriptors to pass. So they need to be adapted. Therefore, it's better to make the usual spawning method the primitive one, and emulate the other. +The only reason for continuing to use fork+exec would be that it is what +existing programs do. However, they break anyway if they need to specify which +[[unix/file_descriptor]]s to pass. So they need to be adapted. Therefore, it's +better to make the usual spawning method the primitive one, and emulate the +other. # Trivial Confinement vs Constructor diff --git a/hurd/translator/magic.mdwn b/hurd/translator/magic.mdwn index 06ee798b..84bacdfb 100644 --- a/hurd/translator/magic.mdwn +++ b/hurd/translator/magic.mdwn @@ -1,20 +1,21 @@ -[[!meta copyright="Copyright © 2006, 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2006, 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] The magic translator provides `/dev/fd`. $ showtrans /dev/fd /hurd/magic --directory fd -The `/dev/fd` directory holds the open file descriptors for your current -process. You can't see them with `ls -l /dev/fd/` but you can see them +The `/dev/fd` directory holds the open [[unix/file_descriptor]]s for your +current process. You can't see them with `ls -l /dev/fd/` but you can see them individually like this: $ ls -l /dev/fd/0 diff --git a/open_issues/code_analysis.mdwn b/open_issues/code_analysis.mdwn index 98447e98..ad104e68 100644 --- a/open_issues/code_analysis.mdwn +++ b/open_issues/code_analysis.mdwn @@ -8,7 +8,7 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] -There is static and dynamic code analysis. +There is static and dynamic code analysis. This overlaps with [[debugging]]. * [[GCC]]'s warnings. Yes, really. @@ -29,3 +29,13 @@ There is static and dynamic code analysis. * * + + * [[Valgrind]] + + * + + * + + * + + * diff --git a/open_issues/debugging.mdwn b/open_issues/debugging.mdwn index 95b7bf9b..e66a086f 100644 --- a/open_issues/debugging.mdwn +++ b/open_issues/debugging.mdwn @@ -18,7 +18,7 @@ We have debugging infrastructure. For example: * [[GNU Mach debugging|microkernel/mach/gnumach/debugging]] * [[GNU Hurd debugging|hurd/debugging]], including - [[hurd/debugging/rpctrace]] and more. + [[hurd/debugging/rpctrace]], and more. # To Do @@ -29,14 +29,20 @@ We have debugging infrastructure. For example: * [[profiling]] - * *[Checkpoint/restart](http://lwn.net/Articles/412749/) allows the state of - a set of processes to be saved to persistent storage, then restarted at - some future time* -- quoting from Jonathan Corbet's 2010 Linux Kernel - Summit report. + * *Checkpoint/restart allows the state of a set of processes to be saved to + persistent storage, then restarted at some future time* -- quoting from + Jonathan Corbet's [2010 Linux Kernel Summit + report](http://lwn.net/Articles/412749/). This is surely a very useful facility to have for reproducing failures, for example. But on the other hand it's questionable how it can help with debugging failures in [[GNU Hurd server|hurd/translator]]s' interactions, as their state is typically spread between several processes. + Continues: , which introduces + . + * [[locking]] + + * , or -- + just two examples; there's a lot of such stuff for Linux. diff --git a/open_issues/multithreading.mdwn b/open_issues/multithreading.mdwn index 81b96280..170734fd 100644 --- a/open_issues/multithreading.mdwn +++ b/open_issues/multithreading.mdwn @@ -22,9 +22,11 @@ Alternative approaches: * Continuation-passing style + * [[Erlang-style_parallelism]] + * [libtcr - Threaded Coroutine Library](http://oss.linbit.com/libtcr/) - * [[Erlang-style_parallelism]] + * --- diff --git a/open_issues/nightly_builds_deb_packages.mdwn b/open_issues/nightly_builds_deb_packages.mdwn index 29219c2a..9f5e2373 100644 --- a/open_issues/nightly_builds_deb_packages.mdwn +++ b/open_issues/nightly_builds_deb_packages.mdwn @@ -18,4 +18,10 @@ packages. --- +There is infrastructure available to test whole OS installations. + + * + +--- + See also [[nightly_builds]]. diff --git a/open_issues/secure_file_descriptor_handling.mdwn b/open_issues/secure_file_descriptor_handling.mdwn index c9956ede..1a514e69 100644 --- a/open_issues/secure_file_descriptor_handling.mdwn +++ b/open_issues/secure_file_descriptor_handling.mdwn @@ -8,7 +8,16 @@ Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] +[[!tag open_issue_glibc]] + `O_CLOEXEC`, `dup3` et al.; see . [[tschwinge]] once worked on this, posted patches to libc-alpha. This works needs to be resumed and finished. + +--- + +In an interesting point is made: *you [may] +want some [[unix/file_descriptor]] to still be open if 'exec' fails, but you +don't want it to be open after the exec succeeds*. [[I|tschwinge]]'m not sure +whether our current `O_CLOEXEC` implementation adheres to that. diff --git a/open_issues/unit_testing.mdwn b/open_issues/unit_testing.mdwn index 80a2860a..d50f5f6d 100644 --- a/open_issues/unit_testing.mdwn +++ b/open_issues/unit_testing.mdwn @@ -46,7 +46,14 @@ abandoned). * [*[ANNOUNCE] ktest.pl: Easy and flexible testing script for Linux Kernel Developers*](http://lwn.net/Articles/412302/) by Steven Rostedt, - 2010-10-28. + 2010-10-28. [v2](http://lwn.net/Articles/414064/), 2010-11-08. + + +# Related + + * [[nightly_builds]] + + * [[nightly_builds_deb_packages]] * -- ``comprehensive testing and benchmarking platform''. This one might be useful for [[performance]] diff --git a/open_issues/valgrind.mdwn b/open_issues/valgrind.mdwn new file mode 100644 index 00000000..2b0624d7 --- /dev/null +++ b/open_issues/valgrind.mdwn @@ -0,0 +1,80 @@ +[[!meta copyright="Copyright © 2009, 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!meta title="Porting Valgrind to the Hurd"]] + +[Valgrind](http://valgrind.org/) is an extremely useful debugging tool for memory errors. +(And some other kinds of hard-to-find errors too.) +Aside from being useful for program development in general, +a Hurd port will help finding out why certain programs segfault on the Hurd, +although they work on Linux. +Even more importantly, it will help finding bugs in the Hurd servers themselfs. + +To keep track of memory use, +Valgrind however needs to know how each [[system call]] affects the validity of memory regions. +This knowledge is highly kernel-specific, +and thus Valgrind needs to be explicitely ported for every system. + +Such a port involves two major steps: +making Valgrind understand how kernel traps work in general on the system in question; +and how all the individual kernel calls affect memory. +The latter step is where most of the work is, +as the behaviour of each single [[system call]] needs to be described. + +Compared to Linux, +[[microkernel/Mach]] (the microkernel used by the Hurd) has very few kernel traps. +Almost all [[system call]]s are implemented as [[RPC]]s instead -- +either handled by Mach itself, or by the various [[Hurd servers|hurd/translator]]. +All RPCs use a pair of `mach_msg` invocations: +one to send a request message, and one to receive a reply. +However, while all RPCs use the same `mach_msg` trap, +the actual effect of the call varies greatly depending on which RPC is invoked -- +similar to the `ioctl` call on Linux. +Each request thus must be handled individually. + +Unlike `ioctl`, +the RPC invocations have explicit type information for the parameters though, +which can be retrieved from the message header. +By analyzing the parameters of the RPC reply message, +Valgrind can know exactly which memory regions are affected by that call, +even without specific knowledge of the RPC in question. +Thus implementing a general parser for the reply messages +will already give Valgrind a fairly good approximation of memory validity -- +without having to specify the exact semantic of each RPC by hand. + +While this should make Valgrind quite usable on the Hurd already, it's not perfect: +some RPCs might return a buffer that is only partially filled with valid data; +or some reply parameters might be optional, +and only contain valid data under certain conditions. +Such specific semantics can't be deduced from the message headers alone. +Thus for a complete port, +it will still be necessary to go through the list of all known RPCs, +and implement special handling in Valgrind for those RPCs that need it. + +The goal of this task is at minimum to make Valgrind grok Mach traps, +and to implement the generic RPC handler. +Ideally, specific handling for RPCs needing it should also be implemented. + +Completing this project will require digging into Valgrind's handling of [[system call]]s, +and into Hurd RPCs. +It is not an easy task, but a fairly predictable one -- +there shouldn't be any unexpected difficulties, +and no major design work is necessary. +It doesn't require any specific previous knowledge: +only good programming skills in general. +On the other hand, +the student will obtain a good understanding of Hurd RPCs while working on this task, +and thus perfect qualifications for Hurd development in general :-) + +Possible mentors: Samuel Thibault (youpi) + +Exercise: As a starter, +students can try to teach valgrind a couple of Linux ioctls, +as this will make them learn how to use the read/write primitives of valgrind. diff --git a/persistency.mdwn b/persistency.mdwn index f5347a4e..36f90c8a 100644 --- a/persistency.mdwn +++ b/persistency.mdwn @@ -1,18 +1,19 @@ -[[!meta copyright="Copyright © 2007, 2008 Free Software Foundation, Inc."]] +[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation, +Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] A persistent object is an object that survives reboot. On [[Unix]], files and directories are persistent but -processes and file descriptors are not. [[microkernel/EROS]] is +processes and [[unix/file_descriptor]]s are not. [[microkernel/EROS]] is an example of an orthogonally persistent system: -processes and capabilities also survive reboot. To a +processes and [[capabilities|capability]] also survive reboot. To a process, it generally only looks as if it had not been scheduled for a long time; the rest of its environment remains essentially the indistinguishable. diff --git a/unix.mdwn b/unix.mdwn index 601b36d1..bf361e2e 100644 --- a/unix.mdwn +++ b/unix.mdwn @@ -19,9 +19,49 @@ License|/fdl]]."]]"""]] UNIX*](http://www.informit.com/articles/printerfriendly.aspx?p=691503), an article by David Chisnall. - * [*Ghosts of Unix Past: a historical search for design - patterns*](http://lwn.net/Articles/411845/) (2010-10-27) by Neil Brown, - including file descriptors and the single, hierarchical namespace. + * The first in the series, {{$2010_brown_ghosts_1}} introduces the concepts + of [[file_descriptor]]s and the single, hierarchical [[namespace]]. + + Next, {{$2010_brown_ghosts_2}} discusses issues with *conflated designs* + such as the `mount` command (a problem we have partly solved / solved + differently with our [[hurd/translator]] approach and the + [[hurd/virtual_file_system]]), and the plethora of flags that can be passed + to the `open` [[system_call]]. + + In {{$2010_brown_ghosts_3}}, he deals with *unfixable designs*, such as + [[UNIX signals|glibc/signals]] and the *UNIX permission model* (which is + clearly inferior to a [[capability]]-based system). * [*UNIX File Permissions*](http://www.greenend.org.uk/rjk/2004/perms.html) - (2004) by Richard Kettlewell. + (2004) by Richard Kettlewell. ([[!taglink open_issue_documentation]]) + + +[[!ymlfront data=""" + +djb_self-pipe: + + D. J. Bernstein's [*self-pipe trick*](http://cr.yp.to/docs/selfpipe.html) + +rjk_fork: + + Richard Kettlewell's suggestions about [*how fork(2) ought to + be*](http://www.greenend.org.uk/rjk/fork.html) + +2010_brown_ghosts_1: + + "Neil Brown's 2010-10-27 article [*Ghosts of Unix Past: a historical search + for design patterns*](http://lwn.net/Articles/411845/)" + +2010_brown_ghosts_2: + + "Neil Brown's 2010-11-04 article [*Ghosts of Unix past, part 2: Conflated + designs*](http://lwn.net/Articles/412131/)" + +2010_brown_ghosts_3: + + "Neil Brown's 2010-11-16 article [*Ghosts of Unix past, part 3: Unfixable + designs*](http://lwn.net/Articles/414618/)" + +"""]] diff --git a/unix/file_descriptor.mdwn b/unix/file_descriptor.mdwn new file mode 100644 index 00000000..16e03fdf --- /dev/null +++ b/unix/file_descriptor.mdwn @@ -0,0 +1,13 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +A *file descriptor* is a [[concept]] of [[UNIX]], and represents a +non-[[persistent|persistency]] handle to an object (a file, for example). With +respect to specific aspects, it is comparable to a [[capability]]. diff --git a/virtualization.mdwn b/virtualization.mdwn index 3a207ae8..78457eb9 100644 --- a/virtualization.mdwn +++ b/virtualization.mdwn @@ -6,8 +6,11 @@ id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license -is included in the section entitled -[[GNU Free Documentation License|/fdl]]."]]"""]] +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + + * [[hurd/virtualization]] in the GNU Hurd's context. + # External -- cgit v1.2.3