Escolar Documentos
Profissional Documentos
Cultura Documentos
com/operatin
g-system3.htm
1.Need of Operating System
At the simplest level, an operating system does two things:
The first task, managing the hardware and software resources, is very important, as
various programs and input methods compete for the attention of the central processing
unit (CPU) and demand memory, storage and input/output (I/O) bandwidth for their own
purposes. In this capacity, the operating system plays the role of the good parent, making
sure that each application gets the necessary resources while playing nicely with all the
other applications, as well as husbanding the limited capacity of the system to the greatest
good of all the users and applications.
Even if a particular computer is unique, an operating system can ensure that applications
continue to run when hardware upgrades and updates occur. This is because the operating
system and not the application is charged with managing the hardware and the
distribution of its resources. One of the challenges facing developers is keeping their
operating systems flexible enough to run hardware from the thousands of vendors
manufacturing computer equipment. Today's systems can accommodate thousands of
different printers, disk drives and special peripherals in any possible combination.
The operating system is the interface between the hardware and the user. If there were no
O/S, the computer would be an expensive door stop.
Types of scheduler?
Types of operating system schedulers
Operating systems may feature up to 3 distinct types of schedulers: a long-term scheduler
(also known as an admission scheduler or high-level scheduler), a mid-term or medium-
term scheduler and a short-term scheduler (also known as a dispatcher). The names
suggest the relative frequency with which these functions are performed.
The mid-term scheduler temporarily removes processes from main memory and places
them on secondary memory (such as a disk drive) or vice versa. This is commonly
referred to as "swapping out" or "swapping in" (also incorrectly as "paging out" or
"paging in"). The mid-term scheduler may decide to swap out a process which has not
been active for some time, or a process which has a low priority, or a process which is
page faulting frequently, or a process which is taking up a large amount of memory in
order to free up main memory for other processes, swapping the process back in later
when more memory is available, or when the process has been unblocked and is no
longer waiting for a resource. [Stallings, 396] [Stallings, 370]
In many systems today (those that support mapping virtual address space to secondary
storage other than the swap file), the mid-term scheduler may actually perform the role of
the long-term scheduler, by treating binaries as "swapped out processes" upon their
execution. In this way, when a segment of the binary is required it can be swapped in on
demand, or "lazy loaded". [Stallings, 394]
[edit] Short-term Scheduler
The short-term scheduler (also known as the CPU scheduler) decides which of the ready,
in-memory processes are to be executed (allocated a CPU) next following a clock
interrupt, an IO interrupt, an operating system call or another form of signal. Thus the
short-term scheduler makes scheduling decisions much more frequently than the long-
term or mid-term schedulers - a scheduling decision will at a minimum have to be made
after every time slice, and these are very short. This scheduler can be preemptive,
implying that it is capable of forcibly removing processes from a CPU when it decides to
allocate that CPU to another process, or non-preemptive (also known as "voluntary" or
"co-operative"), in which case the scheduler is unable to "force" processes off the CPU.
[Stallings, 396].
MS-DOS
AmigaOS
Classic Mac OS (System 1 through Mac OS 9).
Windows 1.0
Windows 2.0
Windows 3.0
Windows 3.1x
Windows 95
Windows 98
Windows ME
With the different types of operating systems in mind, it's time to look at the basic
functions provided by an operating system.