Take the 2-minute tour ×
English Language & Usage Stack Exchange is a question and answer site for linguists, etymologists, and serious English language enthusiasts. It's 100% free, no registration required.

I'm looking for the terminology to describe the stack between user level programs and the hardware. For example, in a typical non-virtualized environment, this stack is:

User program <-> Application Binary Interface <-> Operating System <-> Hardware

User level programs access the system calls through the ABI, and the OS executes the operation on the hardware on behalf of the program. In the other direction, data coming from the hardware is given to the OS, which passes it up to the program.

The terminology I've been using up to this point is application stack, but this term means something different.

share|improve this question
1  
"Hardware Abstraction Layer", but that's just the bit between the OS and the silicon; however, I think that "layers" is the standard term of art here. I like to call the OSI model the "7-layer Burrito", but I'm afraid I don't really have an equivalent for an individual computer. "The whole enchilada", perhaps? –  MT_Head Jun 17 '11 at 7:43
add comment

4 Answers

up vote 1 down vote accepted

I thought this was called the platform, which is all the bits from hardware to just short of user programs. Or does that include too much?

share|improve this answer
    
If I combine platform with the term layers or domains, it should describe what I'm looking for. –  karategeek6 Jun 17 '11 at 13:40
add comment

Back in the 80386 era, we used to call them "rings."

The 80386 processor had four rings, starting at "ring 0" (which has access to everything) and ending at "ring 3." Most of the time we'd only use rings 0 and 3, with applications sitting in ring 3, and drivers and kernel code in ring 0, but eventually drivers were moved out of ring 0 and all four rings started getting used in more projects.

This information was not easy to come by, and Intel was a good source (but costly at first) with the machine language reference material. If you're looking for detailed technical information about this stuff, which is really in the arena of very low-level heart-of-the-OS-kernel ASM (Assembler, Machine Language) programming, then key phrases like "Global Descriptor Table," "Local Descriptor Table," "Flat mode," and "Protected mode" will be useful to you. The following web page will cover a lot of the details:

  OS Developer Wiki - GDT tutorial
  http://wiki.osdev.org/GDT_Tutorial

share|improve this answer
    
Wikipedia also knows the term and gives a decent overview: en.wikipedia.org/wiki/Ring_(computer_security) –  pinkgothic Jun 17 '11 at 10:31
    
My understanding of rings that they just describe the privilege level of instructions executing on the processor. They don't really capture the idea I'm looking for. The rings are fixed, what I'm trying to describe can be moved around and modified. Layers can be removed (by having programs directly interact with the processor, for example) or added (with virtualization). I am curious, however, what rings 1-3 are being used for. I know a virtualization technique is to run the virtualized enviornment on ring 1 or 2, but that's as far as my knowledge extends. –  karategeek6 Jun 17 '11 at 13:39
add comment

When describing system's architecture you can use:

share|improve this answer
    
The "OSI model" is normally used for networking. A nicely coloured chart of the OSI model can be found here: en.wikipedia.org/wiki/OSI_model#Description_of_OSI_layers –  Randolf Richardson Jun 17 '11 at 8:48
    
@Randolf Richardson, OSI model is a model of networking - I gave it only as (a well known) example of how the term layer is used in the industry. –  Unreason Jun 17 '11 at 8:56
add comment

The term I hear and use most often for this is operating system layers.

share|improve this answer
    
I'd say "layers" is the best word to describe this, and the OSI networking usage mentioned by @Unreason endorses it. –  njd Jun 17 '11 at 9:45
    
While this term does fit my needs, I think I prefer the term platform given by Kit. If after chewing on it for a while I find I've changed my mind, then I'll change my acceptance. –  karategeek6 Jun 17 '11 at 13:44
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.