From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,b95a522100671708 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: "Marven Lee" Newsgroups: comp.lang.ada Subject: Re: For the AdaOS folks Date: Fri, 31 Dec 2004 17:57:57 -0000 Message-ID: <33li96F422q0fU1@individual.net> References: <1PTAd.1218$0y4.421@read1.cgocable.net> <1vemlj8wqr9ea$.qyecszhsmtqa$.dlg@40tude.net> <1b48kdfqsk3mw.7gajq12fsa82.dlg@40tude.net> <52fBd.42256$nV.1324414@news20.bellglobal.com> X-Trace: individual.net qHA0XRwe8Qd7+KT0MtRt8gbAXEaLzEgNTtfvtM1aqaQVPyZOfb X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2900.2180 X-RFC2646: Format=Flowed; Original X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Xref: g2news1.google.com comp.lang.ada:7349 Date: 2004-12-31T17:57:57+00:00 List-Id: Warren W. Gay VE3WWG wrote: > Dmitry A. Kazakov wrote: >> Warren W. Gay VE3WWG wrote: >>> The problem then is that the drivers add to the code in "real-mode", >>> which is one thing that the mk tries to avoid (for additional safety >>> and modularity). >> >> I am still not sure what you mean here. If you mean modular kernel >> design and more fine-grained system of modes than all-or-nothing, >> then yes, sure. There is no reason, why a driver should not be >> treated as an application. > > That's right. Just remember that the purpose of the mk is to keep the > "priviledged-mode" code to a bare minimum (hence the "micro"). Some microkernels and single address space operating systems implement cross-domain call mechanisms that enables a thread to cross from one protection domain into another in a similar way as a segmented system performs far calls or interrupts and traps can transfer from user-mode to kernel-mode. In Mach it's called "migrating threads". The Spring Nucleus (and Solaris) has cross-domain calls through "Doors". In the Pebble Operating System it's called "Portal Traversal" Mungi has "Protection Domain eXtensions". I think the Grasshopper kernel has something similar. Maybe LPC in Windows is a form of cross-domain call, I'm not sure. You can end up with a microkernel that only handles cross-domain calls. Everything else, including what you normally think a microkernel should at least include, such as memory management, scheduling and IPC can be implemented outside of the microkernel. Marv