From 17d02618ae3ad154e789f7ebe66d0cdfafcb0ef6 Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 21 Dec 2010 11:37:09 +0100 Subject: microkernel/mach: Mach OSF books. --- microkernel/mach.mdwn | 73 +++++++++++++++++++++++++++++++++---- microkernel/mach/concepts.mdwn | 8 ++++ microkernel/mach/documentation.mdwn | 10 +++-- 3 files changed, 80 insertions(+), 11 deletions(-) (limited to 'microkernel') 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 -- cgit v1.2.3