An ancestor of the Internet was born right here. 1966: Computing frontier. Armed with a new IBM 370 mainframe but no operating system, College programmers began to develop the Michigan Terminal System (MTS), one of the world's first computer networks and one of the longest lasting. MTS was a pioneering system that was in several ways a direct ancestor of the Internet, offering early forms of email, file-sharing and conferencing. Housed at first in the North University Building (NUBS), then at the Computing Center on North Campus, MTS spawned the MERIT network (a collaboration of U-M, MSU and Wayne State), which led in turn to the creation of NSFNET and the Internet. MTS itself remained central to U-M computing for more than 30 years—a remarkably long life for a computer system finally shutting down for the last time on May 30, 1997.

Germ of Truth

The initial development of MTS was done at the University of Michigan in the late 1960s.

When UM's IBM S/360-67 mainframe computer was installed in January 1967 there was no time-sharing operating system available to run on it from IBM or anyone else.

MTS and the MERIT Network were both developed in the mid to late 1960s and MTS at UM was used to develop software for MERIT's PDP-11 Communications Computers (CCs).

MTS did provide some of the same services that are provided by today's Internet.

MERIT, together with its partners, IBM, MCI, the State of Michigan, and later Advanced Network and Services (ANS), did play a large role in the creation and operation of NSFNET from 1987 to 1995. NSFNET was the forerunner of what became today's Internet.

MTS was a pioneering system and it did have a remarkably long life.

Facts

MTS development started in 1966, not 1963.

MTS didn't run on an IBM S/370 mainframe at UM until 1975. In 1966 UM's CONCOMP project had an IBM S/360-50 mainframe computer that was used for early MTS development. The IBM S/360-67 (halfduplex) that would run MTS was installed at the UM Computing Center in the North University Building in January 1967.

The initial development of MTS was done by staff at the UM Computing Center, not by programmers from the College of Engineering. The Computing Center reported to UM's Vice President for Research. The College of Engineering reported to UM's Vice President for Academic Affairs. Students from the College of Engineering worked for the Computing Center, but so did students from other UM schools and colleges. A few faculty members from the College of Engineering had joint appointments at the Computing Center, but so did faculty from other UM schools and colleges. Later development of MTS was done at each of the eight universities that ran it.

MTS is a time-sharing operating system, not a computer network.

MTS did not spawn the MERIT network. The idea for what became MERIT arose in 1964 and MERIT was incorporated in 1966. MERIT was and remains a non-profit corporation with its own Board of Directors. MERIT was and remains separate from, but administratively hosted by, the University of Michigan. In the 1960s and 70s MERIT was part of UM's Institute for Science and Technology (IST). It was not until the 1980s that MERIT was moved administratively within the Computing Center.

Conclusion

While the spirit of what was written in the Michigan Today article is correct, the article gets many of the details wrong.

Myth: MTS was the first system to use virtual memory

The Michigan Terminal System (MTS), along with Multics at MIT, were the first operational virtual memory operating systems in the world.

Germ of Truth

MTS was the first system to use virtual memory on IBM S/360 hardware (fall 1967).

Facts

Several other systems including the Atlas system, the Burroughs B5000, and the Rice Institute Computer were using virtual memory before MTS (or Multics), although some of these early systems might not be considered "operational" in the sense of being used by lots of people or supporting large numbers of users.

Conclusion

Myth: MTS was the first time-sharing multi-user system

MTS (Michigan timesharing system) was the first time-sharing multi-user system

Germ of Truth

MTS was an early time-sharing multi-user system.

It is very likely that MTS was the first time-sharing system to run on IBM S/360 mainframe computers.

MTS was the first time-sharing system to use virtual memory hardware on IBM S/360 mainframe computers.

Facts

MTS is not the first time-sharing multi-user system. CTSS (1961), JOSS (1963), SDC/Q-32 (1960s?), DTSS (1963), TOPS-10 (1964), and Berkeley Timesharing (1964-67) all came before MTS (1967), although some of these systems were quite specialized and may not qualify as general purpose time-sharing systems. ITS (1967), CP-67 (1967), OS/360 with WYLBUR (1967), ORVYL (1968), TSS/360 (1968?), Multics (1969), TENEX/TOPS-20 (1969), Unix (1969), OS/MVT with TSO (1971) and many others came later.

Germ of Truth

