summaryrefslogtreecommitdiff
path: root/faq/which_microkernel.mdwn
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@schwinge.name>2011-03-29 12:19:10 +0200
committerThomas Schwinge <thomas@schwinge.name>2011-03-29 12:19:10 +0200
commit2968bbdfc5d2ab381bbc9ce88e6ae90493cba2cb (patch)
treeb9bd988b68b9683a58ff43087ec595ce5b8c1923 /faq/which_microkernel.mdwn
parentef20dadf4b2dc498f99f3101cd17349339fb9354 (diff)
faq/which_microkernel: Resurrect Olaf's text, and work on it some more.
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]].