A system for operating multiple independent terminals of grouped, locally
connected input and output devices through a single graphical user
interface layer running on a computer comprising an event queue module
for receiving each input command from each input device; an event handler
module for receiving the input commands from the event queue module and
directing input commands from specific input devices via corresponding
socket/listeners of the single graphical user interface layer to
corresponding ones of multiple pointers, focuses and client applications
based on predetermined associations between grouped devices and
respective ones of the socket/listeners; and an output module for
directing output commands from each socket/listener to respective ones of
the output devices based on the predetermined associations. A system for
creating multiple independent terminals of grouped input and output
devices connected to and for operation by a single computer comprising a
configuration module for simultaneously providing unique output commands
to ungrouped output devices to cause the output devices to respectively
provide a unique input directive to a user; the configuration module also
for receiving unique input commands from individual ungrouped input
devices, each unique input command corresponding to a respective one of
the unique output directives; and an association module for, in response
to the receiving, commonly associating with a unique group identifier
each of corresponding input and output devices and respective ones of
multiple pointers and focuses.