Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
MUSIC/SP
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Defunct time-sharing system software}} {{use mdy dates|date=July 2021}} {{use American English|date=July 2021}} {{Infobox OS | name = MUSIC/SP | logo = | screenshot = Music SP.png | caption = Example of initial login screen for MUSIC/SP on [[Windows XP]] | developer = [[McGill University]] | source_model = | kernel_type = | supported_platforms = [[System/360|S/360]], [[System/370|S/370]], and [[IBM 4300|4300-series]] [[IBM mainframe|mainframes]] | ui = | family = | released = {{Start date and age|1972}} | latest_release_version = | latest_release_date = | latest_test_version = | latest_test_date = | marketing_target = Academic computing and the teaching of computer science | programmed_in = | prog_language = [[Fortran]], [[COBOL]], [[Rexx]], [[Prolog]], [[APL (programming language)|APL]], and [[BASIC|VS-BASIC]] | language = [[English language|English]] | updatemodel = | package_manager = | working_state = Discontinued | license = | preceded by = [[IBM Remote Access Computing|RAX]] | succeeded by = | website = }} {{History of IBM mainframe operating systems|misc}} '''''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 ([[IBM Remote Access Computing|Remote Access Computing System]]).<ref name="Miller">{{cite web |last1=Miller |first1=Roy Watt |title=MULTIPLE REGIONS FOR THE MCGILL-RAX TlME-SHARING SYSTEM |url=https://central.bac-lac.gc.ca/.item?id=TC-QMM-50353&op=pdf&app=Library&oclc_number=895199506 |website=Library and Archives Canada |access-date=April 29, 2021}}</ref><ref name="BU">{{cite web |title=Boston University's RAX Library |url=https://cryptosmith.com/2012/01/12/bu-rax |website=Cryptosmith.com |date=January 12, 2012 |access-date=April 29, 2021}}</ref> The system ran on IBM [[System/360|S/360]], [[System/370|S/370]], and [[IBM 4300|4300-series]] [[IBM mainframe|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 [[Computer terminal|terminals]], in an era when most mainframe computing was still being done from [[punched card]]s. 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 [[University|universities]], [[college]]s and [[High school|high school districts]] that used the system in [[North America|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]],<ref name=MUSIConVM.IBM>{{cite web |url=https://www-01.ibm.com/common/ssi/ShowDoc.wss?docURL=/common/ssi/rep_sm/0/897/ENUS5749-010/index.html&lang=en |title=5749-010 - VIRTUAL MACHINE FACILITY/370 (VM/370) |date=January 12, 1989 |access-date=July 19, 2021}}</ref> it became more common to deploy ''MUSIC'' as a guest operating system running under VM/370. ==History== * 1966 β IBM Remote Access Computing System (RAX) released. * 1972 β McGill's RAX modifications accepted by IBM for distribution as "Installed User Program" under the name of "McGill University System for Interactive Computing" (MUSIC).<ref>{{cite book |title=MUSIC: McGill University System for Interactive Computing : primer |url=http://www.worldcat.org/oclc/937543344 |author1=Trevor Garland |author2=Michael Conway |author3=Frank Pettinicchio |year=1980|oclc=937543344 }}</ref> * 1978 β MUSIC 4.0 Major change to [[file system]] providing [[long filename|longer file names]] and advanced access control. * 1981 β MUSIC 5.0 Support for IBM 4300 series CPUs and [[Fixed-block architecture|FBA]] disks. * 1985 β MUSIC/SP 1.0 Adopted by IBM as "System Product". Support for [[virtual memory]]. * 1990 β MUSIC/SP 2.2, described by ''IBM'' as having "significant enhancements."<ref name=MUSCthru9370.IBM>{{cite web |url=https://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htmlfid=897/ENUSC90-004%26infotype=AN%26subtype=CA%26appname=skmwww |title=Announcement Summary |quote=significant enhancements ,, from 2.1, announced May 2, 1989. |date=February 20, 1990}}</ref> * 1991 β MUSIC/SP 2.3 Internet support and tree-structured file system. Over the years the following people contributed to the MUSIC and MUSIC/SP systems. 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 (Ecole Polytechnique), Simone Spiller, Silvino Mezzari, and Mike Short. ==Features== A complete description of MUSIC/SP and its features can be found in its extensive documentation.<ref>{{cite web |title=MUSIC/SP Documentation Archive |url=https://www.canpub.com/teammpg/de/mcgweb/manuals_mus51.zip |website=Hosted on the Canpub MUSIC/SP Archive}}</ref> Key features are summarized below. ===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 [[Kernel (operating 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 (programming language)|Pascal]], C, [[PL/I]], [[BASIC]], [[APL (programming language)|APL]], [[ALGOL]], [[IBM RPG|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 [[Internet protocol suite|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 [[Computer terminal|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 processor|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]].<ref>[http://www.canpub.com/teammpg/de/sim390/index.htm Sim390 Mainframe Emulator - Home]</ref> The demonstration system will also run under [[Hercules (emulator)|Hercules]]. ==See also== * [[Michigan Terminal System]] * [[Multics]] * [[time-sharing]] * [[Time Sharing Option]] (TSO) * [[VPS/VM]] an offshoot of Music * [[Time-sharing system evolution]] ==References== {{Reflist}} ==External links== * [http://canpub.com/teammpg/de/mcgweb/msi/musicsp.htm MUSIC/SP] * [http://www.canpub.com/teammpg/de/sim390/index.htm Sim390 emulator] * [http://canpub.com/teammpg/de/mcgweb/downloads.htm MUSIC/SP demonstration system downloads] * [https://www.mcgill.ca/ McGill University] * [https://www.youtube.com/watch?v=BBVwM1KEjBQ Video of using MUSIC/SP on demo system] {{Time-sharing operating systems}} {{DEFAULTSORT:MUSIC SP}} [[Category:Time-sharing operating systems]] [[Category:IBM mainframe operating systems]] [[Category:1970s software]] [[Category:McGill University]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite book
(
edit
)
Template:Cite web
(
edit
)
Template:History of IBM mainframe operating systems
(
edit
)
Template:Infobox OS
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Time-sharing operating systems
(
edit
)
Template:Use American English
(
edit
)
Template:Use mdy dates
(
edit
)