Operating Systems: Hidden Software

When a brand new computer comes off the factory assembly line, it can do nothing. The hardware needs software to make it work. Are we talking about applications software such as wordprocessing or spreadsheet software? Partly. But an applications software package does not communicate directly with the hardware. Between the applications software and the hardware is a software interface - an operating system. An operating system is a set of programs that lies between applications software and the computer hardware.

The most important program in the operating system, the program that manages the operating system, is the supervisor program, most of which remains in memory and is thus referred to as resident. The supervisor controls the entire operating system and loads into memory other operating system programs (called non-resident) from disk storage only as needed.

An operating system has three main functions: (1) manage the computer's resources, such as the central processing unit, memory, disk drives, and printers, (2) establish a user interface, and (3) execute and provide services for applications software. Keep in mind, however, that much of the work of an operating system is hidden from the user. In particular, the first listed function, managing the computer's resources, is taken care of without the user being aware of the details. Furthermore, all input and output operations, although invoked by an applications program, are actually carried out by the operating system.

General Features of Operating Systems

An operating system is a master control program which controls the functions of the computer system as a whole and the running of application programs. All computers do not use the same operating systems. Some software being only designed to run under the control of specific operating systems, it is important to assess the operating system used on a particular model before initial commitment. Some operating systems are adopted as “industry standards” and these are the ones which should be evaluated because they normally have a good software base. The reason for this is that software houses are willing to expand resources on the development of application packages for machines functioning under the control of an operating system which is widely used. The cost of software could be lower in such circumstances as the development costs are spread over a greater number of users, both actual and potential.

Mainframe computers usually process several application programs concurrently switching from one to the other for the purpose of increasing processing productivity. This is known as multiprogramming (multi-tasking in the context of microcomputers), which requires a powerful operating systems incorporating work scheduling facilities to control the switching between programs. This entails that data are read for one program while the processor is performing computations on another and printing out results on yet another.

In multi-user environments an operating system is required to control terminal operations on a shared access basis as only one user can access the system at any moment of time. The operating system allocates control to each terminal in turn. Such systems also require a system for record locking and unlocking, to prevent one user attempting to read a record whilst another user is updating it, for instance. The first user is allocated control to write to a record (or file in some instances) and other users are denied access until the record is updated and unlocked.

Some environments operate in concurrent batch and real-time mode. This means that a “background” job deals with routine batch processing whilst the “foreground” job deals with real-time operations such as airline seat reservations, on-line booking of hotel accommodation, or control of warehouse stocks, etc. The real-time operation has priority, and the operating system interrupts batch processing to deal with real-time inquiries or file updates. The stage of batch processing attained at the time of the interrupt is temporarily transferred to backing storage. After the real-time operation has been dealt with, the interrupted program is transferred back to internal memory from backing storage. And processing recommences from a “restart” point. The operating system also copies to disk backing storage the state of the real-time system every few minutes (periodic check points) to provide a means of recovering the system in the event of a malfunction.

An operating system is stored on disk and has to be booted into the internal memory (RAM) where it must reside throughout processing so that commands are instantly available. The operating system commands may exceed the internal memory capacity of the computer in which case only that portion of the OS which is frequently used is retained internally, other modules being read in from disk as required. Many microcomputers function under the control of a disk operating system known as DOS.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: