OS X and iOS Kernel Programming
- Length: 484 pages
- Edition: 1
- Language: English
- Publisher: Apress
- Publication Date: 2011-12-16
- ISBN-10: 1430235365
- ISBN-13: 9781430235361
- Sales Rank: #1437717 (See Top 100 Books)
OS X and iOS Kernel Programming combines essential operating system and kernel architecture knowledge with a highly practical approach that will help you write effective kernel-level code. You’ll learn fundamental concepts such as memory management and thread synchronization, as well as the I/O Kit framework. You’ll also learn how to write your own kernel-level extensions, such as device drivers for USB and Thunderbolt devices, including networking, storage and audio drivers.
OS X and iOS Kernel Programming provides an incisive and complete introduction to the XNU kernel, which runs iPhones, iPads, iPods, and Mac OS X servers and clients. Then, you’ll expand your horizons to examine Mac OS X and iOS system architecture. Understanding Apple’s operating systems will allow you to write efficient device drivers, such as those covered in the book, using I/O Kit.
With OS X and iOS Kernel Programming, you’ll:
- Discover classical kernel architecture topics such as memory management and thread synchronization
- Become well-versed in the intricacies of the kernel development process by applying kernel debugging and profiling tools
- Learn how to deploy your kernel-level projects and how to successfully package them
- Write code that interacts with hardware devices
- Examine easy to understand example code that can also be used in your own projects
- Create network filters
Whether you’re a hobbyist, student, or professional engineer, turn to OS X andiOS Kernel Programming and find the knowledge you need to start developing
What you’ll learn
- OS X and iOS common core architecture
- How to write extremely efficient code by exploiting kernel details
- Coding kernel-level extensions
- How to write device drivers
- How to program the I/O Kit framework
- Key mobile device topics like power management drivers and video capture modules
- To understand OS X memory management and threads
- To parse kernel debug messages and package projects ready for deployment
Who this book is for
This book is suited for:
- Intermediate and advanced iPhone and OS X programmers ready for the next step
- Kernel-level programmers interested in how OS X and iOS function
- Open source programmers with a background in Linux or BSD, OS X and iOS
- Programmers interested in application performance
- System administrators running OS X clusters
Table of Contents
- Operating System Fundamentals
- Mac OS X and iOS
- Xcode and the Kernel Development Environment
- The I/O Kit Framework
- Interacting with Drivers from Applications
- Memory Management
- Synchronisation and Threading
- USB Drivers
- PCI and Thunderbolt
- Power Management
- Serial Port Drivers
- Core Audio
- Network Drivers
- Storage Drivers and Filesystems
- User-Space Drivers
- Debugging and Profiling
- Advanced Kernel Programming
- Deployment