Description
Book SynopsisRandal E. Bryant received his bachelor's degree from the University of Michigan in 1973 and then attended graduate school at the Massachusetts Institute of Technology, receiving his PhD degree in computer science in 1981. He spent three years as an assistant professor at the California Institute of Technology, and has been on the faculty at Carnegie Mellon since 1984. For five of those years he served as head of the Computer Science Department, and for ten of them he served as Dean of the School of Computer Science. He is currently a university professor of computer science. He also holds a courtesy appointment with the Department of Electrical and Computer Engineering.
Professor Bryant has taught courses in computer systems at both the undergraduate and graduate level for around 40 years. Over many years of teaching computer architecture courses, he began shifting the focus from how computers are designed to how programmers can write more efficient and relia
Table of Contents
Part I: Program Structure and Execution
Chapter 1: A Tour of Computer Systems
Chapter 2: Representing and Manipulating Information
Chapter 3: Machine-Level Representation of Programs
Chapter 4: Processor Architecture
Chapter 5: Optimizing Program Performance
Chapter 6: The Memory Hierarchy
Part II: Running Programs on a System
Chapter 7: Linking
Chapter 8: Exceptional Control Flow
Chapter 9: Virtual Memory
Part III: Interaction and Communication Between Programs
Chapter 10: System-Level I/O
Chapter 11: Network Programming
Chapter 12: Concurrent Programming
Appendix
Error Handling