IBM Time Sharing System
TSS/360 is a discontinued early
time-sharing operating system designed exclusively for a special model
System/360 line of mainframes, the Model 67 . Made available on
a trial basis to a limited set of customers in 1967, it was never
officially released as a supported product by IBM. TSS pioneered a
number of novel features, some of which later appeared in more popular
systems such as
VM/CMS . TSS was migrated to System/370
and 303x systems , but despite its many advances and novel
capabilities, TSS failed to meet expectations and was eventually
* 1 Novel characteristics
* 2 Criticism
* 3 User interface
* 5 See also
* 6 References
* 7 Further reading
* 8 External links
TSS/360 was one of the first implementations of tightly-coupled
symmetric multiprocessing . A pair of Model 67 mainframes shared a
common physical memory space, and ran a single copy of the kernel (and
application) code. An
I/O operation launched by one processor could
end and cause an interrupt in the other. The Model 67 used a standard
360 instruction called Test and Set to implement locks on code
critical sections .
It also implemented
Virtual Memory and Virtual Machines using
position-independent code .
TSS/360 included an early implementation of a "Table Driven
Scheduler" – a user-configured table whose columns were parameters
such as current priority, working set size, and number of timeslices
used to date. The kernel would refer to this table when calculating
the new priority of a thread . This later appeared in systems as
diverse as Honeywell CP-V and
IBM z/OS .
As was standard with operating system software at the time, TSS/360
customers (such as
General Motors Research Laboratories
General Motors Research Laboratories ) were given
full access to the entire source of the operating system code and
development tools. User-developed improvements and patches were
frequently incorporated into the official source code.
TSS/360 suffered from performance and reliability problems and lack
of compatibility with
OS/360 , although those issues were eventually
IBM attempted to develop TSS on a very aggressive schedule
with a large staff of programmers to compete with
Multics . By 1967,
it had become evident that
TSS/360 was suffering from the same kinds
of delays as OS/360. In February 1968, at the time of SHARE 30, there
were eighteen S/360-67 sites attempting to run TSS. During the
IBM announced via "blue letter" that
TSS/360 was being
decommitted – a great blow to the time-sharing community. This
decision was temporarily reversed, and
TSS/360 was not officially
canceled until 1971. However,
TSS/360 continued to be quietly
available for a time to existing
TSS/360 customers, as an interim
TSS/360 was canceled,
IBM put its primary efforts into the Time
Sharing Option (TSO), a time-sharing monitor for OS/360. Several other
groups developed less ambitious, more successful time sharing systems
for the S/360-67, notably
CP-67 at IBM's
Cambridge Scientific Center ,
an early virtual machine monitor which evolved into
VM/370 , MTS at
University of Michigan
University of Michigan , and ORVYL at
Stanford University . IBM
also provided the TSS/370 PRPQ as a migration path for existing
TSS/360 customers, which went through multiple releases.
TSS provides users a command-line interface . Users interact with
the command system. The command format consists of Command_Name. The
command name is one to eight characters without imbedded blanks. The
operands are optional depending on the command, and must be separated
from the command name by at least one blank. Multiple operands should
be separated by TAB characters or commas. Command lines can be
continued by typing a hyphen ("-") at the end of the line to be
continued and typing the continuation at the beginning of the next
line. Multiple commands can be written on a line by separating them
with semicolons (";"). Comments are allowed in command lines,
separated from the command with a semicolon and included in single
quotes ("'"). Operands can be either positional or keyword, with the
System commands are divided into seven categories:
* Task management – LOGON, LOGOFF, ABEND, etc.
* Data management – CATALOG, DDEF, DELETE, etc.
* Program management – LOAD, DUMP, DISPLAY, TRAP, etc.
* Command creation – PROCDEF, BUILTIN
* Message handling
* User profile – SYNONYM, DEFAULT, PROFILE, etc.
* Program product language interface – COBOL, HASM, PLIOPT, FTNH,
TSS provided an early implementation of "position-independent code ",
the ability to have different processes run a single copy of an
executable possibly mapped to a different virtual addresses in each
System/360 programs typically contain modifiable data (working
storage) and "address constants " or "adcons" (fields containing the
addresses of code or data). In TSS, virtual addresses differ for each
process running that program. TSS language processors place all adcons
and working storage into a separate section of code called a Prototype
Control Section, or "PSECT". When the program is loaded the dynamic
loader makes a copy of the PSECT and relocates the adcons to reflect
the virtual addresses assigned within the current process, therefore
each user of the program has a unique copy of the PSECT. When a called
program is executed general register 13 contains the address of the
PSECT for the current process; this address is used for all references
to variable data or addresses.
History of IBM mainframe operating systems
History of operating systems
Operating systems timeline
John R. Levine (October 1999). "Chapter 8: Loading and
overlays". Linkers and Loaders. San Francisco:
Morgan Kaufmann . pp.
170–171. ISBN 1-55860-496-0 .
IBM Corporation (August 1976). Time Sharing System Command
System User\'s Guide (GC28-2001-9) (PDF). Retrieved May 2, 2015.
IBM Corporation (April 1976).
IBM Time Sharing System Assembler
Programmer\'s Guide (GC28-2032-6) (PDF). pp. 132–147. Retrieved May
IBM Corporation (1966).
System/360 Model 67 Time Sharing
System Preliminary Technical Summary (C20-1647-0) (PDF). pp. 47–50.
Retrieved May 2, 2015.
* Pugh, Emerson; Lyle R. Johnson; John H. Palmer (1991). IBM\'s 360
and Early 370 Systems. Cambridge MA: MIT Press. pp. 362–265, 596.
ISBN 0-262-16123-0 . Describes the origin and schedule problems of
* Brooks, Frederick P. (1995).
The Mythical Man-Month . Reading MA:
Addison-Wesley. ISBN 0-201-83595-9 . Describes the "second system
syndrome" that affected TSS.