
Operating Systems: Three Easy Pieces - acdanger
http://pages.cs.wisc.edu/~remzi/OSTEP/
======
dcchambers
I had Remzi for two courses at UW, one of them being Operating Systems. He's
the best professor I've ever had, and this book is an amazing tool for
learning the basics of an Operating System. It's a quick read, and I would
recommend it to anyone looking for a free Intro to OS resource.

~~~
mhurron
> I would recommend it to anyone looking for a free Intro to OS resource.

Can you say how it compares to Tanenbaum's 'Modern Operating Systems'?

~~~
dcchambers
I haven't read more than a few bits of Tanenbaum's book so I can't give a
direct comparison, sorry.

------
nadams
I've learned/taught from the "dinosaur book" [1] and for the price tag it's
pretty bad. It's a nice overview but it has several problems. First of all the
section on CPU scheduling is pretty sparse and confusing. I skimmed through
this book and it seems on par. But the one thing this book skips is Rate
monotonic and Earliest deadline first - which I found to be rather difficult
algorithms. This is because whenever you would research it - I would find
other professors using screenshots from the dinosaur book that doesn't help
explain it at all. I would be happy to give you my notes on it.

I really wish that was a an open source project that took developers and/or
students from start to finish of an operating system. I should preface that
and say that it should be easy to understand and use. I know about xv6 and I
feel like that's too complex. I've found MikeOS [2] but I will have to
study/extract it into pieces.

In any case - I really think this practice should be more widespread.
Unfortunately, I've found many people to offer "lazy criticism" they point out
something is wrong but don't want to offer any help to make it better. The
Rooks Guide to C++ is a perfect example of this - yeah it's not perfect and
doesn't contain all C++ knowledge you could ever know about (there have been a
lot of negative criticism about the book). But that's not the point - it's
designed for people who know nothing about programming to learn about C++ in a
16 week course. It's goal isn't to replace the Stroustrup expert C++ book.

[1] [http://www.amazon.com/Operating-System-Concepts-Abraham-
Silb...](http://www.amazon.com/Operating-System-Concepts-Abraham-
Silberschatz/dp/0470128720)

[2] [http://mikeos.sourceforge.net/](http://mikeos.sourceforge.net/)

~~~
wging
Might be good to clarify that the "dinosaur book" is not the same as the
Arpaci-Dusseau book linked above.

------
epaulson
The Arpaci-Dusseaus are some of my favorite professors at the UW - they're not
only first-rate researchers but fantastic teachers.

Remzi in particular has a very dry but hilarious sense of humor. His exams are
a hoot (but are also great questions to see if you really know your material)

[http://pages.cs.wisc.edu/~remzi/Classes/537/Fall2013/OldExam...](http://pages.cs.wisc.edu/~remzi/Classes/537/Fall2013/OldExams/)

------
StudyAnimal
"virtualization, concurrency, and persistence" I would have said something
like memory management, interrupt handlers and system calls.

------
suyash
If anyone is looking for a better OS book, hands down the best one for last 2
decades has been this one by Prof Andy Tanenbaum :
[https://books.google.com/books?id=9gqnngEACAAJ&dq=modern+ope...](https://books.google.com/books?id=9gqnngEACAAJ&dq=modern+operating+systems&hl=en&sa=X&sqi=2&ved=0CB0Q6AEwAGoVChMIrsi3qtXmxwIVhyyICh2UtghB)

------
jcr
previous discussion from two years ago:

[https://news.ycombinator.com/item?id=7076973](https://news.ycombinator.com/item?id=7076973)

------
fgandiya
Wow, what a coincidence! I'm just about to start my Operating Systems class.
This will come in handy.

------
theoh
Most useful thing I have picked up from this is the notion of interposablity.
It captures the basic idea behind both LD_PRELOAD hacks on unix and the way
servers can be stacked in Plan 9. Very useful new term.

------
czmr
So, what are the pre-reqs for studying operating systems? I'm guessing C and
Architecture? Or would it be better to study architecture after an OS
course/book?

~~~
StudyAnimal
Don't worry, there is no actual technical thing called architecture, its a
management topic.

~~~
czmr
Uhh..
[https://en.wikipedia.org/wiki/Computer_architecture](https://en.wikipedia.org/wiki/Computer_architecture)

~~~
StudyAnimal
Yep like I said. Even the wikipedia page has a power point slide on it.

------
molteanu
Personally, I enjoyed the "Operating System Design: The Xinu Approach", by
Comer:

[http://www.amazon.com/Operating-System-Design-Approach-
Editi...](http://www.amazon.com/Operating-System-Design-Approach-
Edition/dp/1498712436)

------
Scarbutt
This looks great. Besides being available for free, how does this book compare
to APUE? [http://www.apuebook.com](http://www.apuebook.com)

~~~
kev009
Apples and oranges. APUE is an application development book, i.e. it takes the
Operating System calls mostly for granted. Operating Systems books explain how
the syscalls and internal services are created/managed and what the trade-offs
are.

------
NetDissent
This was an absolute necessity for my operating systems module in class.
Cannot recommend it enough

------
trentmb
Just a heads up- I purchased the ebook sometime ago (v0.6.1 I think) and as
new versions came out lulu.com declined to offer me the updated versions
without making a new purchase.

Maybe the policy has changed- I don't know. Just thought I'd let others know,
as I've been spoiled by O'Reilly

~~~
golergka
> This book is and will always be free in PDF form

> I purchased the ebook

This confuses me.

~~~
trentmb
Look at the website- all the content is there, just in multiple PDF files.

In the spirit of supporting an open textbook effort, I ponied up $10 for the
'combined' PDF that has some other little niceties.

~~~
golergka
Well, this book certainly looks like it deserves a donation — I just don't
like when people use the term "buy" when they offer the same item for free.

~~~
kenbellows
but... they did buy it... he got something not being offered for free: the
combined ebook, which is in a different file format and contains extra
material

