You are on page 1of 5

Assignment: Operating System

By: Waqas Ali Tunio; 07ME34.

Operating systems are like underwear — nobody really wants to look at them. (Bill Joy)

QUAID-E-AWAM UNIVERSITY OF
ENGINEERING, SCIENCE & TECHNOLOGY,
NAWABSHAH

COMPUTER SYSTEMS AND PROGRAMMING ASSIGNMENT


S UBMITTED TO: SIR ZOHAIB SHAIKH
BY : W AQAS ALI TUNIO , 07ME34;

STUDENT OF 2ND YEAR, DEPARTMENT OF MECHANICAL ENGINEERING

Operating Systems
Contents Page
no.

Evolution of Operating Systems 2

Operating System as a Resource Manager 4

Operating System Environment 5

1
Assignment: Operating System
By: Waqas Ali Tunio; 07ME34.

Evolution of Operating Systems


Introduction
The year 2000 marked the first half century of computer operating systems. To learn from the
pioneers of the field, I have formatted couple of tables for my favourite papers on Classic operating
systems. These papers span the entire history of the field from the batch processing systems of the
1950s to the distributed systems of the 1990s. I assume that you already know how operating
systems work, but not necessarily how they were invented.

The widespread use of certain operating systems is of no interest to me, since it often has no
obvious relationship to the merits (or flaws) of these systems. To paraphrase G.H. Hardy (1969),
Beauty is the first test: there is no permanent place in the world for ugly ideas.

The evolution of operating systems went through seven major phases (Table1). Six of them
significantly changed the ways in which users accessed computers through the open shop, batch
processing, multiprogramming, timesharing, personal computing, and distributed systems. In the
seventh phase the foundations of concurrent programming were developed and demonstrated in
model operating systems.

Classical Operating Systems


Major Phases Operating Systems
I. Open Shop 1. IBM 701 open shop (1954)
II. Batch Processing 2. BKS system (1961)
III. Multiprogramming 3. Atlas supervisor (1961)
4. B5000 system (1964)
5. Exec II system (1966)
6. Egdon system (1966)
IV. Timesharing 7. CTSS (1962)
8. Multics file system(1965)
9. Titan file system (1972)
10. Unix (1974)
V. Concurrent Programming 11. THE system (1968)
12. RC 4000 system (1969)
13. Venus system (1972)
14. Boss 2 system (1975)
15. Solo system (1976)
16. Solo program text (1976)
VI. Personal Computing 17. OS 6 (1972)
18. Alto system (1979)
19. Pilot system (1980)
20. Star user interface (1982)
VII. Distributed Systems 21. WFS file server (1979)
22. Unix United RPC (1982)
23. Unix United system (1982)
24. Amoeba system (1990)

2
Assignment: Operating System
By: Waqas Ali Tunio; 07ME34.

Fundamental Ideas
Major Phases Technical Innovations
I. Open Shop 1. The Idea of Operating Systems
II. Batch Processing 2. Tape batching
3. First-in, first-out processing
III. Multiprogramming 4. Processor multiplexing
5. Indivisible operations
6. Demand paging
7. Input/output spooling
8. Priority scheduling
9. Remote job entry
IV. Timesharing 10. Simultaneous user interaction
11. On-line file systems
V. Concurrent Programming 12. Hierarchical systems
13. Extensible kernels
14. Parallel programming concepts
15. Secure parallel languages
VI. Personal Computing 16. Graphic User Interfaces (GUI)
VII. Distributed Systems 17. Remote servers

3
Assignment: Operating System
By: Waqas Ali Tunio; 07ME34.

Operating System as a Resource


Manager
As a resource manager, operating system not only manage the key components of the computer, but
also make them run in proper order. It is operating system; which know what task will be assigned to
which component of computer.

A resource, or system resource, is any physical or virtual component of limited availability within a
computer system. Every device connected to a computer system is a resource. Every internal system
component is a resource. Virtual system resources include files, network connections and memory
areas.
A resource handle is an identifier for a resource that is currently being accessed. Resource handles
can be opaque, in which case they are often integer numbers, or they can be pointers that allow
access to further information. Common resource handles are file descriptors and sockets.
Resource tracking is the ability of an operating system, virtual machine or other computer program
to terminate the access to a resource that has been allocated by a program but has not been de-
allocated immediately after use. When implemented by a virtual machine this is often done in the
form of garbage collection.
Access to memory areas is often controlled by semaphores, which allows a pathological situation
called a deadlock, when different threads or processes try to allocate resources already allocated by
each other. A deadlock usually leads to a program becoming partially or completely unresponsive.
Access to resources is also sometimes regulated by queuing; in the case of computing time on a CPU
the controlling algorithm of the task queue is called a scheduler.

4
Assignment: Operating System
By: Waqas Ali Tunio; 07ME34.

Operating System Environment


An “operating system environment” is one instance of an operating system and instances of
applications, if any, configured to run on that operating system instance. There are two types of
operating system environments, physical and virtual. A physical operating system environment is
configured to run directly on a physical hardware system. A virtual operating system environment is
configured to run on a virtual (or otherwise emulated) hardware system. A physical hardware
system can have either or both of the following:
 One physical operating system environment
 One or more virtual operating system environments.

The environment in which users run programs. For example, the DOS environment consists of all the
DOS commands available to users. Like Microsoft Windows XP is a complete operating system, not
simply an operating environment. The Macintosh environment, on the other hand, is a graphical
user interface that uses icons and menus instead of commands. There is a thin line between
operating environments and shells. Historically, shells are the interfaces to operating systems. They
do not actually add any new capabilities; they simply provide a better user interface. So-called
intelligent shells, however, actually extend an operating system's capabilities, so there is little
difference between intelligent shells and operating environments. Operating environments are
sometimes called control programs.

It consist many user-friendly interfaces, which help the user to do the job very easily and quickly. It
contains so many pre-defined instructions in the form of icons, which perform particular activity
when they are triggered.