Thursday, February 26, 2009

How Will I Use an Operating System?

The user interface of an operating system is the portion of the program with which users interact.
The user interface can be

1. Command-line,
2.Menu-driven, and
3.Graphics-based.

A command-line interface requires a user to type the desired response at a prompt using a special command language.

To be an effective user of any command-line software, you must memorize its commands and their exact syntax-no easy task.

A menu-driven interface allows the user to select commands from a list (menu) using the keyboard or a pointing device such as a mouse.

A graphical user interface (GUI):

The trend is away from text-based, command-line interfaces to user-friendly, graphics-oriented environment called a graphical user interface (GUI).

Graphical user interfaces rely on graphics-based software.

Graphic-based software permits the integration of text with high-resolution graphic
image, called icons.

GUI users interact with the operating system and other software packages by using a pointing device and a keyboard to issue commands.

Rather than enter a command directly, the user chooses from options displayed on the screen.

The equivalent of a syntax-sensitive operating system command is entered by pointing to and choosing one or more options from menu or by pointing to and choosing a graphics image, called an icon.

Typically GUI includes some or all of the following parts:

-Icons, which are graphical images that represent items, such as files and directories.
-Agraphical pointer, which is controlled by a pointing device (mouse), to select icons and
commands and move on-screen items.
-On-screen pull-down menus that appear or disappear, controlled by the pointing device.
-Windows that enclose applications or objects on the screen.

GUIs have effectively eliminated the need for users to memorize and enter cumbersome commands.

Type of Processing

A multiprocessing operating system allows the simultaneous execution of programs by a computer that has two or more CPUs. Each CPU can be either dedicated to one program, or dedicated to specific functions and then used by all programs.

Interprocessing, also called dynamic linking, is a type of processing that allows any change made in one application to be automatically reflected in any related, linked application.

Real-time processing allows a computer to control or monitor the performance of other machines and people by responding to input data in a specified amount of time.

Virtual-machine (VM) processing creates the illusion that there is more than one physical machine. VM capabilities permit a computer to run numerous operating systems at one time. VM capabilities are typically used on supercomputers and mainframes.

Virtual memory, also called virtual storage, allows you to use a secondary-storage device as an extension of main memory. Virtual memory resolves the problem of insufficient main memory to contain an entire program and its data.

Major Functions of Operating Systems

The major functions of an OS are:

-resource management,
-data management,
-job (task) management, and
-standard means of communication between user and computer.

The resource management function of an OS allocates computer resources such as CPU time, main memory, secondary storage, and input and output devices for use.

The data management functions of an OS govern the input and output of the data and their location, storage, and retrieval.

The job management function of an OS prepares, schedules, controls, and monitors jobs submitted for execution to ensure the most efficient processing. A job is a collection of one or more related programs and their data.

A job is a collection of one or more related programs and their data.

The OS establishes a standard means of communication between users and their computer systems. It does this by providing a user interface and a standard set of commands that control the hardware.

Typical Day-to-Day Uses of an Operating System

-Executing application programs.
-Formatting floppy diskettes.
-Setting up directories to organize your files.
-Displaying a list of files stored on a particular disk.
-Verifying that there is enough room on a disk to save a file.
-Protecting and backing up your files by copying them to other disks for safekeeping.

How Do Operating Systems Differ?

Operating systems for large computers are more complex and sophisticated than those for microcomputers because the operating systems for large computers must address the needs of a very large number of users, application programs, and hardware devices, as well as supply a host of administrative and security features.

Operating system capabilities can be described in terms of

-the number of users they can accommodate at one time,
-how many tasks can be run at one time, and
-how they process those tasks.

Number of Users:

A single-user operating system allows only one user at a time to access a computer.

Most operating systems on microcomputers, such as DOS and Window 95, are single-user access systems.

A multiuser operating system allows two or more users to access a computer at the same time (UNIX).

The actual number of users depends on the hardware and the OS design.
Time sharing allows many users to access a single computer.
This capability is typically found on large computer operating systems where many users need access at the same time.

Number of Tasks

An operating system can be designed for single tasking or multitasking.

A single tasking operating system allows only one program to execute at a time, and the program must finish executing completely before the next program can begin.

A multitasking operating system allows a single CPU to execute what appears to be more than one program at a time.

Context switching allows several programs to reside in memory but only one to be active at a time. The active program is said to be in the foreground. The other programs in memory are not active and are said to be in the background. Instead of having to quit a program and load another, you can simply switch the active program in the foreground to the background and bring a program from the background into the foreground with a few keystrokes.

Cooperative multitasking in which a background program uses the CPU during idle time of the foreground program. For example, the background program might sort data while the foreground program waits for a keystroke.

Time-slice multitasking enables a CPU to switch its attention between the requested tasks of two or more programs. Each task receives the attention of the CPU for a fraction of a second before the CPU moves on to the next. Depending on the application, the order in which tasks receive CPU attention may be determined sequentially (first come first served) or by previously defined priority levels.

Multithreading supports several simultaneous tasks within the same application. For example, with only one copy of a database management system in memory, one database file can be sorted while data is simultaneously entered into another database file.

Friday, February 20, 2009

Operating System

What Is an Operating System?

An operating system (OS) is a core set of programs that control and supervise the hardware resources of a computer and provide services to other system software, application software, programmers, and users of a computer.

The OS gives the computer the instructions it needs to operate, telling it how to interact with hardware, other software, and the user.

The OS establishes a standard interface, or means of communication, between users and their computer systems.
When you power up a computer, you boot the system.
The booting procedure is so named because the computer "pulls itself up by its own bootstraps" (without the assistance of humans).
When booting the system,

First, a program in read-only memory (ROM) initializes the system and runs a system check to verify that the electronic components are operational and readies the computer for processing.
Next, the operating system is loaded to RAM, takes control of the system, and presents the user with a system prompt or a GUI screen full of options.

Operating System Parts

Operating systems are composed of two major parts:

control programs, and
service program.

Control programs manage computer hardware and resources.
The main program in most operating systems is the supervisor program.

A supervisor program is a control program that is known in some operating systems as the monitor, executive, or kernel.
The supervisor program is responsible for controlling all other OS programs as well as other system and application programs.
The supervisor program controls the activities of all of the hardware components of a computer.


Service programs are external OS programs that provides a service to the user or programmer of a computer.
They must be loaded separately because they are not automatically loaded when the operating system is loaded.
They perform routine but essential functions, such as formatting a disk for use and copying files from one location to another.