LIMITED OFFER
Save 50% on book bundles
Immediately download your ebook while waiting for your print delivery. No promo code needed.
Principles of Computer System Design is the first textbook to take a principles-based approach to the computer system design. It identifies, examines, and illustrates fundam… Read more
LIMITED OFFER
Immediately download your ebook while waiting for your print delivery. No promo code needed.
CHAPTER 1 Systems
1.1 Systems and Complexity
1.2 Sources of Complexity
1.3 Coping with Complexity I
1.4 Computer Systems are the Same but Different
1.5 Coping with Complexity II
CHAPTER 2 Elements of Computer System Organization
2.1 The Three Fundamental Abstractions
2.2 Naming in Computer Systems
2.3 Organizing Computer Systems with Names and Layers
2.4 Looking Back and Ahead
2.5 Case Study: UNIX® File System Layering and Naming
CHAPTER 3 The Design of Naming Schemes
3.1 Considerations in the Design of Naming Schemes
3.2 Case Study: The Uniform Resource Locator (URL)
3.3 War Stories: Pathologies in the Use of Names
CHAPTER 4 Enforcing Modularity with Clients and Services
4.1 Client/Service Organization
4.2 Communication Between Client and Service
4.3 Summary and The Road Ahead
4.4 Case Study: The Internet Domain Name System (DNS)
4.5 Case Study: The Network File System (NFS)
CHAPTER 5 Enforcing Modularity with Virtualization
5.1 Client/Server Organization within a Computer Using Virtualization
5.2 Virtual Links Using SEND, RECEIVE, and a Bounded Buffer
5.3 Enforcing Modularity with Domains
5.4 Virtualizing Memory
5.5 Virtualizing Processors Using Threads
5.6 Thread Primitives for Sequence Coordination
5.7 Case Study: Evolution of Enforced Modularity in the Intel x86
5.8 Application: Enforcing Modularity Using Virtual Machines
CHAPTER 6 Performance
6.1 Designing for Performance
6.2 Multilevel Memories
6.3 Scheduling
PART II [ON-LINE]
CHAPTER 7 The Network as a System and as a System Component
7.1 Interesting Properties of Networks
7.2 Getting Organized: Layers
7.3 The Link Layer
7.4 The Network Layer
7.5 The End-to-end Layer
7.6 A Network System Design Issue: Congestion Control
7.7 Wrapping up Networks
7.8 Case Study: Mapping the Internet to the Ethernet
7.9 War Stories: Surprises in Protocol Design
CHAPTER 8 Fault Tolerance: Reliable Systems from Unreliable Components
8.1 Faults, Failures, and Fault-tolerant Design
8.2 Measures of Reliability and Failure Tolerance
8.3 Tolerating Active Faults
8.4 Systematically Applying Redundancy
8.5 Applying Redundancy to Software and Data
8.6 Wrapping up Reliability
8.7 Application: A Fault Tolerance Model for CMOS RAM
8.8 War Stories: Fault-tolerant Systems that Failed
CHAPTER 9 Atomicity: All-or-nothing and Before-or-after
9.1 Atomicity
9.2 All-or-nothing Atomicity I: Concepts
9.3 All-or-nothing Atomicity II: Pragmatics
9.4 Before-or-after Atomicity I: Concepts
9.5 Before-or-after Atomicity II: Pragmatics
9.6 Atomicity across Layers and Multiple Sites
9.7 Case Studies: Machine Language Atomicity
9.8 A More Complete Model of Disk Failure (Advanced Topic)
CHAPTER 10 Consistency
10.1 Constraints and Interface Consistency
10.2 Cache Coherence
10.3 Durable Storage Revisited: Geographically Separated Replicas
10.4 Reconciliation
10.5 Perspectives
CHAPTER 11 Information Security
11.1 Introduction to Secure Systems
11.2 Authenticating Principals
11.3 Authenticating Messages
11.4 Message Confi dentiality
11.5 Security Protocols
11.6 Authorization: Controlled Sharing
11.7 Advanced Topic: Reasoning about authentication
11.8 Summary
11.9 Cryptography as a Building Block (Advanced Topic)
11.10 Case Study: Transport Layer Security (TLS) for the Web
11.11 War Stories: Security System Breaches
JS
MK