MUSIC/SP

Last updated

MUSIC/SP
Music SP.png
Example of initial login screen for MUSIC/SP on a Windows XP screen
Developer McGill University
Working stateDiscontinued
Initial release1972;51 years ago (1972)
Marketing targetAcademic computing and the teaching of computer science
Available in English
Platforms S/360, S/370, and 4300-series mainframes
Preceded by RAX

MUSIC/SP (Multi-User System for Interactive Computing/System Product; originally "McGill University System for Interactive Computing") was developed at McGill University in the 1970s from an early IBM time-sharing system called RAX (Remote Access Computing System). [1] [2]

Contents

The system ran on IBM S/360, S/370, and 4300-series mainframe hardware, and offered then-novel features such as file access control and data compression. It was designed to allow academics and students to create and run their programs interactively on terminals, in an era when most mainframe computing was still being done from punched cards. Over the years, development continued and the system evolved to embrace email, the Internet and eventually the World Wide Web. At its peak in the late 1980s, there were over 200 universities, colleges and high school districts that used the system in North and South America, Europe and Asia.

MUSIC was originally designed as a stand-alone operating system but with the advent of IBM's virtual machine facility, VM/370, [3] it became more common to deploy MUSIC as a guest operating system running under VM/370.

History

Over the years the following people contributed to the MUSIC and MUSIC/SP systems. Roy Miller, Alan Greenberg, Wilf Mandel, Dave Edwards, Kevin McNamee, Don Farnsworth (IBM), Dean Daniele (IBM), Glen Matthews, Linda Chernabrow, Frank Pettinicchio, Earl Lindberg, Pierre Goyette, Kathy Wilmot, Simon Fulleringer, David Thorpe, Gerald Ratzer, Harry Williams (Marist College), Dave Juraschek (Northern Virginia Community Colleges), Christian Robert (Ecole Polytechnique), Simone Spiller, Silvino Mezzari, and Mike Short.

Features

File system

The MUSIC/SP file system was unique in a number of respects. There was a single system-wide file index. The owner's userid and the file name were hashed to locate the file in this index, so any file on the system could be located with a single I/O operation. However, this presented a flat file system to the user. It lacked the directory structure commonly offered by DOS, Microsoft Windows and Unix systems. In 1990 a "tree-structured" directory view of the file system was overlaid on this, bringing the system more in line with the file systems that were then available. By default the information stored in the files was compressed. This offered considerable saving in disk space. The file system had a fairly sophisticated access control scheme allowing the owner to control who could read, write, append to and execute the file. It also had the concept of a "public" file which was visible to all users and a "private" file which was only visible to the owner.

Virtual memory

The initial versions of the system provided no support for virtual memory and address translation. Only one active user could reside in core memory at any time. Swapping (to disk) was used to time-share between different users, and a variable-length timeslice was used. Virtual memory support was introduced in 1985. This allowed multiple users to be in core memory at the same time, removed many of the restrictions in the size of the programs that could be run and provided a significant performance improvement. System performance was also improved by pre-loading commonly used modules into virtual memory at startup time where they could be available to all users simultaneously.

Programming languages

The system was designed to support academic computing and the teaching of computer science, so a rich suite of programming languages was available. The system nucleus was written in IBM/370 assembler but most of the native applications were written in FORTRAN. The system supported the Waterloo WATFIV and WATBOL compilers and also provided compilers for Pascal, C, PL/I, BASIC, APL, ALGOL, RPG, and GPSS. The system was missing a command scripting language until REXX was ported from CMS in 1984. Later, in 1986, a complete user interface was written entirely in REXX.

E-mail and the Internet

E-mail was one of the major applications on MUSIC/SP. The e-mail interface initially provided access to local e-mail. As the networks developed, this was expanded to provide access to BITNET and Internet based e-mail. MUSIC/SP did not have direct access to the Internet until 1990, when the University of Wisconsin Wiscnet TCP/IP code was ported to the system, allowing the system to provide access to all Internet services.

Compatibility with other IBM systems

A major feature of the system was its ability to run programs that were designed to run on IBM's mainstream operating system (MVS). This was accomplished using an MVS emulator that intercepted system calls at the Supervisor Call instruction (SVC) level. Most third-party applications ran in this mode. Rather than write their own version of an application, the MUSIC/SP developers would usually start from the MVS version and rebuild it to run in MVS emulation mode. Since the MVS emulation was a small subset of the real thing, the applications generally ran more efficiently on MUSIC/SP.

