Mac OS 内核、驱动开发资料汇总
一.官方文档:
I/O Kit Fundamentals: https://developer.apple.com/library/mac/#documentation/devicedrivers/conceptual/IOKitFundamentals/index.html
I/O Kit Device Driver Design Guidelines: https://developer.apple.com/library/mac/#documentation/DeviceDrivers/Conceptual/WritingDeviceDriver/index.html
Threading Programming Guide: http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Multithreading/index.html
Accessing Hardware From Applications: https://developer.apple.com/library/mac/#documentation/DeviceDrivers/Conceptual/AccessingHardware/AH_Intro/AH_Intro.html
Kernel Programming Guide: https://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KernelProgramming/index.html
Kernel Extension Programming Topics: https://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/index.html
Daemons and Services Programming Guide: https://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPSystemStartup/index.html
Introduction to 64-Bit Transition Guide: https://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/64bitPorting/index.html
USB Device Interface Guide: https://developer.apple.com/library/mac/#documentation/DeviceDrivers/Conceptual/USBBook/USBIntro/USBIntro.html
HID Class Device Interface Guide: https://developer.apple.com/library/mac/#documentation/DeviceDrivers/Conceptual/HID/index.html
Technical Note TN2163- Building Universal I/O Kit Drivers: https://developer.apple.com/library/mac/#technotes/tn2163/_index.html
Technical Note TN2063- Understanding and Debugging Kernel Panics: https://developer.apple.com/library/mac/#technotes/tn2063/_index.html
Technical Note TN2118- Kernel Core Dumps: https://developer.apple.com/library/mac/#technotes/tn2004/tn2118.html
二.官方开源代码:
苹果开源项目源码下载地址:http://opensource.apple.com/tarballs/
里面有非常多的开源项目,本人经常使用的有以下资源:
http://opensource.apple.com/tarballs/AppleUSBCDCDriver/
http://opensource.apple.com/tarballs/IOUSBFamily/
http://opensource.apple.com/tarballs/IOSerialFamily/
http://opensource.apple.com/tarballs/IONetworkingFamily/
三.调试工具:
本人主要使用的就是Kernel Debug Kit,可以点以下链接,搜索Kernel Debug Kit即可。(需要Apple Developer帐号,免费注册一个即可。)
https://developer.apple.com/downloads/index.action