(By Brian Millis – November 2003)
Executive
was fundamental to the 1900 range concept.
Together with the hardware, Executive provided the run time environment
to applications and other software. It
managed short-term time sharing between programs and peripherals and between
programs on multiprogramming systems. It
carried out peripheral transfers for programs, hiding hardware details and
managing the real time interruptions. It
controlled program use of store, inter-program protection and the switching
between programs. On the early small
systems Executive even provided by software some of the more complex
instructions such as multiplication and division.
Executive
was not one program. Many widely
different designs were created over the life of the 1900 series, ranging from
that enabling a single user program to be controlled by handswitches on a small
1901 to the later large multiprogramming overlaid Executives. Further, to minimise its use of core store,
the specific Executive for a particular machine was tailored to that specific
configuration.
The
range interface was defined as that provided by hardware and Executive
together. This enabled program
portability across the range to an extent unique at the time – and in some
respects not even achieved today. The
same program would run unchanged on any machine and under any 1900 operating
system – from the smallest machine running under Executive alone to the largest
running under the powerful George 3 or George 4 operating systems. (This contrasted with the IBM 360 series
where the interface was defined at the hardware level and some program changes
could be required when moving from one regime to another.) The use of the “extracode” technique was a
key factor: instructions such as those used to drive peripherals would appear
to a user program as part of the order code but in fact be carried out by
software in Executive.
Executive
was managed as part of the hardware, the development teams reporting to the
hardware management and support being provided by Customer Engineering
Services. The position of the range
interface and the development teams being together enabled different mixes of
hardware and software to be created, as appropriate to the specific system
requirement.
Compatibility
of this interface was absolute for a program moving to a system up the range,
or when moving forward in time to a later machine or to a later version of
Executive. Downward compatibility was
also strict for a program not using facilities only available higher up in the
range. Moreover null responses were normally provided for a such facility when
not present- so enabling that to be detected and alternative action taken. Strict compatibility carried through to the
later DME systems, which enabled 1900 software to be run on 2900 machines.
The
interface definition was controlled by a Compatibility Committee which was
formed in 1964 spontaneously between the active parties. There was more
willingness to compromise between designers than is often the case – in part
because the original architecture was imported from outside so no-one's sacred
cow! This committee also controlled
file formats for magnetic media.
Complex
job management on 1900 systems was provided by the George operating systems
which ran on top of Executive. However
Executive provided basic features for loading and starting programs and so a
1900 machine could be used without any George system. This enabled a small machine without any disc
or drum (backing store) to be run without the overhead of a George. It was also invaluable early on in enabling
systems to be delivered before development of the George systems was complete.
George 1 and 2 used the normal user interface to Executive. (Later, on small disc systems George 1 facilities were eventually merged into an Executive variant known as George 1S.) George 3 and 4 systems were much more complex. Here Executive was a smaller core, insulating George and other programs from the hardware. A special interface existed between George and Executive and the two worked together to provide the full range interface to the programs above.