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.

Distributed operating systems 309let one machine handle all the devices and to let the other execute processes. <strong>An</strong>otherapproach is to treat the machines equally and let devices interrupt whichever machinewill currently allow interrupts. Under this approach, an idle machine waits until there isa process on the ready list, and then it executes that process. All data structures that areshared by several machines, such as the ready list and device-request lists, must beguarded in regions of mutual exclusion.Instead of modifying an existing operating system, one may design a new operatingsystem with inter-process communication as the primary structuring tool. We willdiscuss this approach later when we deal with multicomputers.3.2 Local-area networksInstead of upgrading the current machine to a faster model or to a multiprocessor, manyinstallations choose to buy an independent new computer. If the new computer is of thesame type as the old one, the same operating system can be run on the new one, andsoftware developed for the old one will run on the new. If the new computer is different,it will usually have a different operating system. Users will have to learn the peculiaritiesof the new system and may have to modify their software extensively.The agony of transporting programs to the new computer can be mitigated by connectingthe computers by a communication device. A user who has an investment insoftware on the old machine might still be able to submit jobs to that machine across thecommunication device from the new machine. The results of the jobs can be shippedback to the new machine and stored in its file system. This style of computing is calledremote job entry.As the installation purchases more computers, they are added onto the network ofmachines either by direct connection to some of the machines already there or by a connectionto a shared communication device, like an Ethernet. Historically, each installationthat built such a local-area network would develop its own protocols for intermachinecommunication. Later, manufacturers developed their own protocols. Forexample, Digital Equipment Corporation has a protocol known as DECnet for interconnectingits machines. More recently, international standards have been designed forinter-machine protocols. These standards describe a number of distinct levels in order topromote modularity. In particular, the following levels can be distinguished:Host-to-line level: Defines the meaning of various wires and what voltages theyshould have.Host-to-switch level: Defines how acknowledgements are generated and whatparts of a message contain routing and sequencing information.Host-to-host level: Defines how connections are built, used, and destroyedbetween two computers.Process-to-process level: Defines how individual processes request and provideservices. Certain standard services (like the Finger server) have protocols definedat this level.

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

Saved successfully!

Ooh no, something went wrong!