- I/O Kit
The I/O Kit is an open-source framework in the
XNU kernel that helps developers code device drivers for Apple'sMac OS X operating system . The I/O Kit framework was originally introduced as part of Apple's Rhapsody operating system that later became Mac OS X, and shared no similarities with eitherMac OS 9 's device driver framework, or that ofBSD .The I/O Kit framework is implemented in a subset of
C++ which omits features that Apple feels are unsafe for use in a multithreaded kernel (exceptions ,multiple inheritance , templates,run-time type information ). Embedded C++ was chosen partly because Apple believed developers would be more comfortable writing drivers in a more commonly used language thanObjective-C , while still providing an object-oriented framework allowing device driver developers to focus on coding features specific to their hardware instead of reimplementing features common to any given device.In addition to providing common code for device drivers, this framework also provides
power management , driver stacking, automatic configuration, and dynamic loading of drivers.References
* [http://developer.apple.com/documentation/DeviceDrivers/Conceptual/IOKitFundamentals/index.html I/O Kit Fundamentals] - Technical reference from Apple Developer Connection
* [http://www.stepwise.com/SpecialCoverage/WWDC98/Thursday-IOKit.html Rhapsody Core OS: Intro to the I/O Driver Architecture] - Scott Anguish writing for Stepwise in May 1998
Wikimedia Foundation. 2010.