Hardware knowledge in computer science


How much hardware understanding does one need to fully comprehend "Operating System" and "Computer Architecture" courses one takes as a computer science student?

Best Solution

At that level, the more you know the better, but the bare necessities are boolean logic design for computer architecture. Understand how do you design registers, adders, multiplexers, flip flops, etc. from basic logic units (and, or, clocks). You can probably understand operating systems starting from basic understanding of ASM, memory mapped IO, and interrupts.

EDIT: I'm not certain what you mean by "hardware", do you consider logic design to be hardware? Or were you talking about transistors? I suppose it wouldn't hurt to understand the basics of semiconductors, but architecture is abstracted above the real hardware level. I would also say that operating systems are abstracted above the architecture.