GKS defines the concept of an abstract graphical workstation which provide the logical interface through which the application program controls the physical devices. A workstation can have one display surface and/or a collection of logical input devices. Thus, a particular interactive workstation may belong to one of three classes: Output-Only, Input-Only, or Input-Output. (There are a further two classes of workstation: Metafile-Input and Metafile-Output.) GKS allows several workstations to be open simultaneously, for example, one for an interactive graphics terminal and one for a metafile or hardcopy device. The actual maximum number of simultaneously open workstations is installation dependent; in the GTS-GRAL implementation it is set to 15.
GKS allows the appearance of output primitives to vary between workstations in order to take advantage of their differing capabilities. However, it is possible to inquire at run-time what the actual capabilities are, and to design one's code appropriately. The inquiry functions are too numerous to list in this Primer, and the reader is referred to one of the texts in the bibliography.