summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2021-09-10 11:36:26 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2021-09-10 11:36:29 +0200
commite87e68c21b3edcf48a56d3202c2fa9413dfaf52c (patch)
tree24b14b0e93c8045147a331b668e1397549054fa1
parentb65fb5ca15537e0cc4ef22a54700f3619e72545e (diff)
complete the microkernel switch faq
-rw-r--r--faq/how_to_switch_microkernels.mdwn14
1 files changed, 11 insertions, 3 deletions
diff --git a/faq/how_to_switch_microkernels.mdwn b/faq/how_to_switch_microkernels.mdwn
index a0e57174..21b276ae 100644
--- a/faq/how_to_switch_microkernels.mdwn
+++ b/faq/how_to_switch_microkernels.mdwn
@@ -13,6 +13,14 @@ License|/fdl]]."]]"""]]
[[!meta title="How difficult would it be to switch to another microkernel?"]]
-One would have to reimplement the `mach/` and `sysdeps/mach/` parts of
-[[glibc]] and [[libpthread]]. Quite a few other Hurd tools also assume a
-[[microkernel/Mach]] kernel and would have to be adapted or rewritten.
+The microkernel has to provide memory management and user-level-managed page
+faulting, thread scheduling, and IPC.
+
+One would have to reimplement the `mach/` and `sysdeps/mach/` parts of [[glibc]]
+and [[libpthread]]. One would have to rewrite mig to generate the new IPCs. One
+would have to rewrite libpager to handle paging.
+
+All `mach_` calls in glibc and hurd would need to be updated.
+
+Quite a few other Hurd tools also assume a [[microkernel/Mach]] kernel and
+would have to be adapted or rewritten.