Operating Systems Design and Implementation, 3rd edition

Published by Pearson (January 4, 2006) © 2006

  • Andrew S. Tanenbaum rije University, Amsterdam, The Netherlands
  • Albert S. Woodhull

eTextbook

$64.99

  • Easy-to-use search and navigation
  • Add notes and highlights
  • Search by keyword or page
$207.99

  • Hardcover, paperback or looseleaf edition
  • Affordable rental option for select titles

For introductory courses on computer operating systems.

Revised to address the latest version of MINIX (MINIX 3), this streamlined, simplified new edition remains the only operating systems text to first explain relevant principles, then demonstrate their applications using a Unix-like operating system as a detailed example. It has been especially designed for high reliability, for use in embedded systems, and for ease of teaching.

• Accompanying CD-ROM with the latest version of MINIX and simulators for running MINIX on other systems – A small, easy-to-understand highly reliable operating sys­tem is available for study; unique to this text.

• Relevant sections of MINIX code are described in detail in most chapters – Provides problems at the end of each chapter, with separate solutions manual for the instructor.

• Simulators for running MINIX on other systems are available.

• MINIX includes networking based in TCP/IP – the full source code of the MINIX TCP/IP implementation is included on the CD-ROM.

• Simpler presentation than previous editions – Features less than 4,000 lines of code in the kernel.

• Updates to nearly every section of the book – Includes significant changes to the sections on CPU scheduling, deadlocks, file system reliability and security.

• Many updated references to the modern literature to replace older citations.
Table of Contents CHAPTER 1 INTRODUCTION

1.1 WHAT IS AN OPERATING SYSTEM?

1.2 HISTORY OF OPERATING SYSTEMS

1.3 OPERATING SYSTEM CONCEPTS

1.4 SYSTEM CALLS

1.5 OPERATING SYSTEM STRUCTURE

1.6 OUTLINE OF THE REST OF THIS BOOK

1.7 SUMMARY

CHAPTER 2 PROCESSES

2.1 INTRODUCTION TO PROCESSES

2.2 INTERPROCESS COMMUNICATION

2.3 CLASSICAL IPC PROBLEMS

2.4 SCHEDULING

2.5 OVERVIEW OF PROCESSES IN MINIX 3

2.6 IMPLEMENTATION OF PROCESSES IN MINIX 3

2.7 THE SYSTEM TASK IN MINIX 3

2.8 THE CLOCK TASK IN MINIX 3

2.9 SUMMARY

CHAPTER 3 INPUT/OUTPUT

3.1 PRINCIPLES OF I/O HARDWARE

3.2 PRINCIPLES OF I/O SOFTWARE

3.3 DEADLOCKS

3.4 OVERVIEW OF I/O IN MINIX 3

3.5 BLOCK DEVICES IN MINIX 3

3.6 RAM DISKS

3.7 DISKS

3.8 TERMINALS

3.9 SUMMARY

CHAPTER 4 MEMORY MANAGEMENT

4.1 BASIC MEMORY MANAGEMENT

4.2 SWAPPING

4.3 VIRTUAL MEMORY

4.4 PAGE REPLACEMENT ALGORITHMS

4.5 DESIGN ISSUES FOR PAGING SYSTEMS

4.6 SEGMENTATION

4.7 OVERVIEW OF THE MINIX 3 PROCESS MANAGER

4.8 IMPLEMENTATION OF THE MINIX 3 PROCESS MANAGER

4.9 SUMMARY

CHAPTER 5 FILE SYSTEMS

5.1 FILES

5.2 DIRECTORIES

5.3 FILE SYSTEM IMPLEMENTATION

5.4 SECURITY

5.5 PROTECTION MECHANISMS

5.6 OVERVIEW OF THE MINIX 3 FILE SYSTEM

5.7 IMPLEMENTATION OF THE MINIX 3 FILE SYSTEM

5.8 SUMMARY

CHAPTER 6 READING LIST AND BIBLIOGRAPHY

6.1 SUGGESTIONS FOR FURTHER READING

6.2 ALPHABETICAL BIBLIOGRAPHY

APPENDIX A - INSTALLING MINIX 3 APPENDIX B - MINIX 3 SOURCE CODE LISTING APPENDIX C - INDEX TO FILES INDEX

Andrew S. Tanenbaum has a B.S. Degree from M.I.T. and a Ph.D. from the University of California at Berkeley. He is currently a Professor of Computer Science at the Vrije Universiteit in Amsterdam, The Netherlands, where he heads the Computer Systems Group. He is also Dean of the Advanced School for Computing and Imaging, an interuniversity graduate school doing research on advanced parallel, distributed, and imaging systems. Nevertheless, he is trying very hard to avoid turning into a bureaucrat.
In the past, he has done research on compilers, operating systems, networking, and local-area distributed systems. His current research focuses primarily on the design of wide-area distributed systems that scale to a billion users. These research projects have led to five books and over 85 referred papers in journals and conference proceedings.
Prof. Tanenbaum has also produced a considerable volume of software. He was the principal architect of the Amsterdam Compiler Kit, a widely-used toolkit for writing portable compilers, as well as of MINIX, a small UNIX clone intended for use in student programming labs. Together with his Ph.D. students and programmers, he helped design the Amoeba distributed operating system, a high-performance microkernel-based distributed operating system. The MINIX and Amoeba systems are now available for free via the Internet..
Prof. Tanenbaum is a Fellow of the ACM, a Fellow of the IEEE, a member of the Royal Netherlands Academy of Arts and Sciences, winner of the 1994 ACM Karl V. Karlstrom Outstanding Educator Award, and winner of the 1997 ACM/SIGCSE Award for Outstanding Contributions to Computer Science Education. He is also listed in Who’s Who in the World.

Albert S. Woodhull was a faculty member in the School of Natural Science, Hampshire College, Amherst, MA for many years. He has taught at the University of Massachusetts and Smith College in the US, and he has been a visiting faculty member on multiple occasions at universities in Nicaragua, supported on two of these visits by Fulbright grants. He also served as a computer and network system administrator at the University of Massachusetts. He holds an B.S. degree from M.I.T. and a Ph.D. from the University of Washington. His home page on the web is at http://minix1.woodhull.com/asw/.

Need help? Get in touch

Video
Play
Privacy and cookies
By watching, you agree Pearson can share your viewership data for marketing and analytics for one year, revocable by deleting your cookies.

Pearson eTextbook: What’s on the inside just might surprise you

They say you can’t judge a book by its cover. It’s the same with your students. Meet each one right where they are with an engaging, interactive, personalized learning experience that goes beyond the textbook to fit any schedule, any budget, and any lifestyle.Â