< HOMEPAGE
|

Understanding the Software Layers of a Computer
---------------------------------------------------------- Permission is granted for the below article to forward, reprint, distribute, use for ezine, newsletter, website, offer as free bonus or part of a product for sale as long as no changes are made and the byline, copyright, and the resource box below is included. ----------------------------------------------------------
Understanding the Software Layers of a Computer
By Stephen Bucaro
You're typing in a word processor and you decide it would be nice to have a hard copy. You select File | Print in the menu and the printer comes to life, feeding out a copy of your document on paper. It seems like a simple process, but in reality your request passed through many layers of software before reaching your printer.
Although you requested the print through a menu of your word processing application, that application did not contact the printer directly. Instead, the aplication made a request to the computer's operating system. Remember, today's computers are multi-tasking. That means they can perform more than one task at a time. The operating system mediates the priority of multiple tasks requesting to use a hardware device.
The operating system did not contact the printer directly. Remember, today's computers can have a multitude of different hardware attached. There are thousands of different kinds of printers, and a computer may have several printers attached. Instead, the operating system communicates with a piece of software called a "device driver", specific to the printer that you selected.
The device driver did not contact the printer directly. Instead, the device driver contacted a program called the BIOS (Basic Input/Output System). Whereas all the programs up to this point had been loaded from the computers hard drive, the BIOS was loaded from a memory chip. Finally, the BIOS communicates directly with the electronic circuits of the printer.
[Application]--[Operating System]--[Device Driver]-- [BIOS]--[Hardware]
The above explanation describes the common software layers of a computer. Each of the software layers described above may itself consist of many layers. An application may communicate with the operating system through a piece of software called a DLL (Dynamic Link Library).
The operating system especially is constructed of many layers. Sometimes the operating system is described to be like an onion. At the center of the onion is the operating systems kernal. Only other layers of the operating system are allowed to communicate directly with the kernal. The outer layer of the operating system consists of programs called services which applications can communicate with directly.
It is possible to communicate with the printer directly (well almost). Most operating systems have a command line interface that lets users communicate more directly with the operating system and with hardware devices through the BIOS. The most familiar command line interface is the DOS Command Prompt.
At the DOS command prompt you can type "print" followed by the name of a document and a printed copy will be generated. But don't expect fancy fonts or formatting. Although the command line interface can be very powerful for some tasks, for other tasks it is very crude.
When you first start your computer, it has no software loaded. You could say your computer is "brain dead". It doesn't even know how to use the hard disk drive to load the operating system.
The BIOS is non-volatile memory built into the computers motherboard. Non-volatile means that the instructions in the memory are not lost when you turn the power off.
When you first start your computer, it is hard-wired to start reading the first instruction in the BIOS. The BIOS is not usually all in a single chip. As the BIOS starts, it looks for other parts of the BIOS that reside in chips on expansion cards. From these instructions, it learns how to check itself out (Power-on Self Test) and how to locate and load the operating system. The computer "BOOTS" (pulls itself up by its bootstraps).
The last thing the BIOS does is locate the drive containing the operating system and begin loading the operating system. Because the hard disk has vastly more storage capacity than a BIOS chip, the operating system software can be large and powerful. As the operating system loads, it begins loading device drivers and configuring the hardware.
In the early days, BIOS programs where stored in ROM (read only memory). Todays computers usually store BIOS programs in a type of memory, called "Flash memory" that can be rewritten. This allows you to reprogram the BIOS to fix bugs, or to update it. For example, You might download a BIOS update program from the Web and run it from a floppy disk.
The important thing to understand is that your computer has layers of software. You should understand where each layer resides in the path from user to hardware. You should now understand that when you dial out with your web browser, the request is passed to the operating system, which passes it to the modem driver, which communicates with a BIOS on the modem. That BIOS is the program that actually works the electronics of your modem.
Resource Box: ---------------------------------------------------------- Copyright(C)2004 Bucaro TecHelp. To learn how to maintain your computer and use it more effectively to design a Web site and make money on the Web visit http://bucarotechelp.com To subscribe to Bucaro TecHelp Newsletter Send a blank email to mailto:bucarotechelp-subscribe@topica.com ----------------------------------------------------------
About the Author
None
Written by: Stephen Bucaro
< Back To computer Next   Previous
|