Computer Systems A Programmer Perspective 3rd Edition by Randal E Bryant, David Richard O Hallaron – Ebook PDF Instant Download/Delivery. 9780130340740
Full download Computer Systems A Programmer Perspective 3rd Edition after payment
Product details:
ISBN 10:
ISBN 13: 9780130340740
Author: Randal E Bryant, David Richard O Hallaron
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 Third 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++.
MasteringEngineering® not included. Students, if MasteringEngineering is a recommended/mandatory component of the course, please ask your instructor for the correct ISBN and course ID. MasteringEngineering should only be purchased when required by an instructor. Instructors, contact your Pearson representative for more information.MasteringEngineeringis an online homework, tutorial, and assessment product designed to personalize learning and improve results. With a wide range of interactive, engaging, and assignable activities, students are encouraged to actively learn and retain tough course concepts.
Computer Systems A Programmer Perspective 3rd Table of contents:
Chapter 1: A Tour of Computer Systems
- 1.1 Introduction
- 1.2 Computer System Overview
- 1.3 The Machine-Level View of Programs
- 1.4 Data Representation
- 1.5 Assembly Language and Machine Code
- 1.6 A Simple C Program
- 1.7 A Simple Assembly Program
- 1.8 Summary
- 1.9 Key Terms
- 1.10 Review Questions
Chapter 2: Representation of Data
- 2.1 Bits and Bytes
- 2.2 Number Systems and Arithmetic
- 2.3 Integer Representation
- 2.4 Floating-Point Representation
- 2.5 Characters and Strings
- 2.6 Data Structures
- 2.7 The Memory Hierarchy
- 2.8 Summary
- 2.9 Key Terms
- 2.10 Review Questions
Chapter 3: Machine-Level Representation of Programs
- 3.1 Program Execution
- 3.2 Instruction Set Architecture (ISA)
- 3.3 Assembly Language
- 3.4 Program Control and Branching
- 3.5 Procedures and the Call Stack
- 3.6 Arrays and Structures
- 3.7 The x86-64 Architecture
- 3.8 Debugging and Tools
- 3.9 Summary
- 3.10 Key Terms
- 3.11 Review Questions
Chapter 4: The Memory Hierarchy
- 4.1 Overview of Memory Systems
- 4.2 Caching and Locality of Reference
- 4.3 Memory Allocation and Management
- 4.4 Dynamic Memory Allocation
- 4.5 Virtual Memory
- 4.6 Page Tables and Address Translation
- 4.7 Summary
- 4.8 Key Terms
- 4.9 Review Questions
Chapter 5: Linking
- 5.1 Object Files and Executables
- 5.2 Static Linking
- 5.3 Dynamic Linking
- 5.4 Shared Libraries
- 5.5 Relocation
- 5.6 Linkers and Loaders
- 5.7 Summary
- 5.8 Key Terms
- 5.9 Review Questions
Chapter 6: Exceptions and System Calls
- 6.1 Introduction to Exceptions
- 6.2 Trap Handling and Interrupts
- 6.3 System Calls
- 6.4 Writing System-Level Code
- 6.5 Signal Handling
- 6.6 Error Handling and Robust Programs
- 6.7 Summary
- 6.8 Key Terms
- 6.9 Review Questions
Chapter 7: Optimizing Program Performance
- 7.1 Performance Metrics
- 7.2 CPU Performance
- 7.3 Compiler Optimizations
- 7.4 Instruction-Level Parallelism
- 7.5 Cache Optimization
- 7.6 Memory Access Patterns
- 7.7 Pipelining and Parallelism
- 7.8 Summary
- 7.9 Key Terms
- 7.10 Review Questions
Chapter 8: System-Level I/O
- 8.1 Introduction to I/O Systems
- 8.2 Buffering and I/O Performance
- 8.3 File I/O
- 8.4 Direct Memory Access (DMA)
- 8.5 Network I/O
- 8.6 Asynchronous I/O
- 8.7 Input/Output Multiplexing
- 8.8 Summary
- 8.9 Key Terms
- 8.10 Review Questions
Chapter 9: Concurrent Programming
- 9.1 Threads and Processes
- 9.2 Thread Synchronization
- 9.3 Race Conditions
- 9.4 Locks and Semaphores
- 9.5 Deadlock
- 9.6 Concurrency in Systems
- 9.7 Summary
- 9.8 Key Terms
- 9.9 Review Questions
Chapter 10: The Operating System
- 10.1 Overview of Operating Systems
- 10.2 Process Management
- 10.3 Memory Management
- 10.4 File Systems
- 10.5 Scheduling and Dispatching
- 10.6 Resource Allocation
- 10.7 Security and Protection
- 10.8 Summary
- 10.9 Key Terms
- 10.10 Review Questions
People also search for Computer Systems A Programmer Perspective 3rd:
computer systems: a programmer’s perspective
david r. o’hallaron computer systems a programmer’s perspective 3/e
borrow computer systems a programmer’s perspective
computer systems a programmer’s perspective 4th
computer systems a programmer’s perspective by bryant and o’hallaron