Operating Systems, Second Edition
Authors: Andrew S. Tanenbaum and Albert S. Woodhull
Publisher: Prentice Hall
Price: $66 US
Reviewer: Boytcho Peytchev
Operating Systems: Design and Implementation is an introductory book designed for people who have already dealt with the basics of programming. When reading this book, a knowledge of both C and assembly language is helpful but not required. In particular, not knowing assembly will not prevent you from understanding the book, but it may slow you down.
The first chapter of the book is an overall introduction to the topic of operating systems. It starts with an explanation of what an OS is and a short historical summary on the evolution of operating systems. Then, the basic concepts of operating systems are explained and the different possible structures for an OS are introduced. The introduction ends with an overview of the remaining chapters of the book.
The style of the authors is very straightforward, making the information easy to follow and understand. The text doesn't get side-tracked into irrelevant topics, a problem found in many text books.
Another strong point of this book is that it is not only a theoretical introduction to operating systems programming but a practical one as well. The included CD-ROM contains MINIX 2.0 complete with source code and several simulators for non-Intel machines. The code is meant to be backward compatible with processors as old as the 8088, so if there's an old machine gathering dust in the basement, it can still be put to use for experimenting with the concepts covered in the book. The theoretical and practical parts of the book are well-balanced and easy to separate, so that one may use the book only for the theoretical parts or only for the practical parts.
Installing MINIX from the CD-ROM is not too hard, but if you have done installations before, the experience will help. The installation instructions have some minor inaccuracies, but a log file from an installation done by Andrew Tanenbaum is also provided, which clarifies the situation.
The chapters following the introduction each deal with a specific concept of OS programming. Chapter 2 is dedicated to processes, Chapter 3 to I/O, Chapter 4 to memory management and Chapter 5 to file systems. Each of these chapters starts with a description of the concept and the theory behind it. The chapter then continues to detail how the concept is realized in MINIX. This part of the chapter follows the source code line-by-line explaining what is being done by the corresponding piece of code.
Another practical side of the book is that all the code explained is contained in Appendix A, which means that there is no need for piles of printouts or a screen when one is trying to follow the description in the book.
Every chapter is followed by exercises that provide for good, practical implementation of the topics discussed.
The book ends with a suggested reading list ordered according to the concepts described in the book.
- The Tiny Internet Project, Part I
- Machine Learning with Python
- SUSECON 2016: Where Technology Reigns Supreme
- Download "Linux Management with Red Hat Satellite: Measuring Business Impact and ROI"
- Free Today: September Issue of Linux Journal (Retail value: $5.99)
- Bitcoin on Amazon! Sort of...
- Securing the Programmer
- Android Browser Security--What You Haven't Been Told
- Epiq Solutions' Sidekiq M.2
Pick up any e-commerce web or mobile app today, and you’ll be holding a mashup of interconnected applications and services from a variety of different providers. For instance, when you connect to Amazon’s e-commerce app, cookies, tags and pixels that are monitored by solutions like Exact Target, BazaarVoice, Bing, Shopzilla, Liveramp and Google Tag Manager track every action you take. You’re presented with special offers and coupons based on your viewing and buying patterns. If you find something you want for your birthday, a third party manages your wish list, which you can share through multiple social- media outlets or email to a friend. When you select something to buy, you find yourself presented with similar items as kind suggestions. And when you finally check out, you’re offered the ability to pay with promo codes, gifts cards, PayPal or a variety of credit cards.Get the Guide