Other features

One major advantage the system had in educational environments was that through the use of special lines called "control cards" at the top of a file, source files for any supported language could be automatically directed to the appropriate compiler (Fortran being the default), compiled, linked, and executed, (with compilation, linkage, and execution options also specified in control cards) simply by entering the filename on a command line.

A wide variety of terminals were supported as of 1980, including both EBCDIC-based units using IBM-proprietary protocols, and asynchronous ASCII-based units. Since terminals were connected through various types of front-end processors (as per common IBM timesharing practice both then and now), and could therefore function without CPU attention for a considerable amount of time, MUSIC used variable-length time slices, which could, on compute-bound processing, reach a maximum of several seconds per time slice; conversely, if a user filled the output buffer or reached a conversational read, the timeslice would end immediately.

Emulation

The Sim390 emulator contains a demonstration system of MUSIC/SP. It is freely available and runs on Microsoft Windows. [6] The demonstration system will also run under Hercules.

See also

Related Research Articles

<span class="mw-page-title-main">IBM AIX</span> Series of Unix operating systems from IBM

AIX is a series of proprietary Unix operating systems developed and sold by IBM for several of its computer platforms.

IBM mainframes are large computer systems produced by IBM since 1952. During the 1960s and 1970s, IBM dominated the large computer market. Current mainframe computers in IBM's line of business computers are developments of the basic design of the IBM System/360.

<span class="mw-page-title-main">MVS</span> Operating system for IBM mainframes

Multiple Virtual Storage, more commonly called MVS, is the most commonly used operating system on the System/370, System/390 and IBM Z IBM mainframe computers. IBM developed MVS, along with OS/VS1 and SVS, as a successor to OS/360. It is unrelated to IBM's other mainframe operating system lines, e.g., VSE, VM, TPF.

<span class="mw-page-title-main">Mainframe computer</span> Large computer

A mainframe computer, informally called a mainframe or big iron, is a computer used primarily by large organizations for critical applications like bulk data processing for tasks such as censuses, industry and consumer statistics, enterprise resource planning, and large-scale transaction processing. A mainframe computer is large but not as large as a supercomputer and has more processing power than some other classes of computers, such as minicomputers, servers, workstations, and personal computers. Most large-scale computer-system architectures were established in the 1960s, but they continue to evolve. Mainframe computers are often used as servers.

<span class="mw-page-title-main">Hercules (emulator)</span> Multi-platform emulator for mainframe software

Hercules is a computer emulator allowing software written for IBM mainframe computers and for plug compatible mainframes to run on other types of computer hardware, notably on low-cost personal computers. Development started in 1999 by Roger Bowler, a mainframe systems programmer.

<span class="mw-page-title-main">IBM System/370</span> Family of mainframe computers 1970-1990

The IBM System/370 (S/370) is a model range of IBM mainframe computers announced on June 30, 1970, as the successors to the System/360 family. The series mostly maintains backward compatibility with the S/360, allowing an easy migration path for customers; this, plus improved performance, were the dominant themes of the product announcement. In September 1990, the System/370 line was replaced with the System/390.

<span class="mw-page-title-main">Conversational Monitor System</span>

The Conversational Monitor System is a simple interactive single-user operating system. CMS was originally developed as part of IBM's CP/CMS operating system, which went into production use in 1967. CMS is part of IBM's VM family, which runs on IBM mainframe computers. VM was first announced in 1972, and is still in use today as z/VM.

In computing, Interactive System Productivity Facility (ISPF) is a software product for many historic IBM mainframe operating systems and currently the z/OS and z/VM operating systems that run on IBM mainframes. It includes a screen editor, the user interface of which was emulated by some microcomputer editors sold commercially starting in the late 1980s, including SPF/PC.

Time Sharing Option (TSO) is an interactive time-sharing environment for IBM mainframe operating systems, including OS/360 MVT, OS/VS2 (SVS), MVS, OS/390, and z/OS.

<span class="mw-page-title-main">VM (operating system)</span> Family of IBM operating systems

VM is a family of IBM virtual machine operating systems used on IBM mainframes System/370, System/390, zSeries, System z and compatible systems, including the Hercules emulator for personal computers.

