13.07.2015 Views

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

An Operating Systems Vade Mecum

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

254 The User Interface Chapter 7processes at the same time is just as convenient for the mainframe user as for the hobbyist.It is true that small home computers currently do not have the main or secondarystorage needed to provide large-scale fancy services. Nontheless, the trend toward bitmappedgraphics, multiprogramming, and well-designed command languages is beingfelt even in these machines.We have described the command interpreter as a single entity used for specifyingprocesses to be run and their environments. As we have seen, any interactive programrequires some form of command interpretation. Unfortunately, each program usually hasits own command language and its own peculiarities. Even the command used to terminatea program is often different for each program in the operating system. It is notclear whether this chaotic situation is due to the unorganized way in which utility programshave been designed or whether the operations performed by each utility are uniqueand require unique syntax.Several attempts to alleviate this chaos have shown some success. One direction isto provide a subroutine package that each interactive utility may use to provide a uniformstructure for the command language. For example, Tenex provides a package ofcommand-completion subroutines. Machines with bit-mapped screens can providemenu-manipulation packages. <strong>An</strong>other direction is to provide exactly one commandinterpreter program. Each utility specifies to the command interpreter the commands thatit is willing to accept and their structure. Integrating all interactive programs by a commoncommand interface is related to integrating all structure editors by a common interface.5 FURTHER READINGGood’s article (1981) presents a clear description of the desired characteristics of a commandinterpreter. It has an extensive bibliography that can guide you to other literatureabout command interpretation. Kernighan and Pike (1984) have written an extensiveintroduction to the Unix command interpreter and the Unix environment in general. Onedescription of a window package can be found in the paper by Meyrowitz and Moser(1981). <strong>An</strong>other window package intended for use in a multiple-process environment hasbeen described by Lantz and Rashid (1979). A number of integrated programmingenvironments have been built, including the Cornell program synthesizer (Teitelbaum etal., 1981) and the Pascal-oriented editor (Fischer et al., 1984). <strong>An</strong> extremely fancy textformatting program, TeX, is described by Knuth (1984). One example of the attempt tounify all program interaction under the aegis of editing is the recent thesis by Dewan(1986).

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

Saved successfully!

Ooh no, something went wrong!