Things you need

— or might need


You need an account on the Rutgers Linux systems (most likely on the iLab machines). You should be able to do most assignments on other machines running a POSIX-like operating system (e.g. PCs running Linux, some flavor of BSD, Mac OS X, or — for some assignments — even a Windows PC running cygwin) but I will not accept the excuse of not having an account in time to finish an assignment. You should ensure that you have an account on iLab machines even if you plan on using other systems for the bulk of your coursework. If you develop your assignment on another system, you should ensure that it compiles and runs on a Linux system.

You will need to check my 416 web page regularly since I will be posting notices, assignment source/data, changes to the syllabus, and exam results there. Be sure to check the class news page regularly.


The text for this course is:

Operating System Concepts Essentials [Amazon link]
by Abraham Silberschatz, Peter B. Galvin, and Greg Gagne
Second Edition, Wiley
Publication date: November 18, 2013
ISBN-10: 1118804929; ISBN-13: 978-1118804926

As of January 22nd, the second edition is $94.98 from Amazon and $111.82 from Barnes & Noble. There doesn't appear to be a Kindle edition available yet but a Nook eTextbook version is available for $49.50 [B&N link]. The Rutgers bookstore charges $120.25 for a new text and $90.20 for a used one (although I have no idea where the used ones came from or if they are indeed available since this is a new text). They also sell an eTextbook version for $49.50. I believe the Rutgers bookstore is run by Barnes & Noble and I don't understand why they charge more than Barnes & Noble charges on the web.

You can also use the first edition text instead if you'd like. There are slight differences that I will enumerate but none that should interfere with the coursework. Given the small price difference, it is probably not worth getting the older text.

Operating System Concepts Essentials [Amazon link]
by Abraham Silberschatz, Peter B. Galvin, and Greg Gagne
First Edition, Wiley
Publication date: November 23, 2010
ISBN-10: 0470889209; ISBN-13: 978-0470889206

The first edition is $91.62 at and $91.15 from Barnes & Noble. The first edition also has a "loose leaf" version, which is an unbound loose leaf edition. Prices fluctuate. A few weeks earlier, the Amazon price was $86.56 and then $93.04.

There are lower-cost options for renting and an e-book edition for the first edition (but you lose any chance of reselling those versions). For example, you can also rent the text from Barnes & Noble for 130 days for $24.72.

Differences between the editions

I only compared the difference in the table of contents between the two editions. I'm sure there are some changes in the text throughout but expect them to be minor. Here's what you need to be aware of:

  1. Chapter 1: Introduction
    • The first edition has section 1.13 on Open-Source Operating Systems.
  2. Chapter 2: Operating-System Structures
    • The first edition has section 2.8 on Virtual Machines.
  3. Chapter 4: Threads Management
    • The second edition adds section 4.5 on Implicit Threading.
  4. Chapters 4 & 5 are flipped
    • The first edition has Chapter 5: CPU Scheduling and Chapter 6: Process Synchronization; the second edition has Chapter 5: Process Synchronization and Chapter 6: CPU Scheduling.
    • The second edition adds section 6.6, Real-Time CPU Scheduling.
    • The second edition adds section 5.5, Mutex locks amd 5.10, Alternative approaches.
  5. Chapter 7: Main Memory
    • The second edition moves Segmentation to section 7.4 from section 7.6.
    • The second edition adds section 7.8, Example: ARM Architecture
  6. Part Four: Chapters resequenced
    • The first edition has Chapter 9: File System Interface, Chapter 10: File System Implementation, Chapter 11: Mass-Storage Structure
    • The second edition has Chapter 9: Mass-Storage Structure, Chapter 10: File System Interface, Chapter 11: File System Implementation
  7. Chapter 9: Mass-Storage Structure
    • The second edition adds section 9.8, Stable-Storage Implementation.
  8. Chapter 11: File-System Implementation
    • The second edition adds section 11.8, NFS and 11.9, Example: The WAFL File System
  9. Chapter 13: Protection
    • The second edition adds section 13.9, Language-based protection.
  10. Chapter 14: Security
    • The second edition adds:
      • 14.6: Implementing Security Defenses
      • 15.7 Firewalling to Protect Systems and Networks
      • 15.8: Computer-Security Classifications

Other material

I will also be making use of published papers, web content, and some limited use of the following texts:

The Multics System: An Examination of its Structure
Elliott I. Organick
First Edition, April 15, 1972
The MIT Press
ISBN-10: 0262150123, ISBN-13: 978-0262150125

Modern Operating Systems
Andrew S. Tannenbaum
Third Edition, December 2007
Prentice Hall
ISBN-10: 0136006639, ISBN-13: 978-0136006633

Distributed Operating systems
Andy Tannenbaum
Prentice Hall, 1995
ISBN-10: 0132199084, ISBN-13: 978-0132199087

Design and Implementation of the 4.4 BSD Operating System
Marshall Kirk McKusick, Keith Bostic, Michael J. Karels, and John S. Quarterman
Second Edition, May 1996
Addison-Wesley Professional
ISBN-10: 0201549794, ISBN-13: 978-0201549799

The Design of the Unix Operating System
Maurice J. Bach
June 1986
Prentice Hall
ISBN-10: 0132017997, ISBN-13: 978-8120305168