The term open systems has become a popular description of the idea that computers should be able to interact and share resources. The idea is made workable by a number of formal and informal standards to assure that anything, be it printer, disk drive, X terminal, or even workstation from one manufacturer, works with everything else from other manufactures. That being the case, once machines can communicate and share data, a higher level of interconnection becomes possible in which you move your computing among different systems, using each for what it does best. Further, when you sit down at a terminal connected to any open systems machine, the interface you see should look much the same. Ideally the human-machine-machine interface should be seamless; all of your files should be available on all machines without the need to move them, and all of the commands with which you are familiar should be available on all the machines.
An actual example of this seamless computing is the following. A user, anita, develops a simulation program on her desktop workstation. Once the program is running, anita wants more computing power. So from the workstation she submits a large batch job to a central, batch queue manager. The queue manager reads the request, which includes the types of machines and memory requirements for the job, and finds an appropriate machine on which to run the job. A key point here is that the queue manager finds the machine for anita and watches after her job and its output without anita having to know or care where the job is actually running. In the meantime, anita can view the progress of her job from the local workstation since the remote machine is reading and writing to the same files that the job would if it were running locally.
Once the job is completed, or perhaps even while it is still executing, anita may want to view and print the output in graphical form. Since fast graphics and color printing require expensive hardware, she goes to a visualization laboratory to see the data in graphical form. Once there, she logs onto a graphics workstation and again finds the same files since the queueing manager is reading and writing just as it did on her desktop workstation.
In this example, the user and the user's program were able to move from machine to machine and find the same files and environment. This is because all of the machines used the same physical hard disks to store the user's files. When possible, given differences in workstations, the machines also have the same commands and user programs installed. Since each machine then presents the same image to the user, we say this is a single system image for the site. Most of this magic is made possible by using remote file systems like NFS or AFS that are discussed below.