summaryrefslogtreecommitdiff
path: root/hurd/documentation.mdwn
blob: f095cf26a692358afd64c2eeca00bfb64f068ddc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
[[!meta copyright="Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
2009, 2011, 2012, 2015, 2019, 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="Hurd Documentation"]]

# Introductory Material
  * [[What_Is_the_GNU_Hurd?|What_Is_the_GNU_Hurd]]
  * [[Advantages of the Hurd|Advantages]]
  * [[The Hurd FAQ|FAQ]]
  * [[*The_Hurd_and_Linux*|/hurd-and-linux]], a comment by Richard Stallman.

<!-- This comment "pushes" RMS's comment back into the list. Markdown is just great. -->

  * [[*Towards_a_New_Strategy_of_OS_Design*|/hurd-paper]], an architectural
    overview by Thomas Bushnell, BSG, notably:
    * [[The design|/hurd-paper#design]]
    * [[Translators|/hurd-paper#translator]]
    * [[The auth translator|/hurd-paper#auth]]
    * [[The proc translator|/hurd-paper#proc]]
    * [[The exec translator|/hurd-paper#exec]]
    * [[The ftpfs translator|/hurd-paper#ftpfs]]

<!-- Push! -->

  * [[*The_Hurd*|/hurd-talk]], a presentation by Marcus Brinkmann, notably:
    * [[How to get a port?|/hurd-talk#how]]
    * [[Pathname resolution example|/hurd-talk#pat]]
    * [[Mapping the POSIX Interface|/hurd-talk#map]]
    * [[Active vs Passive|/hurd-talk#act]]
    * [[Authentication|/hurd-talk#aut]]
    * [[Password Server|/hurd-talk#pas]]
    * [[Process Server|/hurd-talk#pro]]

<!-- Force push! -->

  * [[*The Translator Primer*|Translator_Primer]].
  * [[*A Document About Translators*|translators]] 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

  * [[RPC]]: our usage of *Remote Procedure Call*s.
  * *[[The_GNU_Hurd_Reference_Manual|reference_manual]]*.
  * [[*The Hurd Hacking Guide|Hurd_Hacking_Guide]]*, an introduction to GNU&nbsp;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.
  * [*Generalizing mobility for the Hurd*](https://pdfs.semanticscholar.org/4cce/9abb177cc58c199e13b82d498f37010c2bfc.pdf),
    a thesis written by Carl Fredrik Hammar,
    investigates the mobility aspect of stores
    and how it can be generalized and used for other applications.
    The background chapter may be of interest to new developers.
  * [[Ada4Hurd]]: some tools to write translators with Ada