Early versions of what would become MTS were known as LTS. The initial "L" in LTS and in LLMPS stood for "Lincoln".

Facts

LTS was the work of staff at the UM Computing Center and not at Lincoln Labs. The name LTS wasn't used for very long before it was changed to MTS.

MIT's Lincoln Laboratories did develop something in the 1970s with the name Lincoln Terminal System, but it was unrelated to MTS or to UMMPS. This LTS was a system for delivering instructional materials using a terminal with a viewing
screen, audio speaker, and a keyboard for student responses, all connected to a central minicomputer programmed to monitor
student progress.

While Bruce Arden was an Associate Director at the UM Computing Center during this time and was involved in these issues, Bruce says that the two staff members (Mike Alexander and Don Boettner) really worked for Robert Bartels, the Center's Director. Frank Westervelt was another Associate Director at the Computing Center and Director of the ARPA funded CONCOMP project. Bartels and Westervelt contacted Lincoln Labs. to obtain LLMPS and pushed the effort to develop LTS/MTS forward.

... loaded it [LTS] on the university's existing IBM 7090 so that they could offer some semblance of a time-sharing service.

Germ of Truth

Some of the early work done on S/360 computers at the UM Computing Center was to support the continued operation of the IBM 7090.

There was a S/360 simulator that ran on the 7090 (Suppak), but neither LTS nor MTS were run under it. Working directly with the IBM S/360-50 computer that was available from the COMCOMP project and later the IBM S/360-67 were much more effective ways to do LTS/MTS development and debugging.

Facts

MTS and UMMPS were only designed to work on the IBM S/360-67 and later on IBM S/370 computers. None of MTS, LTS, UMMPS, or LLMPS ever ran on an IBM 7090. Among other problems the 7090 had no terminal connections which made it a poor choice for a interactive terminal system.

UM provided a "semblance of a time-sharing service" on its IBM S/360-67 until September 1967 when software that used the unique virtual memory features of the Model 67 was ready and MTS was able to support a roughly tenfold increase in the number of simultaneous terminal sessions. From that time on MTS provided a real time-sharing service, rather than just a "semblance".

Conclusion

Mostly wrong.

Myth: UMMPS stands for University of Michigan Multiprocessing System or University of Michigan Multiprogramming System

Myth: UMMPS is an operating system

Type II virtual machines have been constructed for the extended machine interface projected by the UMMPS operating system.

Germ of Truth

UMMPS is an important part of the MTS operating system.

Facts

Because UMMPS is what today would be called a microkernel, by itself it doesn't include everything necessary to be considered a complete operating system. MTS, which includes UMMPS, is a complete operating system.

In late 1968, MTS was the only large-scale timesharing system to be in regular, reliable operation in the US.

Germ of Truth

MTS was in regular, reliable operation at UM in late 1968.

Facts

MTS was in regular, reliable operation for use by students, faculty, and staff at UM from the fall of 1967, a year earlier than claimed in Akera's book and article. This was before ORVYL, CP/CMS, TSS/360, Multics, or Unix. But there were other time-sharing systems in use in the U.S. before the fall of 1967, including CTSS, JOSS, SDC/Q-32, DTSS, TOPS-10, and Berkeley Timesharing. Some of these early systems were quite specialized and might not be considered true general purpose time-sharing systems. The truth of this myth depends on what one considers "time-sharing", "large-scale" and "regular, reliable operation".

Conclusion

Mostly and possibly entirely true.

Myth: Michigan's time-sharing service disintegrated and shifting to MTS was a recipe for disaster

With the technical disintegration of Michigan's time-sharing system came the social disintegration of the various forms of expertise that were bound together only temporarily during the course of this work.

In the end, this [the successful development of a virtual memory time-sharing operating system, MTS, in the late 1960s] did not save the University of Michigan Computing Center’s foray into computer science and systems programming research. Academic computing demand and usage continued its exponential ascent during the late 1960s; consequently, the computing center’s main computer was always overloaded. Shifting such a system to a timesharing service was a recipe for disaster. At Michigan, and no doubt elsewhere, users complained either that they had no use for such a service, or else about the service’s poor performance. The university created a Committee on Computer Policy that quickly determined that it was necessary to disintegrate research and service. They argued that it was wrong to require computer users to subsidize systems programming research within the computing center. Work in computer science did of course continue at Michigan. However, the initiative shifted to other units on campus, most notably to the Department of Computer and Communication Sciences, a department created in 1965.

