Time-sharing
From Wikipedia, the free encyclopedia
- For other possible meanings, see Time share (disambiguation)
Time-sharing refers to sharing a computing resource among many users by multitasking.
Because early mainframes and minicomputers were extremely expensive, it was rarely possible to allow a single user exclusive access to the machine for interactive use. But because computers in interactive use often spend much of their time idly waiting for user input, it was suggested that multiple users could share a machine by allocating one user's idle time to service other users. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users.
Throughout the late 1960s and the 1970s, computer terminals were multiplexed onto large institutional mainframe computers (central computer systems), which in many implementations sequentially polled the terminals to see if there was any additional data or action requested by the computer user. Later technology in interconnections were interrupt driven, and some of these used parallel data transfer technologies like, for example, the IEEE 488 standard. Generally, computer terminals were utilized on college properties in much the same places as desktop computers or personal computers are found today. In the earliest days of personal computers, many were in fact used as particularly smart terminals for time-sharing systems.
With the rise of microcomputing in the early 1980s, time-sharing faded into the background because the individual microprocessors were sufficiently inexpensive that a single person could have all the CPU time dedicated solely to their needs, even when idle.
The Internet has brought the general concept of time-sharing back into popularity. Expensive corporate server farms costing millions can host thousands of customers all sharing the same common resources. As with the early serial terminals, websites operate primarily in bursts of activity followed by periods of idle time. This bursting nature permits the service to be used by many website customers at once, and none of them notice any delays in communications until the servers start to get very busy.
Contents |
[edit] The Time-sharing Business
In the 1960s, several companies started providing time-sharing services as service bureaus. Early systems used Teletype K/ASR-33s or K/ASR-35s in ASCII environments, and an IBM teleprinter in EBCDIC environments. They would connect to the central computer by dial-up acoustically coupled modems operating at 10-15 characters per second. Later terminals and modems supported 30-120 characters per second. The time-sharing system would provide a complete operating environment, including a variety of programming language processors, various software packages, file storage, bulk printing, and off-line storage. Users were charged rent for the terminal, a charge for hours of connect time, a charge for seconds of CPU time, and a charge for kilobyte-months of disk storage.
Common systems used for time-sharing included the SDS 940, the PDP-10, and the IBM 360. Companies providing this service included Tymshare (founded in 1966), National CSS (founded in 1967 and bought by Dun & Bradstreet in 1979), Dial Data (bought by Tymshare in 1968), and Bolt, Beranek, and Newman. By 1968, there were 32 such service bureaus serving the NIH alone.[1] The Auerbach Guide to Timesharing 1973 edition lists 125 different timesharing services using equipment from Burroughs, CDC, DEC, HP, Honeywell, IBM , RCA, Univac and XDS.
[edit] The Computer Utility
A great deal of thought was given in the 70's to centralized computer resources being offered as computing utilities, the same as the electrical or telephone utilities. Ted Nelson's original "Xanadu" hypertext repository was envisioned as such a service. It became clear as the computer industry grew that no such consolidation of computing resources would occur as timesharing systems. Some argue that the move through client-server computing to centralized server farms and virtualization presents a market for computing utilities again.
[edit] History
The concept was first described publicly in early 1957 by Bob Bemer as part of an article in Automatic Control Magazine. The first project to implement a time-sharing system was initiated by John McCarthy in late 1957, on a modified IBM 704, and later an additionally modified IBM 7090 computer. Although he left to work on Project MAC and other projects, one of the results of the project, known as the Compatible Time Sharing System or CTSS, was demonstrated in November, 1961. CTSS has a good claim to be the first time-sharing system and remained in use until 1973. The first commercially successful time-sharing system was the Dartmouth Time-Sharing System (DTSS) which was first implemented at Dartmouth College in 1964 and subsequently formed the basis of General Electric's computer bureau services. DTSS influenced the design of other early timesharing systems developed by Hewlett Packard, Control Data Corporation, UNIVAC and others (in addition to introducing the BASIC programming language).
Significant early timesharing systems:
- Also see: Time-sharing system evolution
- Allen-Babcock RUSH Time-sharing System
- BBN PDP-1 Time-sharing System -> Massachusetts General Hospital PDP-1D -> MUMPS
- BBN TENEX -> DEC TOPS-20, Foonly FOONEX, MAXC OS at PARC, Stanford LOTS
- Burroughs Time-sharing MCP -> HP 3000 MPE
- UC Berkeley GENIE -> SDS 940 (Tymshare, BBN, SRI, Community Memory) -> BCC 500 -> MAXC at PARC
- UC Berkeley CAL-TSS (ran on CDC 6400)
- UC Berkeley BSD UNIX
- CDC KRONOS
- Dartmouth DTSS -> GE Time-sharing -> GEnie
- DEC PDP-6 Time-sharing Monitor -> TOPS-10 -> TSS-8, RSTS-11, RSX-11 -> VAX/VMS
- HP-2000 Timeshared BASIC
- IBM TSS/360
- IBM CP-67 -> VM/CMS
- Michigan Terminal System
- Michigan State University CDC SCOPE/HUSTLER System
- MIT CTSS -> MULTICS (MIT/GE/Bell Labs) -> UNIX, PRIMOS
- MIT PDP-1 Time-sharing System -> ITS
- National CSS -> VP/CSS (ran on IBM 360 series; originally based on IBM's CP/CMS
- Oregon State University OS-3 (ran on CDC 3000 series)
- RAND JOSS -> JOSS-2 -> JOSS-3
- SDC Q-32 Time-sharing System
- Stanford PDP-1 Time-sharing System -> SAIL -> WAITS
- Time Sharing Ltd. First commercial Time-sharing system in Europe and first dual (fault tolerant) Time-sharing system.
- Tymshare SDS-940 -> Tymcom X -> Tymcom XX
- XDS CP-V -> Honeywell CP-6
[edit] References
Computer Utilities
- Robert Frankston "The Computer Utility As A Marketplace For Computer Services" 1973
- Ted Nelson "Dream Machines" pp.56,57
Time-sharing Systems
- The Multics History Web Site
- DTSS Web site
- National CSS History at the Computer History Museum (computerhistory.org)
- Time-sharing System Surveys (1965-67) at bitsavers.org
- BBN TENEX Documentation at bitsavers.org
- UCB Project Genie Documentation at bitsavers.org
- CAL TSS Documentation at bitsavers.org
- CAL TSS Archives at mcjones.org
- SDS-940 Documentation at bitsavers.org
- Berkeley Computer Corporation BCC-500 Documentation at bitsavers.org
- CDC Kronos Documentation at bitsavers.org
- Dartmouth DTSS Documentation at bitsavers.org
- TOPS-10 Documentation at bitsavers.org
- TOPS-20 Documentation at bitsavers.org
- GE Mark I Timesharing Documentation at bitsavers.org
- MULTICS Documentation at bitsavers.org
- Honeywell CP-6 Documentation at bitsavers.org
- HP-2000 Timeshared BASIC System Documentation at bitsavers.org
- IBM TSS-360 Documentation at bitsavers.org
- MIT CTSS Documentation at bitsavers.org
- MIT PDP-1 Time-sharing System Documentation at bitsavers.org
- Oregon State OS-3 Documentation at bitsavers.org
- Rand JOSS Documentation at bitsavers.org
- Stanford PDP-1 Documentation at bitsavers.org
- Tymshare Documentation at bitsavers.org
- XDS Sigma CP-V Documentation at bitsavers.org

