Jones
2006.09.15, 10:02 PM
Hardware programming has always been a subject that fascinates me. The closest thing I've come to it is a little robotic owl I have that you plug into a computer and then program with using C. I didn't use it much because I never managed to get it to use the compiled firmware the manual tells you to upload.
Recently I've been interested in how a computer interfaces with it's hardware. (Audio, graphics cards, etc...) I wondered how OS's talked to the computer so I downloaded the sources to Linux and ReactOS and poked around inside them. I understood none of it, naturally. :p
How does one send a message/signal to hardware using C or C++ (higher level languages I mean, rather than assembly) ? I assume that in all PC's there are standards like "Video card is at bus id 0x000034A" or something but at some stage there must be a way to send stuff to that bus to execute.
Does OpenGL do this directly or handle it through the OS?
I'm looking for texts on the subject and maybe a bit of sample code to look at. I took a peek at Apple's Kernel Extensions sample code for audio drivers but once again, understood none of it. It also appeared to use apple driver frameworks which is not what I want to learn about. I want to learn about how those frameworks were written, not how to use them.
So anyways, like I said, know of any texts or resources on the subject?
Thanks!
Recently I've been interested in how a computer interfaces with it's hardware. (Audio, graphics cards, etc...) I wondered how OS's talked to the computer so I downloaded the sources to Linux and ReactOS and poked around inside them. I understood none of it, naturally. :p
How does one send a message/signal to hardware using C or C++ (higher level languages I mean, rather than assembly) ? I assume that in all PC's there are standards like "Video card is at bus id 0x000034A" or something but at some stage there must be a way to send stuff to that bus to execute.
Does OpenGL do this directly or handle it through the OS?
I'm looking for texts on the subject and maybe a bit of sample code to look at. I took a peek at Apple's Kernel Extensions sample code for audio drivers but once again, understood none of it. It also appeared to use apple driver frameworks which is not what I want to learn about. I want to learn about how those frameworks were written, not how to use them.
So anyways, like I said, know of any texts or resources on the subject?
Thanks!