Germ of Truth

The IBM 7090 system at UM in 1967 and 1968 was certainly overloaded with long turnaround times for batch jobs which didn't make anyone happy.

The switch from the 7090 to MTS was a big change, required a lot of reprogramming for some users, and some users were very unhappy about it.

Upgrading MTS to support ever larger numbers of users with increasingly
demanding computing problems was a constant struggle for much of the
time that MTS was in use at UM. In spite of more or less constant upgrades to the hardware and refinements of the software there never seemed to be enough
processing power, real memory, disk space, high speed printers, terminals, modems, or computing dollars
to meet everyone's needs. This says as much or more about the growth in demand for computing then it does about time-sharing or MTS.

There was always tension between providing computing services and doing research and development work at the Computing Center.

There was always tension between centralized and decentralized approaches to support educational and research computing for the students, faculty, and staff at UM.

There were always calls to run a vendor supported system such as OS/360 both from within and from outside UM.

Facts

There was no "technical disintegration of Michigan's time-sharing system". There was no "disaster" associated with the shift to time-sharing and
MTS at UM. Most UM computing users were happy with the switch
and the improvements that interactive computing brought about. MTS was in use at UM for 30 years (1967 to 1997). UM continued to invest in MTS and the Computing Center. There were continual upgrades to the hardware and software during this time. In 1971 UM built a new building
on North Campus to house the Computing Center.

In the spring of 1967 before MTS was using virtual memory, it could
support 5 terminal sessions and a few batch jobs. At the end of 1968
using virtual memory and running on a two CPU S/360-67 MTS was
supporting roughly 70 terminal sessions and several batch jobs. During
the 1990s MTS at UM was supporting more than 600 terminal sessions as well as a
number of batch jobs. At its peak there were more than 60,000 individual MTS user ids assigned at UM.

During the late 1960s and 1970s MTS was adopted as the primary operating system for the academic
programs at seven universities in the U.S., Canada, and England. A few sites used MTS for administrative and/or library computing as well. Dropping the use of sanctioned IBM system software in favor of MTS were very bold, even risky, steps for universities to take at this time. Each of these universities continued to use MTS until the 1990s (the last MTS site, RPI, shutdown in 1999).

If there was any "social disintegration", it was due to the recognition that the field of computing was a legitimate topic for university education and research and the resulting creation of new or strengthened departments and programs within UM's traditional academic units to work in the new field. If anything, what occurred was a return to the traditional roles of and with the traditional tensions between the academic and service units of a university. This was coupled with the on-going tensions that often exist between centralized and decentralized approaches to anything that takes place at a large university. Several of the most senior technical staff members continued to work for the Computing Center for years to come, some until their retirement after more than 40 years of service to the University. A few are still working for UM today (2010).

The Computing Center was always a service unit, it was never an academic unit. It did not teach for credit courses, or grant degrees or tenure. However, several PhD students received support from the Computing Center and did research on and wrote their theses about topics related to time-sharing, virtual memory, interactive and other aspects of computing. And several faculty from UM's schools and colleges, including the Department of Computer and Communication Sciences, held joint appointments at the Computing Center.

Computing Center staff continued to upgrade and enhance MTS for years to come, mostly to provide the computing services that were demanded by UM's students, faculty, and staff. However, the dividing line between this work and "systems programming research" is not clear. Certainly some of the work done by the staff of the Computing Center served both purposes. A number of papers by Computing Center staff were published in academic and professional journals.

Because of MTS and the IBM S/360 and S/370 architecture that it used, it was not until the 1990s that UM students, faculty, and staff were forced to go through another major shift to a new computing architecture similar to the switch from the 7090 to MTS in 1968. Of course the gradual move to personal computers, workstations, and distributed computing at UM started earlier, in the mid-1980s. And as one would expect different UM students, faculty, and staff were both happy and grumpy with the switch away from MTS to new methods of computing when it was finally forced on them in 1996.

In 1977 when Robert C. F. Bartels, the first Director of the Computing Center, retired, Geoffrey Norman, the retired UM vice-president for research, is quoted in the Ann Arbor News, saying:

Bartels, Bruce Arden, and Franklin Westervelt developed a time-sharing system which "greatly influenced the supplier's hardware and contributed greatly to the future of computing at Michigan and in the nation as a whole."

