In this supplementary document for the first chapter of the new book ‘Mac OS X Internals’, Amit Singh outlines in detail the various operating systems that Apple has dabbled with since the company’s inception, and many systems that were direct or indirect sources of inspiration.
Technical History of Apple’s Operating Systems
About The Author
Follow me on Twitter @thomholwerda
2006-07-24 11:48 amDuffman
“Much better than FreeBSD design and implementation, or Tanenbaum’s books. ”
Does this book explain general theory of OS ?
If don’t, how the book can compete with Tanenbaum’s book ?
(Just a question, I haven’t read it yet)
2006-07-24 4:21 pmmonkeyhead
It’s a historical look at the developments that led to OS X. It goes into a lot of pre-apple systems that heavily influenced the design chosen for the Macintosh and the other OS’s that apple and mr. jobs explored that finally culminated in OS X.
It’s not really comparable to Tanenbaum’s books since his focus is more on the internal nitty gritty aspects of operating system fundamentals. The article does get into some technical detail about the systems, but this is really not comparable to what Tanenbaum was trying to accomplish with his books.
A good read though… especially if you are unfamiliar with the history of computing and want to be surprised that the modern GUI/mouse based OS was alive and kicking well before the first ‘personal computers’ were hitting the market.
2006-07-24 9:49 pmmaccatalan
When I wrote that this book was *on my opinion* better than Tanenbaum’s books (and God knows how much I praise Tanenbaum) I was referring to the understanding and clarity, especially to the beginner.
Tanenbaum books are, in my opinion, very general. Which is great to teach and get to understand general concepts. But that doesn’t help really understand how stuff work. There’re no hand-to-hand examples and even when it comes down to Minix I got quite disappointed to see that his book kept being general instead of getting dirty and oily from the very internals of the OS. Of course one could look at the long appendix with Minix’s source code but that’s not my favorite kind of technical literature (eventually reference but not literature).
On the other hand Amit Singh takes an historical approach, going from general to specific. He covers mostly everything (I say that by looking at the table of contents, the book is long and I didn’t even get close to the middle of it yet). What I like with his approach is that it is practical and illustrated with many examples. I never saw a book about OS coming with so many short, clear, simple, and to the point examples (maybe you can blame my ignorance). I remember thinking when reaching page 100 how wonderful that book was, how well written it was, and how much I felt like I learnt in only 100 pages.
There are many things that I never understood clearly because I never found a satisfying explanation, not even from my teachers in CS. Maybe it is just a personal affinity to Amit Singh’s writting, but the fact is that this book feels much clearer than any other that ever came by my eyes (notice that I am not a native english-speaker, I am French and moved 2 years ago to the USA).
While I am not far enough in that book to actually tell how relevant that book is to the advanced and experimented OS/Kernel programmer, it is surely a great and pleasant book to read. It puts many pieces back together.
For the profane, that book is a great start, much better than a Tanenbaum book, and I say this because it is accessible, of gradual complexity, and very practical (many examples the reader can experiment on his own mac). Tanenbaum’s work will prove useful later when getting more theoretical questions and more abstract problems.
ugly fonts and forcing it into the shape of a sheet of paper make it very difficult to read.
since i don’t much like eye strain, i don’t think i’m going to read the whole thing…
as stated at the start this was made from ‘raw’ points he had taken and it did indeed feel as such.
hopefully the book is more fluid
Gives a real insight into the way things were going in the sixties, seventies and eighties (that’s as far as I’ve got so far, 146 pages takes time!).
One of the most mind-blowing things was Doug Englebart’s demo of his “Online System” called NLS in 1968. It featured a mouse and keyboard; copy, past and drag’n’drop; nested file-systems with metadata; group collaboration on documents; hyperlinks; even video conferencing! Samples are availabe at http://sloan.stanford.edu/mousesite/1968Demo.html
Another revelation is the fact that ProDOS, released by Apple around 1983, had a logical volume manager (LVM was written for Linux in 1998)
I could find only a few tiny tidbits he forgot to mention. Between the 68k to ppc switch, they tried their own risc design and they also used the AMD 29K risc for some graphics cards. No wonder this is getting thinned out.
Every section led me to wonder if he would cover something else, and he usually did.
The 1st half remided me of so many things I had forgotten. The early work Engelbart, and Xerox seems all the more impressive now.
The 2nd half filled in alot of details I had not kept track of. My last Mac was PPC6100 with OS 8.6 so it explains alot of what was not going right in the late 90s and how it all eventually worked out.
I expect to look for the book when its out.
I really don’t understand why preemptible multitasking took apple so long. Isn’t it just a matter of keeping a data structure around to track processes and switching between them on interrupts. Apple has never been too concerned with compatibility, so that couldn’t be it. Did they just have no one who could do OSes at the time?
2006-07-26 5:07 pmhobgoblin
heh, what hit was that if they just had kept working on the os 7-9 thing they would get a nice piece of kit without having to go with a new kernel, next or anything like that.
yes they did get preemptive kinda late in the game, but they did have multitasking for some time.
to me it looked like their biggest problem was memory protection for some reason.
and for some reason i wish that lisa didnt go the way of the dodo. the mac sounds like a cheap knock-off compared to it.
but there was one part that made me go “wtf?!” and thats the list of points raskin wrote about making a personal computer. either he underestimated the ability for the casual user to learn, or he overestimated it, or maybe both.
heh, one interesting effect that pdf had was that it made me sit down and type out some general points about what i would like to do with a os of my creation.
will probably stay some kind of silly dream, but i realy do want to work in computer research, trying out crasy ideas just for the hell of it rather then trying to create a product that sells.
it was that kind of “create to use ourselfs” mentality that sparked all those early creations from xerox parc and other research labs.
Having read a few articles published online by Amit Snigh, I preordered many months ago the book Mac OS X Internals.
In my humble opinion, this is the best OS book I ever read. Much better than FreeBSD design and implementation, or Tanenbaum’s books.
Amit has a very nice, simple, detailed and efficient style.
Even if you are not particularly interested in Mac OS X but want to better understand and know how an OS is designed and works, I highly recommend Mac OS X Internals.
Thank you Amit!