มัคเคอร์เนลกับ XNU


2

เมื่อฉันรัน$lsในไดเรกทอรีรากของฉัน/mach_kernelพบไฟล์ ฉันสมมติว่านี่เป็นเคอร์เนล OSX ฉันมักจะคิดว่า OSX ใช้เคอร์เนลไฮบริดของ XNU แล้วทำไมไฟล์นี้ถึงเรียกว่า "MACH" ฉันกำลังวิ่ง Lion

คำตอบ:


2

จากสิ่งที่หน้า Wikipedia ของ XNUพูดว่า XNU นั้นอิงจาก Mach ตั้งแต่ OS X เริ่มต้นใช้เคอร์เนล Mach และตอนนี้ใช้อนุพันธ์ของมันพวกเขาอาจแค่เก็บชื่อไฟล์ของเคอร์เนลเหมือนกันดังนั้นพวกเขาจึงไม่ต้องปรับแต่งเฟิร์มแวร์ในระหว่างการอัพเกรดหรือด้วยการเปิดตัวเครื่องใหม่


2

ไฟล์นี้เรียกว่า / mach_kernel ด้วยเหตุผลทางประวัติศาสตร์ XNU นั้นแท้จริงแล้วเป็นลูกผสมของมัคและเลเยอร์ BSD (ลืม Wikipeida มีhttp://www.amazon.com/Mac-OS-iOS-Internals-Apples/dp/1118057651ซึ่งดูเหมือนชัดเจนยิ่งขึ้น)

ในความเป็นจริงเคอร์เนลนี้ไม่ได้เป็นภาพที่แน่นอนซึ่งได้รับการโหลด - มีแคชเคอร์เนลเชื่อมโยงล่วงหน้า (พร้อม kexts ที่จำเป็นทั้งหมด) ใน /System/Library/Caches/com.apple.kext.caches/Startup


โหลดไว้ล่วงหน้าไม่ได้โหลดล่วงหน้า
Petr
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.