13.07.2015 Views

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Perspective 317may be excessive.Either the server process must pass its device commands to the kernel to pass on tothe device, which is expensive, or it must have a means of submitting such requestsdirectly. If device registers are used, the server must have access to those registers,but not to any others that do not belong to this device. If channel programs areused, the server must be given the privilege to start channel commands. Mostcurrent hardware is incapable of main-store mapping that has a fine enough grainto allow access only to the registers of a single device. Similarly, it is impossibleto allow some channel commands and not others purely by hardware support.Therefore, the server process will have privileges beyond what it needs, and a maliciousor erroneous server can do damage.One challenge under the communication-kernel approach is to write managers thatcan survive hardware failures. In a multicomputer, a single manager may be distributedover several servers, which can replicate data about the state of the resource. A clientmight make requests of any of the servers. The others need to be informed aboutchanges to shared data so that if a server should fail in the middle of a request, the survivingmembers of the team agree about the state of the resource. Such agreement requiressophisticated communication protocols. A weaker form of reliability partitions theresource into disjoint chunks and assigns a separate server to each chunk. For example, afile hierarchy can be partitioned into subtrees, each of which is managed by a differentserver. Failure of a disk (or its controlling computer) will affect only files stored there.Unaffected files can still be accessed during the failure. A still weaker form of reliabilitycan be provided by a checkpoint operation, which copies the state of a process (includingits virtual space) either onto disk or to another process. If there is a failure, the operationsof the failed process can be restarted from the checkpoint.5 PERSPECTIVEIn this chapter, we have touched on a number of issues that are the subject of activeresearch. This research is the result of several sources of pressure.Computers always become saturated eventually.New technologies, particularly the Ethernet, have made it inexpensive to connectcomputers together.Workstations that have extensive computing power are becoming relatively inexpensive.Communication is necessary for networks of computers to co-operate with eachother.Standards make it easier to expand facilities without requiring retraining of usersand reimplementation of programs.Some problems are too expensive to solve on standard machines. As computersbecome faster, users’ expectations become greater, with the result that there willalways be a demand for increased computational power. The only hope is to build

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!