site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; bh=+BCIvzTCi+X0hM4w8YKUGT/MhJAjDj2pnoMU/9uOZLc=; b=gY8iOgGoSJ/nZvku5ttYKkQP2aszUiSJAGZNyjopPQ1KgMy+OrvxkqLc6zBJmzYmcUn6yrCKpeDA+3On6iJrxmZCwuBzpig2txc/KtsCQHcR6tmIshlCdqMGD2v/PGHoe/LreZlPKgqUkBAjcI2+q8zjl69j7i/o1pLLxp7HjCA= Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=J7Fwu9HFqFPJH1Cd0fGRMZE60f61cCWh3lhtHkyhJEpDR4ipj17AiXCa1plpFqoOK0T6cF7qPrqpk4bdimep5ViIu3wJSD7nJ3ZdGMJ9MzPiiwcIzgool0JXJMFYVIe/6XYybacFd3u/9srhb9ddDp4Zz8bhRoYyx7Fu6ylMhmc= hi, it's quite tricky to propose an "history" of mach ukernel as Introduction, especially with xnu, that doesn't use mach as ukernel, it's like to propose an "history' of xnu, i think it's quite void, the Apple doc and the Amit's Book are the good tools -mmw On Nov 30, 2007 4:31 PM, Alex Nelson <pqnelson@gmail.com> wrote:
I am not completely new to the darwin underpinnings, but I have been assigned a task that definitely requires pretty good knowledge of the mach kernel. First I'd like to ask what's a good introduction to the kernel (let's call it a crash course).
Well, in my opinion there are a number of interesting technical papers on the Mach 3 kernel...that is the version of the mach kernel used in the XNU kernel.
There is an excellent non-technical introduction that is freely available, it is the appendix to the book "Operating System Concepts" (7th ed) by Avi Silberschatz, Peter Baer Galvin and Greg Gagne : http://codex.cs.yale.edu/avi/os-book/os7/online-dir/Mach.pdf
Another excellent introductory text is "THE MACH SYSTEM": http://library.nocrew.org/lib/os/Mach.txt
You may wish to consult the documentation, both publications and unpublished works, at the Carnegie Mellon University's Mach page:
http://www.cs.cmu.edu/afs/cs/project/mach/public/www/doc/documents_top.html
Depending on how in depth you want to get, you can always try reading up on the Mach 3 source code directly (it's unlicensed):
http://www.cs.cmu.edu/afs/cs/project/mach/public/www/sources/sources_top.htm...
Next I'd like to explain what I need to be able to do. I basically need to be able to detect when someone is reading from a shared resource (in this case the display buffer). For what I understand, any such resources are arbitrated through mach ports. If a process needs access to one, it obtains either read or write rights to it (multiple reader, single writer?), and then is able to access the resource. Is this correct? If so, I should be able to determine when someone obtains read access to such a port via the kernel trace facility or something similar. At least that's my idea. Perhaps I am wayyyyyyy off. Feel free to let me know if that's so or if I am oversimplifying things.
Hmm...but wouldn't the display buffer be represented by a file? And using the freeBSD virtual file system to access it, if it's accessed wouldn't the file be locked?
Again, I'm purely guessing, I may be equally way off.
But I'd use the Unix approach and try to work with the file representation of the device.
Cheers! Alex Nelson
_______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/openspecies%40gmail.com
This email sent to openspecies@gmail.com
-- echo zapydapntpd.rxltw@nzx | tr a-z@. p-za-o.@ _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This email sent to site_archiver@lists.apple.com
participants (1)
-
mm w