summaryrefslogtreecommitdiff
path: root/microkernel
diff options
context:
space:
mode:
authorThomas Schwinge <thomas@schwinge.name>2010-12-21 11:37:09 +0100
committerThomas Schwinge <thomas@schwinge.name>2010-12-21 11:37:09 +0100
commit17d02618ae3ad154e789f7ebe66d0cdfafcb0ef6 (patch)
tree0c858d96cabc62600fa03737a9b81ad572f96adb /microkernel
parent7d75462177569c3b149b7f8da88652fdf2c6a4e0 (diff)
microkernel/mach: Mach OSF books.
Diffstat (limited to 'microkernel')
-rw-r--r--microkernel/mach.mdwn73
-rw-r--r--microkernel/mach/concepts.mdwn8
-rw-r--r--microkernel/mach/documentation.mdwn10
3 files changed, 80 insertions, 11 deletions
diff --git a/microkernel/mach.mdwn b/microkernel/mach.mdwn
index 39d0f4d2..93d8ff06 100644
--- a/microkernel/mach.mdwn
+++ b/microkernel/mach.mdwn
@@ -1,16 +1,75 @@
+[[!meta copyright="Copyright © 2007, 2008, 2010 Free Software Foundation,
+Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+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]]."]]"""]]
+
Mach is a so-called first generation [[microkernel]]. It is the
microkernel currently used by the [[Hurd]].
-* [[Documentation]]
-* [[Concepts]]
-* [[History]] ([Torvalds, Tanenbaum Debate](http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.html))
+ * [[Concepts]]
+
+ * [[Documentation]]
+
+ * [[History]]
+
+ * [Torvalds, Tanenbaum
+ Debate](http://www.dina.dk/~abraham/Linus_vs_Tanenbaum.html)
+
# Implementations
-* [[GNU_Mach|gnumach]]
-* [[Mach/OskitMach]] - A Once Successor of Mach based on OSKit
-* [Apple's Darwin](http://developer.apple.com/darwin/) ([API](http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/index.html)) (**non-free**)
+ * [[GNU_Mach|gnumach]]
+
+ * [Apple's Darwin](http://developer.apple.com/darwin/)
+ ([API](http://developer.apple.com/documentation/Darwin/Conceptual/KernelProgramming/index.html))
+ (**non-free**)
+
# Related
-* [[Mach_Interface_Generator_(MIG)|mig]]
+ * [[Mach_Interface_Generator_(MIG)|mig]]
+
+
+[[!ymlfront data="""
+
+kernel_interface:
+
+ "Mach 3 Kernel Interfaces. Open Software Foundation and Carnegie Mellon
+ University. Keith Loepere, Editor. NORMA-MK12: July 15, 1992. [\[ps,
+ HTTP\]](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps),
+ [\[ps,
+ FTP\]](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps)."
+
+kernel_principles:
+
+ "Mach 3 Kernel Principles. Open Software Foundation and Carnegie Mellon
+ University. Keith Loepere. NORMA-MK12: July 15, 1992. [\[ps,
+ HTTP\]](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps),
+ [\[ps,
+ FTP\]](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps)."
+
+server_interface:
+
+ "Mach 3 Server Writer’s Interfaces. Open Software Foundation and Carnegie
+ Mellon University. Keith Loepere, Editor. NORMA-MK12, user15: July 15,
+ 1992. [\[ps,
+ HTTP\]](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/server_interface.ps),
+ [\[ps,
+ FTP\]](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/server_interface.ps)."
+
+server_writer:
+
+ "Mach 3 Server Writer’s Guide. Open Software Foundation and Carnegie Mellon
+ University. Keith Loepere, Editor. NORMA-MK12, user15: July 15, 1992.
+ [\[ps,
+ HTTP\]](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/server_writer.ps),
+ [\[ps,
+ FTP\]](ftp://ftp.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/server_writer.ps)."
+
+"""]]
diff --git a/microkernel/mach/concepts.mdwn b/microkernel/mach/concepts.mdwn
index a9e8897d..0f7cbf00 100644
--- a/microkernel/mach/concepts.mdwn
+++ b/microkernel/mach/concepts.mdwn
@@ -23,3 +23,11 @@ implemented by sending [[message]]s to [[port]]s. Device drivers that reside
in kernel space are controlled by ports, too.
Mach's [[API]] is well-[[documented|documentation]].
+
+[[!toggleable id=mach_kernel_principles text="""[[!template id=note
+text="*[[mach\_kernel\_principles|documentation]]*:
+{{$mach#kernel_principles}}"]]"""]]
+
+In particular the [[!toggle id=mach_kernel_principles
+text="[mach\_kernel\_principles]"]] book further elaborates on Mach's concepts
+and principles.
diff --git a/microkernel/mach/documentation.mdwn b/microkernel/mach/documentation.mdwn
index 4c6702aa..4bd712c9 100644
--- a/microkernel/mach/documentation.mdwn
+++ b/microkernel/mach/documentation.mdwn
@@ -17,11 +17,13 @@ License|/fdl]]."]]"""]]
* *[[The_GNU_Mach_Reference_Manual|gnumach/reference_manual]]*.
- - OSF's [Kernel Interface (ps)](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_interface.ps)
- [Kernel Interface (pdf)](http://shakthimaan.com/downloads/hurd/kernel_interface.pdf)
+ * {{$mach#kernel_principles}}
- - OSF's [Kernel Principles (ps)](http://www.cs.cmu.edu/afs/cs/project/mach/public/doc/osf/kernel_principles.ps)
- [Kernel Principles (pdf)](http://shakthimaan.com/downloads/hurd/kernel_principles.pdf)
+ * {{$mach#kernel_interface}}
+
+ * {{$mach#server_writer}}
+
+ * {{$mach#server_interface}}
* [*The Unofficial GNU Mach IPC beginner's
guide*](http://hurdextras.nongnu.org/ipc_guide/), an easy introduction to