Time Sharing Operating System
A time sharing system allows many users to share the computer
resources simultaneously. In other words, time sharing refers to the
allocation of computer resources in time slots to several programs
simultaneously. For example a mainframe computer that has many users
logged on to it. Each user uses the resources of the mainframe -i.e. memory, CPU
etc. The users feel that they are exclusive user of the CPU, even
though this is not possible with one CPU i.e. shared among different
users.
The
time sharing systems were developed to provide an interactive use of
the computer system. A time shared system uses CPU scheduling and
multiprogramming to provide each user with a small portion of a
time-shared computer. It allows many users to share the computer
resources simultaneously. As the system switches rapidly from one user
to the other, a short time slot is given to each user for their
executions.
The
time sharing system provides the direct access to a large number of
users where CPU time is divided among all the users on scheduled basis.
The OS allocates a set of time to each user. When this time is expired,
it passes control to the next user on the system. The time allowed is
extremely small and the users are given the impression that they each
have their own CPU and they are the sole owner of the CPU. This short
period of time during that a user gets attention of the CPU; is known as
a time slice or a quantum.
The main disadvantage of multi programmed batch system is:
1.
The user can interract with the job when its executing the user must
setup the control cards to handle all possiable outcomes.
2.
Another difficulty is that program must be debug statically from
snapshop dumps. A programmer cannot modified program has it execute to
study its behaviour.
Time sharing or multi
tasking is logical expansion of multi prograamming. Multiple jobs are
executed by the CPU switching between them. But the Switches occur so
frequently that uses may interact with each program while it is running.
An
intractive or hand on computer syste provides on time communication
between the user and the system. The user given instruction to the use
or to a program directly and receives an immediate response.
Time
sharing where develope to provide interactive use of a computer system
at a reasonable cost. A time shared operating system uses CPU scheduling
and multi programming to provide each user with a small portion of a
time shared computer.
A time shared operating
system allows the many users to share the computer simultaneoualy. Since
each action or command in a time shared system tends to be needed for
each user.
The main disadvantage of Time
sharing system is very difficult and expensive to built. Time sharing
provids and on-line file system. The file system resides on a collection
of disk. Hence memory management must be provided. It provides a
mechanism for concurrent execution, which requires CPU scheduling
schemes to orderly execution. The system should provides job
synchronization and communication and that jobs should not gets struck
in a dead lock, forever waiting for one another.
Multi programming and Time sharing are the control themes of modern operating system.
In
above figure the user 5 is active but user 1, user 2, user 3, and user 4
are in waiting state whereas user 6 is in ready status.
As
soon as the time slice of user 5 is completed, the control moves on to
the next ready user i.e. user 6. In this state user 2, user 3, user 4,
and user 5 are in waiting state and user 1 is in ready state. The
process continues in the same way and so on.
The
time-shared systems are more complex than the multiprogramming
systems. In time-shared systems multiple processes are managed
simultaneously which requires an adequate management of main memory so
that the processes can be swapped in or swapped out within a short time.