Book description
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
- Title
- Dedication
- Contents at a Glance
- Contents
- About the Authors
- About the Technical Reviewers
- Acknowledgments
- Introduction
- Chapter 1: Operating System Fundamentals
- Chapter 2: Mac OS X and iOS
- Chapter 3: Xcode and the Kernel Development Environment
- Chapter 4: The I/O Kit Framework
- Chapter 5: Interacting with Drivers from Applications
- Chapter 6: Memory Management
- Chapter 7: Synchronization and Threading
- Chapter 8: Universal Serial Bus
- Chapter 9: PCI Express and Thunderbolt
- Chapter 10: Power Management
- Chapter 11: Serial Port Drivers
- Chapter 12: Audio Drivers
- Chapter 13: Networking
- Chapter 14: Storage Systems
- Chapter 15: User-Space USB Drivers
- Chapter 16: Debugging
- Chapter 17: Advanced Kernel Programming
- Chapter 18: Deployment
- Index
Product information
- Title: OS X and iOS Kernel Programming
- Author(s):
- Release date: December 2011
- Publisher(s): Apress
- ISBN: 9781430235361
You might also like
book
Mac OS X for Unix Geeks
If you're one of the many Unix developers drawn to Mac OS X for its BSD …
book
Linux® Kernel Primer, The: A Top-Down Approach for x86 and PowerPC Architectures
Learn Linux kernel programming, hands-on: a uniquely effective top-down approach The Linux is the definitive guide …
book
Apple macOS and iOS System Administration: Integrating and Supporting iPhones, iPads, and MacBooks
Effectively manage Apple devices anywhere from a handful of Macs at one location to thousands of …
book
Objective-C for Absolute Beginners: iPhone, iPad and Mac Programming Made Easy
Learn Objective-C and its latest release, and learn how to mix Swift with it. You have …