THE multiprogramming system
THE is an early computer Operating System, which was designed in 1968.
THE was designed by Dijkstra who had some of his students help with the development, it was historically significant as it used the concept of layers as a structure.
Layer 0: was responsible for the multiprogramming aspects of the operating system. It decided which process was allocated to the CPU. It dealt with interrupts and performed the context switches when a process change was required. This is the lowest level.
Layer 1: was concerned with allocating memory to processes.
Layer 2: deals with inter-process communication and communication between the operating system and the console.
Layer 3: managed all I/O between the devices attached to the computer. This included buffering information from the various devices.
Layer 4: was where the user programs were stored.
Layer 5: was the overall control of the system (called the system operator)