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 concept of time sharing system is shown in figure.
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.