User Tools

Site Tools


plato:architecture:start

Architecture

Overview

This page discusses the components of CYBIS/PLATO and how they work together. It gives some terminology and discusses how the elements of those terms fit together.

This section contains the following topics:

These articles discuss the objectives outlined by the CYBIS Release 2 Goal Configuration.

CYBIS / PLATO Software Architecture

For a narrative see General Data Flow

We will look at the software running in the Cyber 875 Configuration.

To begin, let's look at the NOS2 Console's “B Display” while CYBIS is running:

 NOS2 "B Display"

The Control Points (CP) are numbered in the order configured, they may vary, but in CYBIS Release 2, the following applications are running at these control points. The nomenclature of a control point's application name allows for one or more of any of the control point applications to be running. This ordinal number is expressed by the lower case “n”:

Control Point (CP) Identifier Description
1 IAF (Interactive Facility) Responsible for terminal input and output when communicating with other applications. It is out of scope for this article.
2 NAM (Network Access Method) Responsible for network input and output. NAM is a stardard part of CDC NOS and it is out of scope for this article.
3 MASn MASTOR (Mass Storage Manager) Responsible for disk I/O and other “mass storage” activity.

MASTOR is a layer between NOS and PLATO components and abstracts the rest of PLATO from needing to directly rely on NOS. One could replace MASTOR for one for a different operating system and the other PLATO components should still work on that OS. In fact, one could write a MASTOR which WAS a special purpose OS running directly on hardware!
4 PLAn PLATO (PLATO/TUTOR Executor) Processes lesson binaries.

PLATO is the largest and most complex of the PLATO components. It takes lesson binaries, which are a mix of interpreted code and Cyber machine language and performs the actions specified by the TUTOR language LESSON (program). PLATO places output intended for a terminal into the MOUT buffer in a generalized format. This is the component most people think of first.
5 FORn FORMATER. Takes output from PLA1 and formats it as terminal output. FORMAT takes the content for a terminals MOUT buffer and, depending on the needs of the specific terminal, turns it into the output that terminal understands.
6 PNIn PLATO NAM Interface. Passes output from FORn to NAM and input from NAM to PLATO. PNI for the most part on output is just a conduit through which the data flows on it's way to the terminal.
7 COAn CONDEN (PLATO/TUTOR Lesson Source Condensor) Takes TUTOR source and generates lesson binaries. When a lesson binary for a given lesson is needed and a valid one is not available, CONDEN asks MASTOR for the lesson source. It prepares the lesson binary and writes it to disk where PLATO can find it.
plato/architecture/start.txt · Last modified: 2025/05/04 19:06 by Site Administrator