summaryrefslogtreecommitdiff
path: root/faq/which_microkernel/discussion.mdwn
blob: 9ef3b915e9691154b1c78159bb0000924be440f3 (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
This version mixes up three distinct phases: rewrite from scratch; redesign;
own microkernel.

While Okuji initially might have intended a direct port of the existing Hurd
code, by the time I started following Hurd development (2004 IIRC), it has been
long clear that Hurd/L4 is a rewrite from scratch.

The next phase was the desire of Neal and especially Macrus to completely
reinvent the design of the Hurd. This was mostly fueled by Shapiro's influence,
resulting in a security-above-everything rage. It was in this phase that not
only the original L4 has been abandonend, but also all thoughts about using
newer L4 variants (which might have been suitable) were forsaken in favor of
Shapiro's Coyotos.

The whole idea of redesigning the Hurd -- especially for security concerns --
is highly controversial: I always strongly objected to it; and Marcus later
admitted himself that he got carried away and lost sight of what really matters
for the Hurd. (But only after realising that Shapiro's notion of high security
is fundamentally incompatible with the GNU philosophy.) I opted for not
explicitely mentioning this aspect in the FAQ at all, as it's impossible to
explain properly in a compact form, and probably impossible at all to do it in
an objective fashion.

The final phase -- following the realisation of incompatibility with
Shapiro/Coyotos -- was the attempt to create new microkernels specifically for
Hurd's needs. Marcus abandonned his pretty soon, and never made it public, so I
didn't mention it at all; but Viengoos is still relevant in certain ways.

BTW, my original text also more explicitely answers the question what happened
to the Coyotos port -- which after all is what the title promises...

All in all, I still think my text was better. If you have any conerns with it,
please discuss them...