Version: 2.0

Posted: 2008-08-27

Build Requirements: Xcode 3.0 or later

Runtime Requirements: Mac OS X 10.4 or later

View Source Code:

Download Sample (“SimpleUserClient.zip”, 182.2K)
Download Sample (“SimpleUserClient.dmg”, 197.6K)



Description

Illustrates how to add a simple user client to an I/O Kit kernel driver and also shows the corresponding user space routines for calling into the user client. This sample code has been updated to include a project that produces a universal binary. The code changes have been documented in each source file and in the ReadMe.

Document Revision History

Date Notes
2008-08-27Now demonstrates 64-bit user client APIs, how to build a sub-kext to support older OS versions, and how to build the test tool 4-way universal.
2007-05-31Added IOMatchCategory to Info.plist to fix <rdar://problem/3963763>. Shows how a user client can detect if it has been opened by a process running using Rosetta. Updated to produce a universal binary. Necessary code changes are documented within the project.

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.