"Bartels has helped keep the U-M a leading research institution."

"Bartels has maintained "a very delicate and elegant operation, steering a very careful path between costs and resources."

"The people he [Bartels] has trained now head computing centers at other universities."

In an August 25, 2004 letter marking the 45th anniversary of the creation of the Computing Center, University of Michigan President Mary Sue Coleman wrote to Robert Bartels saying among other things: "I had heard in great detail about the leadership of the University of Michigan Computing Center in the early days of electronic computers, and especially the innovation and creativity you and your staff showed in becoming the flagship university Computing Center in the 1950's, 1960's, and 1970's."

Conclusion

Mostly incorrect. Using the words "disintegration" and "disaster" gives an unfair impression of the situation surrounding MTS and the Computing Center at UM in the late 1960s and early 1970s.

Myth: Jeff Berryman wrote "The Paging Game" while working on Project MAC at MIT

The article "The Paging Game" (sometimes called "The Thing King" or "The Crating Game") is widely referenced on the Internet and in several books. It is often attributed in a fashion similar to the following which appears in Peter van der Linden's 1994 book, Expert C Programming: Deep C Secrets:

Some Light Relief—The Thing King and the Paging Game

The section that follows was written by Jeff Berryman in 1972 when he was working on project MACand running one of the early virtual memory systems. Jeff somewhat rue-fully comments that of all thepapers he has ever written, this one is the most popular and widely read. It's as applicable today as itwas twenty years ago.

The Paging Game

This note is a formal non-working paper of the Project MAC Computer Systems Research Division. Itshould be reproduced and distributed wherever levity is lacking, and may be referenced at your ownrisk in other publications.

Germ of Truth

Jeff Berryman did write "The Paging Game".

He has commented that "I've always thought it was funny that the only publication that ever got
me any fame at all in the computing field was completely facetious."

It is a good idea to distribute the article "whereever levity is lacking".

Facts

Jeff Berryman wrote "The Paging Game" sometime between 1972 and 1974.

He was working at the University of British Columbia Computing Centre when the article was written.

Neither Jeff nor the article had any association with Project MAC at MIT.

A copy of the article was reprinted starting on page 2 of the 19 June 1974 issue of the University of Michigan's Computing Center Newsletter (Vol.4/No.7) under the heading "Paging" and "The Crating Game". This issue of the U-M CC Newsletter is available online in the Hathi Trust Digital Library (http://hdl.handle.net/2027/mdp.39015002922196?urlappend=%3Bseq=340). The article starts out with this note:

[Editor's Note: At the request of many users as well as our own staff
members, the following article is reprinted from the University of British
Columbia Computing Center Newsletter. It was written by J. Berryman. and
appeared most recently In its entirety in Vol. 6, Number 2, February 1974.
Minor changes have been made in keeping with the minor differences that
exist between UBC's Computing Center and our own.]

Conclusion

Myth: MTS requires a special version of the IBM System/360-67 to run

No, MTS probably won't run under Hercules - I looked up MTS using a
google search, and it seems that there was an additional operation code
that the folks that created MTS either did themselves or had IBM
implement for switching between pieces of MTS, user programs, etc.

Germ of Truth

What became the IBM System/360 Model 67 was originally designated the Model 65M or 66, a modified version of the Model 65. Both the Model 67 and the Model 65 were standard product offerings from IBM. There were RPQs for the Model 67 that added new instructions such as Search List (SLT), but they were not required to run MTS.

Facts

No new non-standard operation codes were required to run MTS on the S/360-67, S/370 and/or compatible systems. MTS ran on a standard System/360 Model 67 and runs on standard System/370 and compatible systems as well as under Hercules and other emulators. MTS used the Supervisor Call (SVC) instruction and later the Monitor Call (MC) instruction to switch between system and user modes (unprotected and protected modes), but these are standard instructions on System/360 and System/370 computers (SVC on the S/360 and SVC and MC on S/370). The Search List and other non-standard instructions that had been available via RPQs were only used in MTS system software under conditional assembly and were optional. These instructions were emulated in the supervisor when machines that didn't include the instructions were acquired. The Branch on Program Interrupt
(BPI) instruction was a pseudo instruction implemented in software by
the MTS Supervisor, UMMPS, using a standard NOP instruction, so nothing special or unique to MTS was required in the hardware.