Homework: Exercise 1.1
1.1. What are the three main purposes of an operating system?
The operating system manages a computer’s hardware, provides a basis for application programs, and is the moderator between a user and the computer hardware.
1.2. What are the main differences between operating systems for mainframe computers and personal computers?
Operating systems for mainframe computers are designed to optimize the performance of hardware. Operating systems for personal computers support anything between games to complex business applications.
1.3. Name the four main steps that are necessary to run a program on a completely dedicated machine-a computer that is running only that program.
Reserve machine time, manually load the program into memory, load the starting address and begin execution, monitor and control execution of the program from the console
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?
Single-user systems should maximize the system use for the user. A GUI will waste CPU cycles, but it will optimize the user interaction in the system.
1.5. What is the main difficulty that a programmer must overcome in writing an operating system for a real-time environment?
The main difficulty is keeping the operating system in the fixed time constraints of a real-time system.
1.6. Consider the various definitions of operating system. Consider whether the operating system should include applications such as Web browsers and mail programs. Argue that it should and that it should not, and support your answer.
Web browsers and email tools can provide better performance and integration with the rest of the system. Incorporating these applications onto the system can put a burden on the resources and may cause crashes or security...