Live data from Hacker News

Ask HN: Best book for understanding hardware-software interface

news.ycombinator.com

1–10 of 13 posts

Re: Ask HN: Best book for understanding hardware-software interface

#2
That sounds like a simple question but the answer is very complex. I recommend you look at old technology that was more simple and easy to understand, and then start moving forward. Look at the S100 bus and how simple 8 bit microprocessors such as the Z80 and 6502 did IO.

https://en.wikipedia.org/wiki/S-100_bus

https://z80journal.wordpress.com/2015/10/07/z80-io-space/

Then with x86 PC age, look at the ISA bus first https://en.wikipedia.org/wiki/Industry_Standard_Architecture

and later on, the PCI bus (should I even mention Microchannel?) : https://en.wikipedia.org/wiki/Conventional_PCI

Another direction for computer IO might be to learn about the Raspberry Pi GPIO interface: https://learn.sparkfun.com/tutorials/raspberry-gpio/all

Re: Ask HN: Best book for understanding hardware-software interface

#3
One of the best ways would be 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...

Re: Ask HN: Best book for understanding hardware-software interface

#5

One of the best ways would be 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-Programmer…

I also highly recommended working through The Elements of Computing Systems by Noam Nisam. There’s more info available at the website https://www.nand2tetris.org/

Re: Ask HN: Best book for understanding hardware-software interface

#7
While not exactly what you have asked for, I once delivered a related session intended for software developers -- "How Does a Processor Execute My Code? And Why?!" If the slides for this would be of interest, reach out to me using contact information in my profile.

Re: Ask HN: Best book for understanding hardware-software interface

#10
I'm surprised there's no mention of the classic Computer Organization and Design by Patterson and Hennessy. Combine that with a recent book on the Linux kernel (either the O'Reilly one or I think there's one from Addison-Wesley) or the BSD red book (design and implementation of 4.4 bsd I think it's called) and I think you'd have good coverage of the topic.
Post reply on HN