Cover of Computer systems

Computer systems

by Randal Bryant, Randal E. Bryant, David R. O'Hallaron · first published 2002

110mentions
67recommended by
83HN commenters
2009–2026first – last mentioned

81% recommend19% neutral

Why HN recommends it

Readable CMU textbook on how programs map to machine level: assembly, processors, memory, and Unix/C systems. Its hands-on labs, like the reverse-engineering bomb lab, suit programmers moving into systems work.

Summarised by Claude from recommending comments

Affiliate links. As an Amazon Associate I earn from qualifying purchases.

Mentions per year

120 2007: 0 mentions2008: 0 mentions2009: 2 mentions2010: 1 mention2011: 1 mention2012: 8 mentions2013: 4 mentions2014: 6 mentions2015: 7 mentions2016: 3 mentions2017: 8 mentions2018: 2 mentions2019: 8 mentions2020: 11 mentions2021: 12 mentions2022: 8 mentions2023: 6 mentions2024: 6 mentions2025: 3 mentions2026: 2 mentions200720172026

What Hacker News says

  • yakubin · Dec 9, 2021 · Recommends

    I'm currently going through TAOCP[1]. So far, seems pretty good (although I found one mistake in an exercise). Also, I can never recommend Computer Systems: A Programmer's Perspective[1] enough. (Also features a rare mistakes in an exercise or two, but that's detail.) And for network protocols, Comer's Internetworking with TCP/IP[3] was just great (you…

    on “Ask HN: I'm looking for a good book on the fundamentals of CS” ↗
  • mfrw · May 9, 2018 · Recommends

    My take on some which I think should be atleast read once: 1) The unix programming environment 2) The design of the unix operating system 3) The Pragmatic Programmer 4) Programming Pearls 5) Computer Systems: A Programmers Prespective 6) K & R C 7) The art of Unix Programming. PS: I admit my bias towards systems.

    on “Ask HN: Books you should have read when you start a career in SE / CS?” ↗
  • robomartin · Nov 27, 2012 · Recommends

    …http://www.amazon.com/The-Standard-Library-Tutorial-Referenc... 14- http://www.amazon.com/API-Design-C-Martin-Reddy/dp/012385003... 15- http://www.amazon.com/The-Linux-Programming-Interface-Handbo... 16- http://www.amazon.com/Computer-Systems-Programmers-Perspecti... 17- http://www.amazon.com/System-Programming-Unix-Adam-Hoover/dp... 18- http://www.amazon.com/Memory-Programming-Concept-Frantisek-F... 19- http://www.amazon.com/Memory-Management-Implementations-Prog...…

    on “I’m writing my own OS” ↗
  • Locke1689 · Aug 4, 2009 · Recommends

    Good, but a little outdated. For general systems overview, as well as introduction to UNIX architecture, I'd actually recommend my textbook, which is the CMU intro systems book, Computer Systems: A Programmer's Perspective[1]. For OS theory, our OS/advanced OS textbooks are fine, but for actual implementation my coworkers recommended The Design of the UNIX Operating System[2], Linux System Programming[3],…

    on “Roll Your Own UNIX Clone” ↗
  • Energy1 · Nov 30, 2014 · Recommends

    …Michael L Scott. Compilers: Principles, Techniques, and Tools by Aho et al. Concepts, Techniques, and Models of Computer Programming by Van Roy. Intro to Computing Systems by Yale Patt & Sanjay Patel. Computer Systems: A Programmer's Perspective by Randal Bryant & David O'Hallaron.

    on “Graph of SICP chapters” ↗
  • techjuice · Jul 7, 2017 · Recommends

    The following that I have on my bookshelf have helped: Compilers Second Edition [0] Engineering a Compiler, Second Edition [1] Computer Systems: A Programmer's Perspective (3rd Edition) [2] [0]https://www.amazon.com/Compilers-Principles-Techniques-Alfre... [1]https://www.amazon.com/Engineering-Compiler-Second-Keith-Coo... [2]https://www.amazon.com/Computer-Systems-Programmers-Perspect...

    on “Ask HN: Resources for learning to write compilers?” ↗
  • deepaksurti · May 4, 2019 · Recommends

    …to build a computer yourself. For that I haven’t found anything better than ECS [1]. Please try to build your own extensions to ECS and don’t forget to burn your computer to FPGA. Follow that up with Computer Systems A programmers perspective.[2] My review of ECS [3] [1] https://www.amazon.com/Elements-Computing-Systems-Building-P... [2] https://www.amazon.com/Computer-Systems-Programmers-Perspect... [3] https://www.amazon.com/gp/customer-reviews/RZ4ME4QH22JML/ref...

    on “Ask HN: Best book for understanding hardware-software interface” ↗
  • jgwil2 · Jun 21, 2020 · Recommends

    Main updates as of May 2020: Computer Architecture: added Computer Systems: A Programmer's Perspective as first recommendation over nand2tetris. Compilers: Crafting Interpreters added as first recommendation over dragon book. Distributed Systems: added Designing Data-Intensive…

    on “Teach Yourself Computer Science” ↗
  • timf · Apr 25, 2010 · Recommends

    If you want to get into architecture in its own right, Hennessy/Patterson. But I think a far better book on the subject for programmers is "Computer Systems: A Programmer's Perspective." This is a textbook out of Carnegie Mellon that I was exposed to in grad school. It goes into all kinds of details of processor architecture, memory, I/O, assembly programming,…

    on “Ask HN: Good books to learn more about computer architecture?” ↗
  • arihant · Jun 16, 2012 · Recommends

    …instruction set. Get very good at gdb. Then learn about memory management and networking protocols. Look up networking libraries in C. To start, I'd say have a good C manual (K&R), have a good book for computer systems (Computer Systems by Randy Bryant, but there are other good ones) and a good documentation on gdb. gdb is where it begins.

    on “Ask HN: How do you learn to develop exploits?” ↗
  • hurtmyknee · Jan 27, 2013 · Recommends

    Building a CPU in a circuit simulation framework[1] was one of my favorite, and most illuminating, projects I've done. A great book to learn more: http://www.amazon.com/Computer-Systems-Programmers-Perspecti... [1] http://tams-www.informatik.uni-hamburg.de/applets/hades/webd...

    on “Inside the ALU of the 8085 microprocessor” ↗
  • vdm · Feb 4, 2014 · Recommends

    Computer Systems: A Programmer's Perspective, Bryant & O'Halloran. http://www.amazon.com/dp/0136108040/ http://csapp.cs.cmu.edu/public/pieces/preface.pdf This is a unique blend of operating systems and hardware architecture,…

    on “Modern Microprocessors: A 90 Minute Guide” ↗
  • sn9 · Dec 18, 2017 · Recommends

    …Interfaces and Implementations (in conjunction or following working through material on algorithms and data structures), and learn lower level details by working your way through Bryant and O'Halloron's Computer Systems: A Programmer's Perspective. You can learn proofs from Hammack's Book of Proof, freely available online. From there, you can learn algorithms and data structures from Stanford and/or Princeton's courses…

    on “Ask HN: How can I become a self-taught software engineer?” ↗
  • gitgud · Jun 1, 2020 · Recommends

    The best courses I took in Computer Science (3 years ago) were: - Computer Systems: Building a computer system from scratch (virtually) logic gates to applications https://www.nand2tetris.org/book - Computer Networks and Applications: An overview of network protocols and layers, basically…

    on “Ask HN: I'm an incoming freshman to college for a CS major, what should I know?” ↗
  • jez · Aug 10, 2020 · Recommends

    I needed to understand linkers and object loaders for something at work recently, and I can't recommend Computer Systems: A Programmer's Perspective enough![1] It answered a lot of questions I'd always had about computer systems. I jumped straight into Chapter 7: Linking and learned so much that I read a bunch of other…

    on “Where do argc and argv come from?” ↗

Keyboard shortcuts

/
Focus search
j / k
Next / previous book
Enter
Open focused book
Esc
Close / go back
g h
Go to Home
g t
Go to Top all-time
g m
Go to Most recommended
g r
Go to Rising
g f
Go to For You
?
Show this help