Skip to main content

The Relationship between an Application program, the operating system and hardware

The relationship between an application program and the underlying hardware is usually shown in the form of a stack of layers as shown below:
• 1.Application
• 2.Application Programming Interface (API)
• 3.Operating System
• 4.Device Driver
• 5.Hardware

Most applications need to know how to talk to the operating system - which is why the operating system will provide a set of programming libraries knows as APIs or SDKs (Software Development Kits) for programmers to use when writing applications.

The APIs sit between the operating system and the running application. The running application relies on the API to perform essential tasks on the computer by telling the operating system what it wants to do - which is why a program that is written to use Windows Vista APIs will not run on an Apple Mac without some kind of emulation or help.
Because there are so many different pieces of hardware, it would be impossible for an operating system to support them all (especially the lesser known devices). That's why hardware manufacturers will write device drivers for different operating systems, so the operating system knows how to talk to the hardware.

Comments

Popular posts from this blog

External hardware components and peripherals, cost, image and function

Monitor: $100-$300 A monitor or display (sometimes called a visual display unit) is an electronic visual display for computers.               Laser Printer: $150-$400 A laser printer is a common type of computer printer that rapidly produces high quality text and graphics on plain paper.       Projector: $300-$3000 A video projector takes a video signal and projects the corresponding image on a projection screen using a lens system. Scanner: $100-$300 In computing, a scanner is a device that optically scans images, printed text, handwriting, or an object, and converts it to a digital image.