Textbook

Books Price Comparison (Including Amazon) - Guaranteed Lowest Prices on Books


 

Principles of Computer System Design: An Introduction

 
 
 
 
Principles of Computer System Design: An Introduction
Author: Jerome H. Saltzer - M. Frans Kaashoek
ISBN 13: 9780123749574
ISBN 10: 123749573
Edition: 1
Publisher: Morgan Kaufmann
Publication Date: 2009-07-07
Format: Paperback
Pages: 560
List Price: $82.95
 
 

Principles of Computer System Design

An Introduction

JEROME H. SALTZER

M. FRANS KAASHOEK

Principles of Computer System Design: An Introduction is the first book to identify, examine, and illustrate the fundamental principles and abstractions in computer system design that are common across operating systems, networks, database systems, distributed systems, programming languages, software engineering, and computer architecture. Through carefully analyzed case studies from each of these disciplines, it demonstrates how to apply these principles and abstractions to tackle real system design problems. To support the focus on design, the book identifies and explains abstractions that have proven successful in practice such as, names, remote procedure call, client/service organization, file systems, transactions, replication with repair, read/write coherence, and authenticated and confidential messages. These abstractions allow designers to compose systems with increasingly strong modularity, to protect against failures ranging from accidental programmer errors to malicious adversaries. This book describes how these abstractions are implemented, demonstrates how they are used in different systems, and prepares the reader to apply them in future designs.

F E A T U R E S

  • Formulates and illustrates the main principles (see list on inside cover) of computer system design.

  • Presents a cross-disciplinary approach drawing on examples from networking, operating systems, distributed systems, architecture and other disciplines within computer science.

  • Explores principles and abstractions in-depth with numerous case studies, including Unix (file systems); URL, DNS (naming); NFS (client/service); virtual machines (virtualization); disk arms (scheduling); TLS (security).

  • Illustrates core concepts using numerous pseudocode examples throughout the text.

  • Supports on-line open educational resources that include several additional chapters and problem sets, plus MIT Open CourseWare materials, including lecture videos.

A B O U T T H E A U T H O R S

Jerome H. Saltzer has been a faculty member of the Department of Electrical Engineering and Computer Science at MIT since 1966. Prof. Saltzer helped to formulate the undergraduate curriculum in Computer Science at MIT, and developed the core subject on computer systems engineering.

M. Frans Kaashoek is a professor in MIT's EECS department and a member of Computer Science and Artificial Intelligence Laboratory, where he co-leads the parallel and distributed operating systems group (http://www.pdos.lcs.mit.edu/) and is in charge of the subject on computer systems engineering.