HACKER Q&A
📣 rmbyrro

"Know Your Hardware”: best books/resources to learn?


This insightful thread [1] today suggests importance for developer to "know its hardware".

Any materials (books, videos, courses, tutorials, example codebases) you'd suggest to learn this?

I like the "Write Great Code" series [2], esp. "Understanding the Machine" and "Thinking Low-Level, Writing High-Level". Though I think they miss depth.

[1] https://news.ycombinator.com/item?id=29660117

[2] https://nostarch.com/search/Write%20Great%20Code


  👤 rmbyrro Accepted Answer ✓
Nand2Tetris opened up a world for me. Searching for it on HN, I also found these books (three of them new to me):

* The Elements of Computing Systems [1] * Understanding Computation: From Simple Machines to Impossible Programs [2] * Computer Systems: A Programmer's Perspective [3] * Code: The Hidden Language of Computer Hardware and Software [4]

[1] https://news.ycombinator.com/item?id=26036790

[2] https://news.ycombinator.com/item?id=26040203

[3] https://news.ycombinator.com/item?id=26040101

[4] https://news.ycombinator.com/item?id=26038506


👤 mikewarot
First of all, watch this, and learn that there's a whole stack of layers below what Linux can even touch these days.

https://www.youtube.com/watch?v=36myc8wQhLo

For a theoretical understanding, with a much simpler model, I suggest the Nand2Tetris course.