Book Reviews: Operating System Concepts

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
User avatar
jhawthorn
Member
Member
Posts: 58
Joined: Sun Nov 26, 2006 4:06 pm
Location: Victoria, BC, Canada
Contact:

Book Reviews: Operating System Concepts

Post by jhawthorn »

This thread is a place to discuss the book titled Operating System Concepts located on the Books wiki page.
galvin
Posts: 1
Joined: Wed Aug 29, 2007 11:10 am

Post by galvin »

There are in fact two versions of this book, there is the original Operating System Concepts book, and now a new edition Operating System Concepts with Java (still considered to numerically be the same edition as the original editions, in my case 7th edition).

As I looked at the Java edition my first thought was why on earth would someone write a whole book about operating systems using Java of all languages. Wanting to write an operating system in C++ or Java is one of the things many beginners have to realise is useless, almost absurd, java even more so, hence my frustration with a whole book being written about it. I was wrong though, this is in fact a great book and my mistake was in imagining it was aimed at writing an OS in Java, which is far from what it does. The key is in the word concepts.

Arguably Java is a far easier language to manipulate than C, many university courses now choose to teach beginner programmers Java as opposed to C, not because they will be more likely to use Java in the real world (though that soon might be the case), but because it makes learning C much easier when basic programming concepts are mastered. This book takes the same approach. ASM and C are the only languages truly suitable for writing the core kernel of an operating system, but these are languages for experienced programmers, and you shouldn't need to be an experienced programmer to understand the components and structure of an operating system (though for writing them you probably should be :wink: ).

So if you want to know how to write the assembly for your interrupt controller, look elsewhere. If you want to know what an interrupt controller is, how it works, and how it is most commonly structured, this is your book. My opinion is if you know your code well enough, something like this book and hardware specs like the IA32 manual should almost be all you need. This book alone though, is plenty for understanding just how an OS works.

Just as a final note, if you don't know Java, then the only benefit to getting this edition over the other is Java's readability, but if you already know C and such, don't bother going for the Java edition.
$cd /;rm -rf *
$rm: unable to remove `anything': Because you are an idiot.
Post Reply