1 Web
1 Web
1 Web
CHAPTER
Introduction
Practice Exercises
1.1 What are the three main purposes of an operating system?
Answer: The three main puropses are:
1.2 What are the main differences between operating systems for mainframe
computers and personal computers?
Answer: Generally, operating systems for batch systems have simpler
requirements than for personal computers. Batch systems do not have
to be concerned with interacting with a user as much as a personal
computer. As a result, an operating system for a PC must be concerned
with response time for an interactive user. Batch systems do not have
such requirements. A pure batch system also may have not to handle
time sharing, whereas an operating system must switch rapidly between
different jobs.
1.3 List the four steps that are necessary to run a program on a completely
dedicated machine —a computer that is running only that program.
Answer: The four steps are:
1.4 We have stressed the need for an operating system to make efficient use
of the computing hardware. When is it appropriate for the operating
system to forsake this principle and to “waste” resources? Why is such
a system not really wasteful?
Answer: Single-user systems should maximize use of the system for
the user. A GUI might “waste” CPU cycles, but it optimizes the user’s
interaction with the system.
1.5 What is the main difficulty that a programmer must overcome in writing
an operating system for a real-time environment?
Answer: The main difficulty is keeping the operating system within
the fixed time constraints of a real-time system. If the system does not
complete a task in a certain time frame, it may cause a breakdown
of the entire system it is running. Therefore when writing an operating
system for a real-time system, the writer must be sure that his scheduling
schemes don’t allow response time to exceed the time constraint.
1.6 Consider the various definitions of operating system. Next, consider
whether the operating system should include applications such as Web
browsers and mail programs. Argue both that it should and that it should
not, and support your answers.
Answer: Point. Applications such as web browsers and email tools are
performing an increasingly important role in modern desktop computer
systems. To fulfill this role, they should be incorporated as part of the
operating system. By doing so, they can provide better performance
and better integration with the rest of the system. In addition, these
important applications can have the same look-and-feel as the operating
system software.
Counterpoint. The fundamental role of the operating system is to man-
age system resources such as the CPU, memory, I/O devices, etc. In ad-
dition, it’s role is to run software applications such as web browsers and
email applications. By incorporating such applications into the operating
system, we burden the operating system with additional functionality.
Such a burden may result in the operating system performing a less-than-
satisfactory job at managing system resources. In addition, we increase
the size of the operating system thereby increasing the likelihood of
system crashes and security violations.
1.7 How does the distinction between kernel mode and user mode function
as a rudimentary form of protection (security) system?
Answer: The distinction between kernel mode and user mode pro-
vides a rudimentary form of protection in the following manner. Certain
instructions could be executed only when the CPU is in kernel mode.
Similarly, hardware devices could be accessed only when the program
is executing in kernel mode. Control over when interrupts could be en-
abled or disabled is also possible only when the CPU is in kernel mode.
Consequently, the CPU has very limited capability when executing in
user mode, thereby enforcing protection of critical resources.
1.8 Which of the following instructions should be privileged?
Practice Exercises 3