summaryrefslogtreecommitdiff
path: root/Hurd/NextHurd.mdwn
blob: 4cde820fc5bf6175e79c0870388c63156a4bac2c (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
# <a name="Next_Hurd"> Next Hurd </a>

There is work on progress to design a new Hurd currently known as ngHurd, Hhurd-NG or Hurd/Coyotos, which started by trying to port the Hurd to the L4 �-kernel. As L4 itself is now deprecated and it's successors, L4.sec and L4ng, are not ready yet, efforts are directed toward designing from scratch this new Hurd on top of the coyotos �-kernel.

There are discussions on the desired features of ngHurd, and discussions about it's design principles and core properties.

## <a name="Subjects"> Subjects </a>

### <a name="Organization"> Organization </a>

Summaries should obey the following structure:

* if there is a consensus, it is clearly described
* if controversial points remain, there are also described after the consenus
* if no choice has been clearly made, all valid positions are descrbied
* withdrawed and invalid positions (prooved wrong, unrealistic, contradictory to some design principle, etc.) should be described only very briefly, and developed in a separate article

Each time a point seems to be overly long with respect to the rest of the article, it should be summarized in place and developed in a separate article.

### <a name="The_Coyotos_microkernel"> The Coyotos microkernel </a>

[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). It's main objectives are to correcte some shortcomings of EROS, demonstrate that an atomic kernel design scales well and to completely formally verify both the kernel and critical system components by writing them in a new language called bitc.

Coyotos is an orthogonally persistent pure capability system. It uses continuation based unbuffered asynchronous IPC (actually it's synchronous IPC whith asynchronous syscalls).

TODO: explain these terms and (more important) their consequences on system design.

The coyotos microkernel specification can be found [here](http://www.coyotos.org/docs/ukernel/spec.html)

### <a name="Work_already_done"> Work already done </a>

A draft specification of the ngHurd iterfaces by Marcus Brinkmann and Neal H. Walfield can be found [here](http://www.marcus-brinkmann.org/hurd-ng.pdf).

A position paper is in work but no draft has been made public, yet.

-- [[Main/NowhereMan]] - 21 Apr 2006