When I ran $ls on my root directory a file /mach_kernel was found. I'm assuming this is the OSX kernel. I always thought that OSX used the XNU hybrid kernel, so why is this file called "MACH"? I'm running Lion.
Tell me more
×
Ask Different is a question and answer site for
power users of Apple hardware and software. It's 100% free, no registration required.
|
|
||||
|
|
|
Based on what the Wikipedia page on XNU says, XNU is based on Mach. Since OS X started using the Mach kernel and now uses a derivative of it, they probably just kept the kernel's file name the same so they didn't have to tweak firmware during upgrades or with new machine releases. |
|||
|
|
|
The file is called /mach_kernel for historic reasons; XNU is, indeed a hybrid of Mach and a BSD layer (forget Wikipeida, there's http://www.amazon.com/Mac-OS-iOS-Internals-Apples/dp/1118057651 which seems more definitive). In actuality, this kernel isn't the exact image which gets loaded - there is a pre linked kernel cache (with all the necessary kexts) in /System/Library/Caches/com.apple.kext.caches/Startup. |
|||
|
|