Jump to ratings and reviews
Rate this book

MacOS and iOS Internals #1

MacOS and iOS Internals, Volume I: User Mode

Rate this book
In this first volume of the "Mac OS and *OS Internals" trilogy, Jonathan Levin takes on the user mode components of Apple's operating systems. Starting with an introduction as to their layered architecture, touring private frameworks and libraries, and then delving into the internals of applications, process, thread and memory management, Mach messaging, launchd and XPC internals, and wrapping up with advanced debugging and tracing techniques using the most powerful APIs that were hitherto unknown and unused outside Apple's own applications. As with the other books in this series, the approach taken is that of deep reverse engineering, with plenty of hands-on examples, illustrations, pointers to Apple's open sources (when available) and decompilation of code (when not). The book's companion website (NewOSXBook.com) is full of tools, samples and other bonus material for this book. Due to print run issues, NOTE FIRST COPIES WILL SHIP DECEMBER.

540 pages, Paperback

Published October 24, 2017

13 people are currently reading
134 people want to read

About the author

Jonathan Levin

4 books19 followers
Jonathan[2spaces]Levin

CTO/Founder at Technologeeks.com

Ratings & Reviews

What do you think?
Rate this book

Friends & Following

Create a free account to discover what your friends think of this book!

Community Reviews

5 stars
11 (57%)
4 stars
4 (21%)
3 stars
4 (21%)
2 stars
0 (0%)
1 star
0 (0%)
Displaying 1 - 2 of 2 reviews
Profile Image for Woflmao.
144 reviews15 followers
December 31, 2023
Unpopular opinion: Jonathan Levin is a gifted software engineer, but not a gifted educator.
But let me explain... *OS Internals, Volume I is a an absolutely unique book in that it is essentially the only guide to the system architecture (and to some extent system programming) in Apple's macOS and iOS operating system (collectively referred to as *OS). As such, its content is invaluable, and I can only admire the effort the author must have invested to compile all of this knowledge. It was sourced from the author's own reverse engineering, in-depth study of Apple's source code (when available), knowledge dispersed over a variety of tech blogs or other online sources, and Apple's own (often poor) documentation.
It covers the essentials of user mode, the contents can be found here.
Levin's subtle dry humour also occasionally shines through in his writing. Of course, the book is from 2017 and therefore will be to some extent outdated or incomplete, but at the moment (2023) it still holds up. Only Levin's own *OS system engineering toolkit that is available on his website seems to no longer work on newer versions. Sadly, Levin has anounced on this website that he has "officially quit Darwin", so we should not expect future updates of this book or his software tools.

But what irks me with this book, you ask? Sometimes it's hard to put a finger on what a problem with someone's writing is, but here I think it is the following: When Levin introduces some entity (structure, services, protocols, frameworks, ...) in *OS, he often spares barely two sentences explaining what this entity is supposed to do, and then goes straight into a detailed listing of all all kinds of properties of this entity. In addition, he often assumes knowledge of topics discussed only much later in the book. Speaking of assumed knowledge, the book is also somewhat undecided in what preprequites are assumed of a reader. Ideally, one would have experience in Linux system programming and reads this book to learn how things work in *OS. But the book can be read with great benefit by readers with lesser technical experties, only it will be harder to get the big picture.
Finally, a tech book of >500 pages really should have an index. This one does not. Boo!

In summary:
5 stars for content
2 stars for exposition
= 3.5 stars on average, rounded down to 3 because it has no index (yes, I am that petty)
1 review
May 7, 2020
nice !!
This entire review has been hidden because of spoilers.
Displaying 1 - 2 of 2 reviews

Can't find what you're looking for?

Get help and learn more about the design.