The Kernel Library: libkern
The runtime support and base classes on which the I/O Kit is built are implemented in a library known as libkern. The libkern library provides support that makes up for much of the functionality that is excluded in the embedded C++ language. The libkern library defines a class known as OSObject,
which provides the base class that is used by all I/O Kit classes. Since the base driver class IOService
is a subclass of OSObject
, the main class of a driver will also be derived from OSObject
. Any class that is derived from OSObject
gets the following functionality:
- Runtime Type Information, which is implemented through custom macros provided by libkern. These macros provide functionality that includes
- Type introspection, ...
Get OS X and iOS Kernel Programming now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.