A+ Certification / Beginners

Identifying Major Operating System Functions

As you find out in the preceding tutorial, the operating system is responsible for two major functions: managing hardware devices and providing an environment in which applications can execute. One of the major applications that needs to execute is the user interface, which lets the user control all other applications and their execution. In the case of Windows-based computers, this user interface, or shell, is named Windows Explorer. So together with hardware, this software makes up the operating system is responsible for getting things done.

The hardware and software get tied together in the location where everything happens: Memory.

Understanding memory management

Memory is the playing field where hardware and software mix. Memory management is the responsibility of the OS. The OS makes sure that the hardware and software components work within their own confines of memory. As memory resources are requested, the OS releases them either to the hardware device driver or to the application. The OS then takes steps to make sure that only the application accesses the memory areas that have been allocated to that particular application. If an application attempts to access memory that has not been allocated to it, the OS has to decide what to do with the application.

In all cases, attempts to access the memory space of other applications are denied. Usually the denied application doesn't know what to do when this happens, so you get an application that "hangs" or terminates through a General Protection Fault (GPF). Most applications really never expect to be denied anything. Hangs and GPFs are annoying because the failed application is flushed from memory and data may be lost. On the positive side, the other application - the one whose memory was almost accessed - should still be working. The goal is to protect the other application by terminating the application that exceeded its boundaries.

As part of memory management, the OS keeps track of physical memory on the computer as well as hard drive space that is used as extra memory available to the computer. Access time to physical memory is measured in nanoseconds, and access time to disk drives is measured in milliseconds. These scales are widely different, and so is the access time of information from these memory locations. Both types of memory are lumped together to make up virtual memory. Sometimes the term virtual memory is applied to the hard drive space that is used to simulate memory, but at the OS level, the term is used to refer to all of the memory available for storage on the system.

As applications launch and get loaded into memory, physical memory is used. When this space becomes limited, the OS moves some data out of RAM and onto the hard drive. The OS records the change in the actual location so that when the application requests that information again, the information can be moved back into physical memory and accessed.

[Contents] [Next]