The IBM M44/44X was an experimental computer system from the mid-1960s, designed and operated at IBM's Thomas J. Watson Research Center at Yorktown Heights, New York. It was based on a modified IBM 7044 (the 'M44'), and simulated multiple 7044 virtual machines (the '44X'), using both hardware and software. Key team members were Dave Sayre and Rob Nelson. This was a groundbreaking machine, used to explore paging, the virtual machine concept, and computer performance measurement. It was purely a research system, and was cited in 1981 by Peter Denning as an outstanding example of experimental computer science.[1]
The term virtual machine probably originated with the M44/44X project, from which it was later appropriated by the CP-40 team to replace their earlier term pseudo machine.
Unlike CP-40 and later CP/CMS control programs, M44/44X did not implement a complete simulation of the underlying hardware (i.e. full virtualization). CP-40 project leader Robert Creasy observed:
The M44/44X "was about as much of a virtual machine system as CTSS – which is to say that it was close enough to a virtual machine system to show that 'close enough' did not count. I never heard a more eloquent argument for virtual machines than from Dave Sayre."[2]
M44/44X "implanted the idea that the virtual machine concept is not necessarily less efficient than more conventional approaches" – a core assumption in the CP/CMS architecture, and one that ultimately proved very successful.[3]
References
edit- R. J. Creasy, "The origin of the VM/370 time-sharing system", IBM Journal of Research & Development, Vol. 25, No. 5 (September 1981), pp. 483-490,
– perspective on CP/CMS and VM history by the CP-40 project lead, also a CTSS author - Peter J. Denning, "Performance Modeling: Experimental Computer Science at its Best", Communications of the ACM, President's Letter (November 1981)
– an influential survey paper, citing the following M44/44X papers:
- L. Belady, "A study of replacement algorithms for virtual storage computers," IBM Systems Journal Vol. 5, No. 2 (1966), pp. 78-101
- L. Belady and C. J. Kuehner, "Dynamic space sharing in computer systems," Communications of ACM Vol. 12 No. 5 (May 1969), pp. 282-288
- L. Belady, R. A. Nelson, and G. S. Shedler, "An anomaly in the space-time characteristics of certain programs running in paging machines," Communications of the ACM Vol. 12, No. 6 (June 1969), pp. 349-353
- R. W. O'Neill. Experience using a time sharing multiprogramming system with dynamic address relocation hardware. Proc. AFIPS Computer Conference 30 (Spring Joint Computer Conference, 1967). pp. 611–621. doi:10.1145/1465482.1465581.
– describes the M44/44X, reports performance measurements related to memory and paging, and discusses performance impact of multiprogramming and time-sharing - R. A. Nelson, "Mapping Devices and the M44 Data Processing System," Research Report RC 1303, IBM Thomas J. Watson Research Center (1964)
– about the M44/44X - D. Sayre, On Virtual Systems, IBM Thomas J. Watson Research Center (April 15, 1966)
– an early virtual machine paper describing multiprogramming with the M44/44X. - Melinda Varian, VM and the VM community, past present, and future, SHARE 89 Sessions 9059-9061, 1997
– the outstanding source for CP/CMS and VM history
Citations
→ derivation >> strong influence > some influence/precedence | ||
CTSS | ||
> IBM M44/44X | ||
>> CP-40/CMS → CP[-67]/CMS | → VM/370 → VM/SE versions → VM/SP versions → VM/XA versions → VM/ESA → z/VM | |
→ VP/CSS | ||
> TSS/360 | ||
> TSO for MVT → for OS/VS2 → for MVS → ... → for z/OS | ||
>> MULTICS and most other time-sharing platforms |