Drivers in the Mac OS X kernel (xnu) use IOKit, an object object orientated device driver framework using embedded C++ (C++ minus exceptions, templates, mutliple inheritance + other stuff).
In this case using C++ at this level in the kernel allows devices to simply inherit most features from base classes (ie/ an ethernet driver can subclass IOEthernetController).
Drivers in the Mac OS X kernel (xnu) use IOKit, an object object orientated device driver framework using embedded C++ (C++ minus exceptions, templates, mutliple inheritance + other stuff).
In this case using C++ at this level in the kernel allows devices to simply inherit most features from base classes (ie/ an ethernet driver can subclass IOEthernetController).
see http://www.kernelthread.com/mac/osx/arch_xnu.html