Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
12 Cards in this Set
- Front
- Back
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 within the fixed time constraints of a real-time system. If the system
|
|
Which of the following instructions should be privileged? a. Set value of timer d. Issue a trap instruction |
a. Set value of timer e. Turn off interrupts |
|
Some early computers protected the operating system by placing it in a memory partition that could not be modified by either the user job or the operating system itself. Describe two difficulties that you think could arise with such a scheme. |
The data required by the operating system (passwords, access
Bug fixes, change chip |
|
In a multiprogramming and time-sharing environment, several users share the system simultaneously. This situation can result in various security problems. a. What are two such problems? |
* Stealing or copying a user's files; writing over another program's (belonging to another user or to the OS) area in memory; using system resources (CPU, disk space) without proper accounting; causing the printer to mix output by sending data while some other user's file is printing.
* Probably not, since any protection scheme devised by a human can also be broken -- and the more complex the scheme is, the more difficult it is to be confident of its correct implementation. |
|
How do clustered systems differ from multiprocessor systems? What is required for two machines belonging to a cluster to cooperate to provide a highly available service? |
Clustered systems are typically constructed by combining multiple |
|
What is the purpose of interrupts? What are the differences between an interrupt and a trap? Can traps be generated intentionally by a user program? If so, for what purpose? |
An interrupt is a hardware‐generated change‐of‐flow within the |
|
Direct Memory Access is used for high-speed I/O devices in order to avoid increasing the CPU's execution load. a. How does the CPU interface with the device to coordinate the transfer? |
a. All devices have special hardware controllers. Normally, the OS
|
|
Some computer systems do not provide a privileged mode of operation in hardware. Is it possible to construct a secure operating system for these computer systems? Give arguments both that it is and that it is not possible. |
An operating system for a machine of this type would need to remain |
|
Give two reasons why caches are useful. What problems do they solve? What problems do they cause? If a cache can be made as large as the device for which it is caching (for instance, a cache as large as a disk), why not make it that large and eliminate the device? |
Caches are useful when two or more components need to exchange |
|
Discuss, with examples, how the problem of maintaining coherence of cached data manifests itself in the following processing environments: a. Single processor system b. Multiprocessor system c. Distributed system |
In single-processor systems, the memory needs to be updated In a multiprocessor system, In distributed systems, consistency of cached |
|
Describe a mechanism for enforcing memory protection in order to prevent a program from modifying the memory associates with other programs. |
The processor could keep track of what locations are associated with each process and limit access to locations that are outside of a program’s extent. Information regarding the extent of a program’s memory could be maintained by using base and limits registers and by performing a check for every memory access. |
|
Identify several advantages and disadvantages of open-source operating systems. Include the types of people who would find each aspect to be an advantage or a disadvantage. |
Open source operating systems have the advantages of having many people working on them, many people debugging them, ease of access and distribution, and rapid update cycles. Further, for students and programmers, there is certainly an advantage to being able to view and modify the source code. Typically open source operating systems are free for some forms of use, usually just requiring payment for support |