Various questions from someone starting out Kern development
Various questions from someone starting out Kern development
- Subject: Various questions from someone starting out Kern development
- From: Rob Ballantyne <email@hidden>
- Date: Sat, 28 Feb 2004 21:24:45 -0800
Hi All,
This is my first time posting on the list. Hello everyone.
I've looked at some of the doc and read some of the list looking for
various things. I can't find em. I hope the questions are not too
obvious and that I haven't missed finding them somewhere. I'd greatly
appreciate any answers and/or pointers to doc I haven't found yet.
1. As I recall Mach based systems are usually a collection of
communicating Mach tasks/servers but it appears that the Darwin/Mac
OS X kernel must be a single monolithic Mach Task. Although there
is no netname server at all, the bootstrap server subsumes these
responsibilities I've read, not even the bootstrap server is
available to the Kernel task(s). So the questions here are:
is the BSD kernel a single Mach task? Are there any other Mach
tasks (doing Mach IPC) within the kernel boundry?
2. I've also read in the list that the way to do kernel/userland
boundry crossings with Mach is to somehow pass the required port
rights from userland into the kernel. How is this usually done?
Are there realtivly simple examples of services (Mach servers if
that's possible) living in kernel land that are in the kernel
that someone can point me to?
3. Older Mach documentation pretty explicitly states that MachIPC is
a wire protocol in addition to an in kernel IPC mechanism. Are the
hooks still in Darwin/Mac OS X to do IPC between distributed
processes?
Thanks for any help!
Rob
---
Rob Ballantyne
Research Manager
CECM, Simon Fraser University
Burnaby, BC, CANADA (V5A 1S6)
email: email@hidden
ph: (604)291-4981
_______________________________________________
darwin-kernel mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/darwin-kernel
Do not post admin requests to the list. They will be ignored.