MUSIC/SP
| Company type | Operating system |
|---|---|
| Industry | Computer software |
| Founded | 1970s |
| Founder | McGill University |
| Headquarters | Montreal , Canada |
| Products | Operating system for IBM S/360, S/370, and 4300-series mainframes |
MUSIC/SP (Multi-User System for Interactive Computing/System Product; initially known as McGill University System for Interactive Computing) originated at McGill University during the 1970s, evolving from IBM’s pioneering time-sharing platform RAX (Remote Access Computing System).
This operating system was designed to function on IBM S/360, S/370, and 4300-series mainframes, introducing innovations such as file access permissions and data compression. It allowed users—primarily academics and students—to write and execute programs interactively via terminals, marking a notable departure from traditional punched card methods. Over subsequent years, MUSIC/SP incorporated email capabilities, as well as connectivity to the Internet and the World Wide Web. By the late 1980s, the system was utilized by more than 200 educational institutions spanning North and South America, Europe, and Asia.
Originally developed as an independent operating system, MUSIC/SP later frequently operated as a guest OS under IBM’s VM/370 virtual machine environment.
History
- 1966 – Introduction of IBM Remote Access Computing System (RAX).
- 1972 – IBM endorses McGill’s enhancements to RAX as an "Installed User Program" named "McGill University System for Interactive Computing" (MUSIC).
- 1978 – Release of MUSIC 4.0, featuring extended file name support and enhanced access control mechanisms.
- 1981 – MUSIC 5.0 launched with compatibility for IBM 4300 series CPUs and FBA disk drives.
- 1985 – IBM adopts MUSIC/SP 1.0 as a "System Product," adding virtual memory support.
- 1990 – MUSIC/SP 2.2 introduces substantial improvements according to IBM.
- 1991 – MUSIC/SP 2.3 integrates Internet connectivity and a hierarchical file system.
Notable contributors to the development of MUSIC and MUSIC/SP include Roy Miller, Alan Greenberg, Wilf Mandel, Dave Edwards, Nelson Nguyen, 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 (École Polytechnique), Simone Spiller, Silvino Mezzari, and Mike Short.
Features
Extensive documentation outlines the full range of MUSIC/SP’s functionalities.[1] Principal features encompass:
File system
The MUSIC/SP file system was unique in employing a unified system-wide file index. Files were located through a hash combining the owner's user ID with the filename, enabling retrieval in a single I/O operation. Initially designed as a flat file structure without directories—unlike those found in DOS, Windows, or Unix—a tree-structured directory overlay was introduced in 1990 to align with contemporary standards. Files were automatically compressed to conserve disk space. The system incorporated advanced access controls permitting owners to assign read, write, append, and execute privileges. Additionally, it supported "public" files accessible to all users alongside "private" files restricted exclusively to their owners.
Virtual memory
In its early iterations, the system lacked virtual memory and address translation capabilities; consequently, only one user could operate at a time within core memory limits. Time-sharing was facilitated through swapping with variable-length time slices. The introduction of virtual memory in 1985 enabled multiple users to work concurrently without program size constraints and substantially enhanced performance. Efficiency was further improved by preloading frequently used modules into virtual memory during startup.
Programming languages
Tailored for academic environments and computer science education, MUSIC/SP supported an extensive array of programming languages. The core kernel was coded in IBM/370 assembly language while most applications utilized FORTRAN. Supported compilers included Waterloo WATFIV, WATBOL, Pascal, C, PL/I, BASIC, APL, ALGOL, RPG, and GPSS. A command scripting language was introduced in 1984 following the port of REXX from CMS; by 1986, the entire user interface had been developed using REXX.
E-mail and the Internet
Email functionality was a central application initially limited to local messaging. As networking evolved, support expanded to include BITNET and Internet email systems. Full Internet access became available in 1990 after porting the University of Wisconsin WiscNet TCP/IP stack to MUSIC/SP, enabling comprehensive Internet services on the platform.
Compatibility with other IBM systems
A critical capability involved running programs originally developed for IBM’s primary operating system (MVS) by means of an MVS emulator that intercepted system calls at the Supervisor Call instruction (SVC) level. Most third-party software operated within this emulation environment. Developers generally adapted existing MVS versions rather than creating new ones specifically for MUSIC/SP; this approach yielded more efficient execution due to the emulator’s streamlined subset implementation.
Other features
Within educational contexts, "control cards" placed at the beginning of source files automated directing code to appropriate compilers (defaulting to Fortran), compiling, linking, and executing with specified options simply by entering the filename.
By 1980, MUSIC/SP supported numerous terminal types including EBCDIC-based IBM proprietary terminals as well as asynchronous ASCII terminals. Terminals connected through various front-end processors allowed variable length time slices that could extend several seconds for compute-intensive tasks or terminate immediately upon output buffer saturation or user input.
Emulation
The Sim390 emulator offers a freely available demonstration version of MUSIC/SP compatible with Microsoft Windows. This demo can also operate on the Hercules platform.
See also
- Michigan Terminal System
- Multics
- time-sharing
- Time Sharing Option (TSO)
- VPS/VM, derived from Music
- Time-sharing system evolution
External links
- ↑ Lua error in Module:Citation/CS1/Configuration at line 2123: attempt to index field '?' (a nil value).