Os Unisys
Os Unisys
HISTORY:
While both EXEC I and EXEC II were provided for the unit
processor 1108s, it was clear that the two should be merged to
provide a true multi-programming system with the ease of use and
external appearance of EXEC II. Furthermore, the multiprocessor
1108s needed an operating system. This new operating system was
EXEC 8, a name sometimes written as EXEC VIII. The
specifications for it were drawn up in December 1964, and work
began in May 1965. The announcement of EXEC 8 in 1966 was
greeted with skepticism by Datamation, which had seen many big
software fiascoes by other computer companies: “A step towards
the quicksand: Univac, which has been doing well with about the
only working large-scale software, joins the mañana crowd with a
new operating system for the 1108.” At first, Datamation had it
pegged correctly: the initial versions of EXEC 8 did not work
very well, and in 1967 Sperry Rand had to give one of the 1108s
to NASA for free as a penalty for missing contract deadlines.
The situation did improve. The University of Maryland installed
its 1108 in October 1967 and by February of 1968 was controlling
three remote 1004 computers and six teletype time-sharing
terminals under EXEC 8. In 1969, the president of Computer
Response Corporation, a service bureau with an 1108 in
Washington, could say of EXEC level 23.25: “We’re satisfied with
the way it’s handling our workload.” 3 However, EXEC 8 wasn’t
fully settled down until 1970.
The first was the use of plated wire memory. Plated wire
had already been used in the 9000 series, but it was too
expensive to use for all the memory needed in the 1110.
Therefore, the 1110 was designed to have a relatively small
amount of “primary” memory using plated wire and a larger amount
of “extended” memory using core. The plated wire memory had a
read cycle time of 300 nanoseconds and a write cycle time of 500
nanoseconds; it came in cabinets of 65,536 words and up to four
cabinets could be used in a full system. The core memory had a
cycle time of 1500 nanoseconds and came in 131,072 word cabinets,
with a maximum of eight cabinets (1,048,576 words) on a full
system. Elaborate algorithms were added to EXEC 8 to move
programs between primary and extended memory depending on their
relative compute to I/O ratios. The processor base addressing
registers were expanded to handle 24-bit addresses, and the
number of registers was increased from two to four so that a
program could have four banks based at one time.
The 1100/80 was the first 1100 to use cache memory. (IBM
had introduced cache memory on its 360/85, announced in 1968).
This was a relatively small amount (maximum of 16,384 words) of
very fast (45 nanosecond access time) memory in a separate module
that could be accessed by any processor in the system. On any
reference to memory, the hardware would first check to see if the
request could be satisfied from cache; if not, eight words at the
main memory address would be read into cache and then the
requested item passed on to the processor. The use of cache
memory and faster components made the 1100/80 about twice as fast
as the 1110. The original 1100/80 could have one or two
instruction processors, one or two input-output processors, and
four million words (4 MW) of memory. The later version (called
the 1100/80A) could have up to four of each type of processor.
The 1100/80 introduced industry standard byte- and block-
multiplexor input/output channels. The 1100/80 was first
delivered in 1977 and was a very successful product: over 1,000
processors were eventually delivered.
DESIGN GOALS:
OS DESIGN:
CPU SCHEDULING:
MEMORY MANAGEMENT:
The 1100/2200 series was late to true virtual addressing. The
earliest systems used a mechanism called banks which had evolved
from simple memory performance desires. In the earliest machines
memories consisted of multiple banks which could be accessed in
parallel and it was desirable to have instructions in one bank
and data in another so that a single instruction could be
executed in one machine cycle. Because memory was the most
expensive and limited part of the system, UNIVAC software (e.g.,
compilers) and many customer applications were written with re-
entrant instruction banks that could be shared by multiple jobs.
There is one level of hierarchy. Some files are what are known as
"Program files" contain elements which are usually program
modules. Elements are distinguished by name and type. For
example, it is quite possible to have at least 3 elements in a
program file with the same name: Mainprog a COBOL text module,
Mainprog a compiler output module, and Mainprog an
executable. Text modules are even sub-typed by the language so
that build routines know which compiler or other program to call.
All files, including program files, are treated the same by the
low-level I/O system. You specify the file name, file-relative
offset of the start of the area, and the length of the area. All
access methods are provided by libraries, not the OS, for most
standard files.
The OS does provide one set of built-in access methods. These
are all variants of fixed record size, random access files. They
include record locking and full journaling support. This is used
mostly by the most demanding transaction environments for the
highest performance.
Very few sites are using the boom position optimization anymore
as they all have some form of cache disk. With a cache boom
optimization doesn't work. The computer can't even tell which
requests are going to cause cache misses
and hence result in potential boom movement. However, the high-
end cache subsystems do boom optimization in their own
algorithms.
IN A NUTSHELL:
When he arrived, he studied the code for a while and then told us
that he could clearly see that whoever designed the dispatcher
had no understanding of queuing theory. The original designer was
a little miffed but had to admit it was true. The design was all
empirical. When our new designer wrote up his first paper on the
design approach, it started off pretty much as "...assuming an
exponentially distributed arrival rate of activities at each
priority level..." That didn't last through the first design
review as other designers pointed out that arrival rates were not
smooth or well distributed in any really predictable
sense. Instead they would show up in bursts of very different
sizes and durations at different times of the day. Huge spikes
often occurred first thing in the morning, just after lunch, and
at the end of the day but they would be different sets of
transactions at each point in many cases. The patterns were also
very different at different customers. Some ran batch all day and
some only overnight. Others had timesharing which showed usage
patterns related to the work day but others didn't allow
timesharing except for minor administrative work.
1
Richard J. Petschauer, “History and Evolution of 1100/2200 Mainframe Technology” , USE Conference
Proceedings, Fall 1990.
2
Draft chapter by Gregory E. Mellen on noncommercial systems and Robert E. McDonald Deposition (July 16-July
18, 1974), both in the Sperry UNIVAC Archives, Hagley Library, Wilmington, Delaware; Michael J. Muolo, A War
Fighter’s Guide to Space (Maxwell Air Force Base: Air University Press, 1993); Nike-X DPS Machine-Oriented
Programming Manual (1966).
3
Datamation: September 1966, 19; October 1967, 135; March 1968, 131; June 1969, 149.
4
Burroughs Indian Wells Conference, typewritten transcript, n.d. in the Burroughs Corporation Records (CBI 90),
Charles Babbage Institute, University of Minnesota; Datamation, August 1968, 12.
5
George Gray, “The First Time Ever I Saw an 1108", Unisphere, January 1995, 45.
6
David L. Boslaugh, When Computers Went to Sea (Los Alamitos, CA: IEEE Computer Society Press, 1999) 358-
361; AN/UYK-7(v) The Next Generation, n.d., Sperry UNIVAC Archives, Hagley Library.
7
Gray, “The First Time Ever I Saw an 1108", 44.
8
Datamation, October 15, 1970, p.78; Memo on Vendor Selection, June 19, 1968, R.E. McDonald Files, Sperry
UNIVAC Archives, Hagley Library.
9
Barry R. Borgerson, M.L. Hanson, and Philip A. Hartley, “The Evolution of the Sperry Univac 1100 Series: A
History, Analysis, and Projection” Communications of the ACM, 21 (January 1978) 32-33 and Richard J. Petschauer,
“History and Evolution of 1100/2200 Mainframe Technology” USE Conference Proceedings, Fall 1990.
10
Datamation, January 1, 1971, 58 and January 1972, 7.
11
Bruce Alper, “Experience with CTS” USE Technical Papers, Spring Conference, New Orleans, Louisiana, March
18-22, 1974.
12
Opportunities and Threats Through 1975 and Beyond (S.W.O.T. Report), May 1, 1969, Sperry UNIVAC Archives,
Hagley Library.
13
Gray, “The First Time Ever I Saw an 1108", 44.
14
USE inc., Site Status Reports, February 1990.