Book description
Dive Into Systems is a vivid introduction to computer organization, architecture, and operating systems that is already being used as a classroom textbook at more than 25 universities.
This textbook is a crash course in the major hardware and software components of a modern computer system. Designed for use in a wide range of introductory-level computer science classes, it guides readers through the vertical slice of a computer so they can develop an understanding of the machine at various layers of abstraction.
Early chapters begin with the basics of the C programming language often used in systems programming. Other topics explore the architecture of modern computers, the inner workings of operating systems, and the assembly languages that translate human-readable instructions into a binary representation that the computer understands. Later chapters explain how to optimize code for various architectures, how to implement parallel computing with shared memory, and how memory management works in multi-core CPUs. Accessible and easy to follow, the book uses images and hands-on exercise to break down complicated topics, including code examples that can be modified and executed.
Table of contents
- Cover Page
- Title Page
- Copyright Page
- BRIEF CONTENTS
- CONTENTS IN DETAIL
- ACKNOWLEDGMENTS
- PREFACE
- 0 INTRODUCTION
- 1 BY THE C, BY THE C, BY THE BEAUTIFUL C
- 2 A DEEPER DIVE INTO C PROGRAMMING
- 3 C DEBUGGING TOOLS
- 4 BINARY AND DATA REPRESENTATION
-
5 WHAT VON NEUMANN KNEW: COMPUTER ARCHITECTURE
- 5.1 The Origin of Modern Computing Architectures
- 5.2 The von Neumann Architecture
- 5.3 Logic Gates
- 5.4 Circuits
- 5.5 Building a Processor: Putting It All Together
- 5.6 The Processor’s Execution of Program Instructions
- 5.7 Pipelining: Making the CPU Faster
- 5.8 Advanced Pipelined Instruction Considerations
- 5.9 Looking Ahead: CPUs Today
- 5.10 Summary
- 6 UNDER THE C: DIVING INTO ASSEMBLY
- 7 64-BIT X86 ASSEMBLY (X86-64)
- 8 32-BIT X86 ASSEMBLY (IA32)
- 9 ARM ASSEMBLY
- 10 KEY ASSEMBLY TAKEAWAYS
- 11 STORAGE AND THE MEMORY HIERARCHY
- 12 CODE OPTIMIZATION
- 13 THE OPERATING SYSTEM
- 14 LEVERAGING SHARED MEMORY IN THE MULTICORE ERA
- 15 LOOKING AHEAD: OTHER PARALLEL SYSTEMS AND PARALLEL PROGRAMMING MODELS
- INDEX
Product information
- Title: Dive Into Systems
- Author(s):
- Release date: September 2022
- Publisher(s): No Starch Press
- ISBN: 9781718501362
You might also like
book
Open Circuits
Open Circuits is a photographic exploration of the beautiful design inside everyday electronics. Its stunning cross-section …
book
Patterns of Distributed Systems
A Patterns Approach to Designing Distributed Systems and Solving Common Implementation Problems More and more enterprises …
video
Linux Man Page Masterclass
Welcome to this course on man pages, where you'll learn the ins and outs of the …
book
Inside Deep Learning
Journey through the theory and practice of modern deep learning, and apply innovative techniques to solve …