Computer Systems: A Programmer's Perspective
Randal E. Bryant; David R. O'Hallaron
26 people recommended it in 16 threads, 2011–2024.
What people on Hacker News said
Later on in my career as driver/firmware programmer, Computer Systems - A Programmers Perspective[2] and Unix Systems for Modern Architectures[3] helped a lot to clarify confusions and mysteries.
It's extremely readable and gives you an excellent introduction of machine level code, processor architecture and memory as well as a solid foundation of higher level concepts including networking and concurrency.
Look at the TOC it covers floating point, TMin/Tmax overflow and casting to unsigned problems, gcc use, assembly (enough to understand how exactly pointers work) and many other things including VM/CPUs/Cache memory ect
I very highly recommend that you get and study "Computer Systems: A Programmer's Perspective, 3rd edition" since it is a very practical and detail oriented book(i.e. no hand-waving and full of code for x86-64) for the Programmer.
Computer Systems: A Programmer's Perspective and NAND2Tetris: Elements of Computing Systems are the best books to learn the internals of computer hardware and solidify your understanding of how a computer works.
Computer Systems: A Programmer's Perspective has a lot of good explanations of hardware/os subsystems that can be hard to find detailed explanations of elsewhere.
It's detailed enough to use when trying to understand how a shell works or how to write a signal handler, but the writing couldn't be clearer.
But by the end of it I left with a decent understanding of x86-64 assembly to the point that I could hand compile C functions. And also a rough and ready understanding of how shells, malloc, and web servers work.
Where it comes up
- Ask HN: What, in your opinion, are the greatest and most useful textbooks? 2020 · 3 recommendations
- Ask HN: What are the most fundamental books on computer science? 2019 · 3 recommendations
- Ask HN: What language-agnostic programming books should I read? 2017 · 3 recommendations
- Books for Software Engineers in 2023 2023 · 2 recommendations
- Ask HN: Best book to learn C in 2022? 2022 · 2 recommendations
- Books that changed my career as a software engineer 2021 · 2 recommendations
- Ask HN: What's the best programming book you've read recently? 2014 · 2 recommendations
- SICP: The only computer science book worth reading twice? (2010) 2024 · 1 recommendation
- Ask HN: What are the most eye-opening textbooks you have ever read? 2023 · 1 recommendation
- Ask HN: Do you recall any book or course that made a topic finally click? 2022 · 1 recommendation
- Ask HN: Which books you have read till now that were worth investing time in? 2022 · 1 recommendation
- Ask HN: Which book can attract anyone towards your field of study? 2022 · 1 recommendation
- Ask HN: The book that did it for you in math and/or CS? 2022 · 1 recommendation
- Ask HN: Books you plan to read in 2020? 2019 · 1 recommendation
- What are must read books for entry level C programmer? 2017 · 1 recommendation
- Must Read CS Books For Self Self-Taught Programmers 2011 · 1 recommendation