I/O Kit
The I/O Kit framework (written as IOKit in source code and sometimes elsewhere) is an open-source framework in the XNU kernel that helps developers code device drivers for Apple's macOS and iOS operating systems. The I/O Kit framework evolved from NeXTSTEP's DriverKit, and shared no similarities with either Mac OS 9's device driver framework, or that of BSD.
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 than Objective-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.[citation needed]
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[edit]
- I/O Kit Fundamentals - Technical reference from Apple Developer Connection
This Macintosh-related article is a stub. You can help EverybodyWiki by expanding it. |
This article "I/O Kit" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:I/O Kit. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.