1、 Explain your answer.Answer:a. Stealing or copying ones programs or data; using system resources (CPU, memory, disk space, peripherals) without proper accounting.b. Probably not, since any protection scheme devised by humans can inevitably be broken by a human, and the more complex the scheme, the m
2、ore difficult it is to feel confident of its correct implementation.1.2 The issue of resource utilization shows up in different forms in different types of operating systems. List what resources must be managedcarefully in the following settings: a. Mainframe or minicomputer systems b. Workstations
3、connected to servers c. Handheld computersa. Mainframes:memory and CPU resources, storage, network bandwidth.b. Workstations: memory and CPU resoucesc. Handheld computers: power consumption, memory resources.1.3 Under what circumstances would a user be better off using a timesharing system rather th
4、an a PC or single-user workstation? When there are few other users, the task is large, and the hardware is fast, time-sharingmakes sense. The full power of the system can be brought to bear on the users problem. The problemcan be solved faster than on a personal computer. Another case occurs when lo
5、ts of other users need resources at the same time.A personal computer is best when the job is small enough to be executed reasonably on it and when performance is sufficient to execute the program to the users satisfaction.1.4 Which of the functionalities listed below need to be supported by the ope
6、rating system for the following two settings: (a) handheld devices and (b) real-time systems. a. Batch programming b. Virtual memory c. Time sharing For real-time systems, the operating system needs to support virtual memory and time sharing in a fair manner. For handheld systems,the operating syste
7、m needs to provide virtual memory, but does not need to provide time-sharing. Batch programming is not necessary in both settings.1.5 Describe the differences between symmetric and asymmetric multiprocessing.What are three advantages and one disadvantage of multiprocessor systems? Symmetric multipro
8、cessing treats all processors as equals, and I/O can be processed on any CPU. Asymmetric multiprocessing has one master CPU and the remainder CPUs are slaves. The master distributes tasks among the slaves, and I/O is usually done by the master only.Multiprocessors can save money by not duplicating p
9、ower supplies,housings, and peripherals. They can execute programs more quickly and can have increased reliability. They are also more complex in both hardware and software than uniprocessor systems.1.6 How do clustered systems differ from multiprocessor systems? What is required for two machines be
10、longing to a cluster to cooperate to provide a highly available service? Clustered systems are typically constructed by combining multiple computers into a single system to perform a computational task distributed across the cluster. Multiprocessor systems on the other hand could be a single physica
11、l entity comprising of multiple CPUs. A clustered system is less tightly coupled than a multiprocessor system.Clustered systems communicate using messages, while processors in a multiprocessor system could communicate using shared memory.In order for twomachines to provide a highly available service
12、, the state on the two machines should be replicated and should be consistently updated. When one of the machines fail, the other could then take-over the functionality of the failed machine.1.7 Distinguish between the client-server and peer-to-peer models of distributed systems. The client-server m
13、odel firmly distinguishes the roles of the client and server. Under this model, the client requests services that are provided by the server. The peer-to-peer model doesnt have such strict roles. In fact, all nodes in the system are considered peers and thus may act as either clients or servers - or
14、 both. A node may request a service from another peer, or the node may in fact provide such a service to other peers in the system.For example, lets consider a system of nodes that share cooking recipes.Under the client-server model, all recipes are stored with the server. If a client wishes to acce
15、ss a recipe, it must request the recipe from the specified server. Using the peer-to-peer model, a peer node could ask other peer nodes for the specified recipe. The node (or perhaps nodes) with the requested recipe could provide it to the requesting node. Notice how each peer may act as both a clie
16、nt (i.e. it may request recipes) and as a server (it may provide recipes.)1.8 Consider a computing cluster consisting of twonodes running adatabase.Describe two ways in which the cluster software can manage access to the data on the disk. Discuss the benefits and disadvantages of each. Consider the
17、following two alternatives: asymmetric clustering and parallel clustering. With asymmetric clustering, one host runs the database application with the other host simply monitoring it. If the server fails, the monitoring host becomes the active server. This is appropriate for providing redundancy. Ho
18、wever, it does not utilize the potential processing power of both hosts. With parallel clustering, the database application can run in parallel on both hosts. The difficulty implementing parallel clusters is providing some form of distributed locking mechanism for files on the shared disk.1.9 How ar
19、e network computers different from traditional personal computers? Describe some usage scenarios in which it is advantageous to use network computers. A network computer relies on a centralized computer for most of its services. It can therefore have a minimal operating system to manage its resource
20、s. A personal computer on the other hand has to be capable of providing all of the required functionality in a standalonemanner without relying on a centralized manner. Scenarios where administrative costs are high and where sharing leads to more efficient use of resources are precisely those settin
21、gs where network computers are preferred.1.10 What is the purpose of interrupts? What are the differences between a trap and an interrupt? 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 system. An interr
22、upt handler is summoned to deal with the cause of the interrupt; control is then returned to the interrupted context and instruction. A trap is a software-generated interrupt. An interrupt can be used to signal the completion of an I/O to obviate the need for device polling. A trap can be used to ca
23、ll operating system routines or to catch arithmetic errors.1.11 Direct memory access is used for high-speed I/O devices in order to avoid increasing the CPUs execution load.a. How does the CPU interface with the device to coordinate the transfer?b. How does the CPU know when the memory operations ar
24、e complete?c. The CPU is allowed to execute other programs while the DMA controller is transferring data. Does this process interfere with the execution of the user programs? If so, describe what forms of interference are caused. The CPU can initiate a DMA operation by writing values into special re
25、gisters that can be independently accessed by the device.The device initiates the corresponding operation once it receives a command from the CPU. When the device is finished with its operation, it interrupts the CPU to indicate the completion of the operation.Both the device and the CPU can be acce
26、ssing memory simultaneously.The memory controller provides access to the memory bus in a fair manner to these two entities. A CPU might therefore be unable to issue memory operations at peak speeds since it has to compete with the device in order to obtain access to the memory bus.1.12 Some computer
27、 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 in control (or monitor
28、 mode) at all times. This could be accomplished by two methods:a. Software interpretation of all user programs (like some BASIC,Java, and LISP systems, for example). The software interpreter would provide, in software, what the hardware does not provide.b. Require meant that all programs be written
29、in high-level languages so that all object code is compiler-produced. The compiler would generate (either in-line or by function calls) the protection checks that the hardware is missing.1.13 Give two reasons why caches are useful.What problems do they solve? What problems do they cause? If a cache
30、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 data, and the components perform transfers at differing speeds.Caches solve the t
31、ransfer problem by providing a buffer of intermediate speed between the components. If the fast device finds the data it needs in the cache, it need not wait for the slower device. The data in the cache must be kept consistent with the data in the components. If a omponent has a data value change, and the datum is also in the cache, the cache must also be updated. This is especially a problem on multiprocessor systemswhere more than one process may be accessing a datum.Ac
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1