summaryrefslogtreecommitdiff
path: root/faq/which_microkernel.mdwn
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2011-04-04 00:56:24 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-04-04 00:56:24 +0200
commit2de01fbb8f3aba6ac5d85b62d8c224220df01842 (patch)
tree678fe25ddf169972e1c4a273855d8017123b7ff4 /faq/which_microkernel.mdwn
parent271c3a402f9c9db2b38989829e60bc30ed6a7ec4 (diff)
parent636b547be5a607e353c3445ebabcbd780dad9de9 (diff)
Merge branch 'master' of flubber:~hurd-web/hurd-web
Diffstat (limited to 'faq/which_microkernel.mdwn')
-rw-r--r--faq/which_microkernel.mdwn44
1 files changed, 42 insertions, 2 deletions
diff --git a/faq/which_microkernel.mdwn b/faq/which_microkernel.mdwn
index 608e6b3f..0852cf09 100644
--- a/faq/which_microkernel.mdwn
+++ b/faq/which_microkernel.mdwn
@@ -8,8 +8,48 @@ Sections, no 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="What happened with the ports to the L4 / Coyotos / Viengoos
+[[!meta title="What happened with the Hurd ports to the L4 / Coyotos / Viengoos
microkernels?"]]
-This story is told on the page about the
+<!-- This page shares some text with history/port_to_another_microkernel. -->
+
+It is a frequently asked question, which microkernel the Hurd should be based
+upon assuming that [[microkernel/Mach]] is no longer considered state of the
+art, and it is well known that there has been a lot of discussion about this
+topic, and also some code produced, but then, years later, the Hurd is still
+based on [[GNU Mach|microkernel/mach/gnumach]].
+
+Around the turn of the millenium, some of the Hurd developers began
+experimenting with using other [[microkernel]]s for the Hurd, as they have been
+encountering a number of fundamental design issues with the [[Mach
+microkernel|microkernel/mach]], mostly with respect to
+[[open_issues/resource_management_problems]].
+
+At that time, L4 (Pistachio) was the prime candidate. A reimplementation of
+the Hurd on this microkernel looked promising, and got pretty far (running some
+simple POSIX programs, such as `banner`). However, over time some lingering
+design issues turned out to be fundamental problems: the original L4 is not
+suitable for building object-capability systems like the Hurd. Thus
+development was aborted in 2005.
+
+During that process, Neal Walfield and Marcus Brinkmann started on a period of
+research on other microkernels, getting in deeper contact with other
+researchers. There was a lot of discussion, and a lot of good ideas produced,
+but a straight-forward port of the Hurd to such a modern microkernel (Coyotos,
+or the new L4 variants, for example) didn't seem feasible to them anymore: they
+found microkernel design and system design to be interconnected in very
+intricate ways, and this demanded design changes in the Hurd's core itself.
+
+Based on this experience, the next step was to write an own microkernel
+instead, which Neal Walfield began doing with his experimental
+[[microkernel/Viengoos]] project, for his research on resource management.
+Currently he works in another research area though, and thus Viengoos is on
+hold.
+
+Note that while none of the microkernel research work is active now, the
+previous experiments already yielded a lot of experience, which will be very
+useful in the further development / improvement of the mainline (Mach-based)
+Hurd implementation.
+
+For more detauls about this topic, please see our history page about the
[[history/port_to_another_microkernel]].