<span class="mw-page-title-main">CP/CMS</span> IBM operating system specializing in virtualization

CP/CMS is a discontinued time-sharing operating system of the late 1960s and early 1970s, known for its excellent performance and advanced features. It had three distinct versions:

Since the rise of the personal computer in the 1980s, IBM and other vendors have created PC-based IBM-compatible mainframes which are compatible with the larger IBM mainframe computers. For a period of time PC-based mainframe-compatible systems had a lower price and did not require as much electricity or floor space. However, they sacrificed performance and were not as dependable as mainframe-class hardware. These products have been popular with mainframe developers, in education and training settings, for very small companies with non-critical processing, and in certain disaster relief roles.

<span class="mw-page-title-main">VPS/VM</span>

VPS/VM was an operating system that ran on IBM System/370 – IBM 3090 computers at Boston University in general use from 1977 to around 1990, and in limited use until at least 1993. During the 1980s, VPS/VM was the main operating system of Boston University and often ran up to 250 users at a time when rival VM/CMS computing systems could only run 120 or so users.

VP/CSS was a time-sharing operating system developed by National CSS. It began life in 1968 as a copy of IBM's CP/CMS, which at the time was distributed to IBM customers at no charge, in source code form, without support, as part of the IBM Type-III Library. Through extensive in-house development, in what today would be termed a software fork, National CSS took VP/CSS in a different direction from CP/CMS. Although the two systems would eventually share many capabilities, their technical implementations diverged in substantive ways.

The following is a timeline of virtualization development. In computing, virtualization is the use of a computer to simulate another computer. Through virtualization, a host simulates a guest by exposing virtual hardware devices, which may be done through software or by allowing access to a physical device connected to the machine.

<span class="mw-page-title-main">IBM System/360 Model 67</span> 1967 IBM mainframe model with virtual memory and 32-bit addressing

The IBM System/360 Model 67 (S/360-67) was an important IBM mainframe model in the late 1960s. Unlike the rest of the S/360 series, it included features to facilitate time-sharing applications, notably a Dynamic Address Translation unit, the "DAT box", to support virtual memory, 32-bit addressing and the 2846 Channel Controller to allow sharing channels between processors. The S/360-67 was otherwise compatible with the rest of the S/360 series.

<span class="mw-page-title-main">OS/VS1</span>

Operating System/Virtual Storage 1, or OS/VS1, is a discontinued IBM mainframe computer operating system designed to be run on IBM System/370 hardware. It was the successor to the Multiprogramming with a Fixed number of Tasks (MFT) option of System/360's operating system OS/360. OS/VS1, in comparison to its predecessor, supported virtual memory. OS/VS1 was generally available during the 1970s and 1980s, and it is no longer supported by IBM.

The history of IBM mainframe operating systems is significant within the history of mainframe operating systems, because of IBM's long-standing position as the world's largest hardware supplier of mainframe computers. IBM mainframes run operating systems supplied by IBM and by third parties.

In computing, a system virtual machine is a virtual machine (VM) that provides a complete system platform and supports the execution of a complete operating system (OS). These usually emulate an existing architecture, and are built with the purpose of either providing a platform to run programs where the real hardware is not available for use, or of having multiple instances of virtual machines leading to more efficient use of computing resources, both in terms of energy consumption and cost effectiveness, or both. A VM was originally defined by Popek and Goldberg as "an efficient, isolated duplicate of a real machine".

References

  1. Miller, Roy Watt. "MULTIPLE REGIONS FOR THE MCGILL-RAX TlME-SHARING SYSTEM". Library and Archives Canada. Retrieved April 29, 2021.
  2. "Boston University's RAX Library". Cryptosmith.com. January 12, 2012. Retrieved April 29, 2021.
  3. "5749-010 - VIRTUAL MACHINE FACILITY/370 (VM/370)". January 12, 1989. Retrieved July 19, 2021.
  4. Trevor Garland; Michael Conway; Frank Pettinicchio (1980). MUSIC: McGill University System for Interactive Computing : primer. OCLC   937543344.
  5. "Announcement Summary". February 20, 1990. significant enhancements ,, from 2.1, announced May 2, 1989.
  6. Sim390 Mainframe Emulator - Home