How many layers are between my program and the hardware?

Posted by sub on Stack Overflow See other posts from Stack Overflow or by sub
Published on 2010-04-14T21:09:54Z Indexed on 2010/04/14 21:13 UTC
Read the original article Hit count: 306

Filed under:
|
|

I somehow have the feeling that modern systems, including runtime libraries, this exception handler and that built-in debugger build up more and more layers between my (C++) programs and the CPU/rest of the hardware.

I'm thinking of something like this:

1 + 2 >> OS top layer >> Runtime library/helper/error handler >> a hell lot of DLL modules >> OS kernel layer >> Do you really want to run 1 + 2?-Windows popup (don't take this serious) >> OS kernel layer >> Hardware abstraction >> Hardware >> Go through at least 100 miles of circuits >> Eventually arrive at the CPU >> ADD 1, 2 >> Go all the way back to my program

Nearly all technical things are simply wrong and in some random order, but you get my point right?

  • How much longer/shorter is this chain when I run a C++ program that calculates 1 + 2 at runtime on Windows?

  • How about when I do this in an interpreter? (Python|Ruby|PHP)

  • Is this chain really as dramatic in reality? Does Windows really try "not to stand in the way"? e.g.: Direct connection my binary <> hardware?

© Stack Overflow or respective owner

Related posts about Hardware

Related posts about abstraction