Computer Systems: A Programmer's Perspective, Global Edition, 3rd edition
For courses in Computer Science and Programming
Computer systems: A Programmer’s Perspective explains the underlying elements common among all computer systems and how they affect general application performance. Written from the programmer’s perspective, this book strives to teach students how understanding basic elements of computer systems and executing real practice can lead them to create better programs.
Spanning across computer science themes such as hardware architecture, the operating system, and systems software, the 3rd Edition serves as a comprehensive introduction to programming. This book strives to create programmers who understand all elements of computer systems and will be able to engage in any application of the field--from fixing faulty software, to writing more capable programs, to avoiding common flaws. It lays the groundwork for students to delve into more intensive topics such as computer architecture, embedded systems, and cybersecurity.
This book focuses on systems that execute an x86-64 machine code, and recommends that students have access to a Linux system for this course. Students should have basic familiarity with C or C++.
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
- Error Handling
All the material you need to teach your courses.Discover teaching material
Published by Pearson (October 5th 2015) - Copyright © 2016