Group Control System

Group Control System (GCS) is an operating system made by IBM, meant to run as a guest of VM. GCS is an integral component of the discontinued VM/SP (since VM/SP 4), VM/XA SP, VM/ESA and current z/VM IBM System product offerings.

Overview
GCS's purpose is to provide an environment to run some specific OS/MVS-based applications and networking middleware under VM. To this end, GCS provides a limited simulation of the OS/MVS APIs. While CMS, the usual VM guest, already has OS simulation, it is not extensive enough to run some applications such as VTAM.

Specifically, GCS provides OS multitasking support. In order to be able to spread the load over several virtual machines, GCS also implements a notion of group where each group member virtual machine can interact with one another.

To implement this, GCS uses several techniques:
 * A writable shared segment
 * IUCV communications between virtual machines
 * A recovery virtual machine, designed to clean up locks in the shared segments when virtual machines unexpectedly leave the group

GCS is not designed to be a multi-purpose user operating system such as CMS. For example, it does not allow for file editing.

Examples of programs designed to run under GCS are:
 * VM/VTAM : The VM implementation of the VTAM stack
 * RSCS : The Remote Spooling Communication Subsystem, which, when associated with an instance of VM/VTAM, can use SNA resources to communicate with other SNA/NJE hosts
 * NETVIEW : A networking monitoring service