Jump to content

Time-sharing: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
No edit summary
→‎History: minor clarif; ref req
Line 11: Line 11:
{{Main|Batch processing}}
{{Main|Batch processing}}


The earliest computers were extremely expensive devices, and very slow in comparison to recent models. Machines were typically dedicated to a particular set of tasks and operated by control panels, the operator manually entering small programs via switches in order to load and run a series of programs. These programs might take hours, or even weeks, to run. As computers grew in speed, run times dropped, and soon the time taken to start up the next program became a concern. [[Batch processing]] methodologies evolved to decrease these "dead periods" by queuing up programs so that as soon as one program completed, the next would start.{{citation needed |date=November 2013}}
The earliest computers were extremely expensive devices, and very slow in comparison to later models. Machines were typically dedicated to a particular set of tasks and operated by control panels, the operator manually entering small programs via switches in order to load and run a series of programs. These programs might take hours, or even weeks, to run. As computers grew in speed, run times dropped, and soon the time taken to start up the next program became a concern. [[Batch processing]] methodologies evolved to decrease these "dead periods" by queuing up programs so that as soon as one program completed, the next would start.{{citation needed |date=November 2013}}


To support a batch processing operation, a number of comparatively inexpensive [[card punch]] or [[paper tape]] writers were used by programmers to write their programs "offline". When typing (or punching) was complete, the programs were submitted to the operations team, which scheduled them to be run. Important programs were started quickly; how long before less important programs were started was unpredictable. When the program run was finally completed, the output (generally printed) was returned to the programmer. The complete process might take days, during which time the programmer might never see the computer.{{citation needed |date=November 2013}}
To support a batch processing operation, a number of comparatively inexpensive [[card punch]] or [[paper tape]] writers were used by programmers to write their programs "offline". When typing (or punching) was complete, the programs were submitted to the operations team, which scheduled them to be run. Important programs were started quickly; how long before less important programs were started was unpredictable. When the program run was finally completed, the output (generally printed) was returned to the programmer. The complete process might take days, during which time the programmer might never see the computer.{{citation needed |date=November 2013}}


The alternative of allowing the user to operate the computer directly was generally far too expensive to consider. This was because users might have long periods of entering code while the computer remained idle. This situation limited interactive development to those organizations that could afford to waste computing cycles: large universities for the most part. Programmers at the universities decried the behaviors that batch processing imposed, to the point that Stanford students made a short film humorously critiquing it.<ref>[http://www.computerhistory.org/revolution/punched-cards/2/211/2253 Ellis D. Kropotchev Silent Film], 1967, This student-produced film from Stanford University is a humorous spoof of the trials and tribulations of a college hacker condemned to use batch processing. Originally created by Arthur Eisenson and Gary Feldman, the film gives the viewer a feel for the process of computer programming in the 1960s. Original music by Heather Yager. Computer History Museum, Object ID 102695643. Retrieved November 29, 2013.</ref> They experimented with new ways to interact directly with the computer, a field today known as [[human–computer interaction]].
The alternative of allowing the user to operate the computer directly was generally far too expensive to consider. This was because users might have long periods of entering code while the computer remained idle. This situation limited interactive development to those organizations that could afford to waste computing cycles: large universities for the most part. Programmers at the universities decried the behaviors that batch processing imposed, to the point that Stanford students made a short film humorously critiquing it.<ref>Eisenson, Arthur; and Yager, Heather (1967). Ellis D. Kropotchev Silent Film. Stanford University, 1967. This student-produced film from Stanford University is a humorous spoof of the trials and tribulations of a college hacker condemned to use batch processing. Originally created by Arthur Eisenson and Gary Feldman, the film gives the viewer a feel for the process of computer programming in the 1960s. Original music by Heather Yager. Computer History Museum, Object ID 102695643. Retrieved on 2013-11-29 from http://www.computerhistory.org/revolution/punched-cards/2/211/2253.</ref> They experimented with new ways to interact directly with the computer, a field today known as [[human–computer interaction]].{{fact}}


===Time-sharing===
===Time-sharing===
[[File:Unix Timesharing UW-Madison 1978.jpeg|thumb|[[Unix]] time-sharing at the [[University of Wisconsin]], 1978]]
[[File:Unix Timesharing UW-Madison 1978.jpeg|thumb|[[Unix]] time-sharing at the [[University of Wisconsin]], 1978.]]

Time-sharing was developed out of the realization that while any single user would make inefficient use of a computer, a large group of users together would not. This was due to the pattern of interaction: Typically an individual user entered bursts of information followed by long pauses but a group of users working at the ''same time'' would mean that the pauses of one user would be filled by the activity of the others. Given an optimal group size, the overall process could be very efficient. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users.{{citation needed |date=November 2013}}
Time-sharing was developed out of the realization that while any single user would make inefficient use of a computer, a large group of users together would not. This was due to the pattern of interaction: Typically an individual user entered bursts of information followed by long pauses but a group of users working at the ''same time'' would mean that the pauses of one user would be filled by the activity of the others. Given an optimal group size, the overall process could be very efficient. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users.{{citation needed |date=November 2013}}


Implementing a system able to take advantage of this would be difficult. Batch processing was really a methodological development on top of the earliest systems; computers still ran single programs for single users at any time, all that batch processing changed was the time delay between one program and the next. Developing a system that supported multiple users at the same time was a completely different concept; the "state" of each user and their programs would have to be kept in the machine, and then switched between quickly. This would take up computer cycles, and on the slow machines of the era this was a concern. However, as computers rapidly improved in speed, and especially in size of [[core memory]] in which users' states were retained, the [[Overhead (computing)|overhead]] of time-sharing continually decreased, relatively.{{citation needed |date=November 2013}}
Implementing a system able to take advantage of this was initially difficult. Batch processing was effectively a methodological development on top of the earliest systems. Since computers still ran single programs for single users at any time, the primary change with batch processing was the time delay between one program and the next. Developing a system that supported multiple users at the same time was a completely different concept. The "state" of each user and their programs would have to be kept in the machine, and then switched between quickly. This would take up computer cycles, and on the slow machines of the era this was a concern. However, as computers rapidly improved in speed, and especially in size of [[core memory]] in which users' states were retained, the [[Overhead (computing)|overhead]] of time-sharing continually decreased, relatively speaking.{{citation needed |date=November 2013}}


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 (computer scientist)|John McCarthy]] in late 1957, on a modified [[IBM 704]], and later on 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 [[Compatible Time-Sharing System|CTSS]], was demonstrated in November 1961. CTSS has a good claim to be the first time-sharing system and remained in use until 1973. Another contender for the first demonstrated time-sharing system was [[PLATO (computer system)|PLATO]] II, created by [[Donald Bitzer]] at a public demonstration at [[Robert Allerton Park]] near the University of Illinois in early 1961. Bitzer has long said that the PLATO project would have gotten the patent on time-sharing if only the University of Illinois had known how to process patent applications faster, but at the time university patents were so few and far between, they took a long time to be submitted. The first commercially successful time-sharing system was the [[Dartmouth Time Sharing System]].{{citation needed |date=November 2013}}
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 (computer scientist)|John McCarthy]] in late 1957, on a modified [[IBM 704]], and later on an additionally modified [[IBM 7090]] computer. Although he left to work on [[Project MAC]] and other projects, one of the deliverables of the project, known as the ''Compatible Time-Sharing System'' or [[Compatible Time-Sharing System|CTSS]], was demonstrated in November 1961. CTSS has a good claim to be the first time-sharing system and remained in use until 1973. Another contender for the first demonstrated time-sharing system was [[PLATO (computer system)|PLATO]] II, created by [[Donald Bitzer]] at a public demonstration at [[Robert Allerton Park]] near the University of Illinois in early 1961. Bitzer has long said that the PLATO project would have gotten the patent on time-sharing if only the University of Illinois had known how to process patent applications faster, but at the time university patents were so few and far between, they took a long time to be submitted. The first commercially successful time-sharing system was the [[Dartmouth Time Sharing System]].{{citation needed |date=November 2013}}


===Development===
===Development===
Throughout the late 1960s and the 1970s, [[computer terminals]] were multiplexed onto large institutional [[mainframe computer]]s ([[Centralized computing]] 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 such as the [[IEEE 488]] standard. Generally, computer terminals were utilized on college properties in much the same places as ''[[desktop computer]]s'' or ''[[personal computer]]s'' are found today. In the earliest days of personal computers, many were in fact used as particularly smart terminals for time-sharing systems.{{citation needed |date=November 2013}}
Throughout the late 1960s and the 1970s, [[computer terminals]] were multiplexed onto large institutional [[mainframe computer]]s ([[Centralized computing]] systems), which in many implementations sequentially polled the terminals to see whether any additional data was available or action was requested by the computer user. Later technology in interconnections were [[interrupt]] driven, and some of these used parallel data transfer technologies such as the [[IEEE 488]] standard. Generally, computer terminals were utilized on college properties in much the same places as ''[[desktop computer]]s'' or ''[[personal computer]]s'' are found today. In the earliest days of personal computers, many were in fact used as particularly smart terminals for time-sharing systems.{{citation needed |date=November 2013}}


With the rise of microcomputing in the early 1980s, time-sharing faded into the background because individual microprocessors were sufficiently inexpensive that a single person could have all the [[CPU time]] dedicated solely to their needs, even when idle. However, 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.{{citation needed |date=November 2013}}
With the rise of microcomputing in the early 1980s, time-sharing faded into the background because individual microprocessors were sufficiently inexpensive that a single person could have all the [[CPU time]] dedicated solely to their needs, even when idle. However, the Internet 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, web sites operate primarily in bursts of activity followed by periods of idle time. This bursting nature permits the service to be used by many customers at once, usually with no perceptible communication delays, unless the servers start to get very busy.{{citation needed |date=November 2013}}


===Time-sharing business===
===Time-sharing business===
In the 1960s, several companies started providing time-sharing services as [[service bureau]]s. Early systems used [[Teletype Model 33]] KSR or ASR or Teletype Model 35 KSR or ASR machines in [[ASCII]] environments, and [[IBM]] Selectric typewriter-based terminals in [[EBCDIC]] environments. They would connect to the [[Centralized computing|central computer]] by [[dial-up]] Bell 103A modem or [[acoustic coupler|acoustically coupled]] [[modem]]s operating at 10&ndash;15 characters per second. Later terminals and modems supported 30&ndash;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.{{citation needed |date=November 2013}}
In the 1960s, several companies started providing time-sharing services as [[service bureau]]s. Early systems used [[Teletype Model 33]] KSR or ASR or Teletype Model 35 KSR or ASR machines in [[ASCII]] environments, and [[IBM]] Selectric typewriter-based terminals in [[EBCDIC]] environments. They would connect to the [[Centralized computing|central computer]] by [[dial-up]] Bell 103A modem or [[acoustic coupler|acoustically coupled]] [[modem]]s operating at 10&ndash;15 characters per second. Later terminals and modems supported 30&ndash;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.{{citation needed |date=November 2013}}


Common systems used for time-sharing included the [[SDS 940]], the [[PDP-10]], and the [[IBM 360]]. Companies providing this service included [[GE]]'s GEISCO, [[IBM]] subsidiary The [[Service Bureau Corporation]], [[Tymnet|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]] (BBN). By 1968, there were 32 such service bureaus serving the US [[National Institutes of Health]] (NIH) alone.<ref>[http://www.computerhistory.org/corphist/view.php?s=stories&id=136 "Information Technology Corporate Histories Collection"], Computer History Museum. Retrieved November 29, 2013.</ref> The ''Auerbach Guide to Timesharing'' (1973) lists 125 different timesharing services using equipment from [[Burroughs Corporation|Burroughs]], [[Control Data Corporation|CDC]], [[Digital Equipment Corporation|DEC]], [[Hewlett-Packard|HP]], [[Honeywell]], [[IBM]], [[RCA]], [[Univac]] and [[Scientific Data Systems|XDS]].<ref name=Auerbach>{{cite book|title=Auerbach Guide to Time Sharing|year=1973|publisher=Auerbach Publishers, Inc.|url=http://bitsavers.trailing-edge.com/pdf/auerbach/GuideToTimesharing_Jan73.pdf|accessdate=November 29, 2013}}</ref>
Common systems used for time-sharing included the [[SDS 940]], the [[PDP-10]], and the [[IBM 360]]. Companies providing this service included [[GE]]'s GEISCO, [[IBM]] subsidiary The [[Service Bureau Corporation]], [[Tymnet|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]] (BBN). By 1968, there were 32 such service bureaus serving the US [[National Institutes of Health]] (NIH) alone.<ref>"Information Technology Corporate Histories Collection". Computer History Museum. Retrieved on 2013-11-29 from http://www.computerhistory.org/corphist/view.php?s=stories&id=136.</ref> The ''Auerbach Guide to Timesharing'' (1973) lists 125 different timesharing services using equipment from [[Burroughs Corporation|Burroughs]], [[Control Data Corporation|CDC]], [[Digital Equipment Corporation|DEC]], [[Hewlett-Packard|HP]], [[Honeywell]], [[IBM]], [[RCA]], [[Univac]], and [[Scientific Data Systems|XDS]].<ref name=Auerbach>{{cite book|title=Auerbach Guide to Time Sharing|year=1973|publisher=Auerbach Publishers, Inc.|url=http://bitsavers.trailing-edge.com/pdf/auerbach/GuideToTimesharing_Jan73.pdf|accessdate=2013-11-29}}</ref>


===The computer utility===
===The computer utility===
Beginning in 1964 the [[Multics]] operating system was designed as a [[computing utility]], modeled on the electrical or telephone utilities. In the 1970s [[Ted Nelson]]'s original "[[Project Xanadu|Xanadu]]" hypertext repository was envisioned as such a service. It seemed as the computer industry grew that no such consolidation of computing resources would occur as timesharing systems. However in the 1990s the concept was revived in somewhat modified form as [[cloud computing]].{{citation needed |date=November 2013}}
Beginning in 1964, the [[Multics]] operating system was designed as a [[computing utility]], modeled on the electrical or telephone utilities. In the 1970s, [[Ted Nelson]]'s original "[[Project Xanadu|Xanadu]]" hypertext repository was envisioned as such a service. It seemed as the computer industry grew that no such consolidation of computing resources would occur as timesharing systems. In the 1990s the concept was, however, revived in somewhat modified form under the banner of [[cloud computing]].{{citation needed |date=November 2013}}


===Security===
===Security===
Time-sharing was the first time that multiple processes, owned by different users, were running on a single machine; and these processes could interfere with one another.<ref name=Silberschatz2010>{{cite book|last1=Silberschatz |first1=Abraham| last2=Galvin |first2=Peter|last3=Gagne |first3=Greg|title=Operating system concepts|year=2010|publisher= Wiley & Sons | location = Hoboken, N.J. | isbn = 978-0-470-23399-3 | edition = 8th | page = 591}}</ref> For example, one process might alter shared resources which another process relied on, such as a variable stored in memory. When only one user was using the system, this would result in possibly wrong output - but with multiple users, this might mean that other users got to see information they were not meant to see.
Time-sharing was the first time that multiple processes, owned by different users, were running on a single machine, and these processes could interfere with one another.<ref name=Silberschatz2010>{{cite book|last1=Silberschatz |first1=Abraham| last2=Galvin |first2=Peter|last3=Gagne |first3=Greg|title=Operating system concepts|year=2010|publisher= Wiley & Sons | location = Hoboken, N.J. | isbn = 978-0-470-23399-3 | edition = 8th | page = 591}}</ref> For example, one process might alter shared resources which another process relied on, such as a variable stored in memory. When only one user was using the system, this would result in possibly wrong output - but with multiple users, this might mean that other users got to see information they were not meant to see.{{fact}}


To prevent this from happening, an operating system needed to enforce a set of policies that determined which privileges each process had. For example, the operating system might deny access to a certain variable by a certain process.
To prevent this from happening, an operating system needed to enforce a set of policies that determined which privileges each process had. For example, the operating system might deny access to a certain variable by a certain process.{{fact}}


The first international conference on computer security in London in 1971 was primarily driven by the time-sharing industry and its customers.{{Citation needed|date=April 2010}}
The first international conference on computer security in London in 1971 was primarily driven by the time-sharing industry and its customers.{{Citation needed|date=April 2010}}

Revision as of 15:55, 27 May 2015

In computing, time-sharing is the sharing of a computing resource among many users by means of multiprogramming and multi-tasking. Its introduction in the 1960s by students and professors at Dartmouth College, and emergence as the prominent model of computing in the 1970s, represented a major technological shift in the history of computing.

By allowing a large number of users to interact concurrently with a single computer, time-sharing dramatically lowered the cost of providing computing capability, made it possible for individuals and organizations to use a computer without owning one, and promoted the interactive use of computers and the development of new interactive applications.

History

Batch processing

The earliest computers were extremely expensive devices, and very slow in comparison to later models. Machines were typically dedicated to a particular set of tasks and operated by control panels, the operator manually entering small programs via switches in order to load and run a series of programs. These programs might take hours, or even weeks, to run. As computers grew in speed, run times dropped, and soon the time taken to start up the next program became a concern. Batch processing methodologies evolved to decrease these "dead periods" by queuing up programs so that as soon as one program completed, the next would start.[citation needed]

To support a batch processing operation, a number of comparatively inexpensive card punch or paper tape writers were used by programmers to write their programs "offline". When typing (or punching) was complete, the programs were submitted to the operations team, which scheduled them to be run. Important programs were started quickly; how long before less important programs were started was unpredictable. When the program run was finally completed, the output (generally printed) was returned to the programmer. The complete process might take days, during which time the programmer might never see the computer.[citation needed]

The alternative of allowing the user to operate the computer directly was generally far too expensive to consider. This was because users might have long periods of entering code while the computer remained idle. This situation limited interactive development to those organizations that could afford to waste computing cycles: large universities for the most part. Programmers at the universities decried the behaviors that batch processing imposed, to the point that Stanford students made a short film humorously critiquing it.[1] They experimented with new ways to interact directly with the computer, a field today known as human–computer interaction.[citation needed]

Time-sharing

Unix time-sharing at the University of Wisconsin, 1978.

Time-sharing was developed out of the realization that while any single user would make inefficient use of a computer, a large group of users together would not. This was due to the pattern of interaction: Typically an individual user entered bursts of information followed by long pauses but a group of users working at the same time would mean that the pauses of one user would be filled by the activity of the others. Given an optimal group size, the overall process could be very efficient. Similarly, small slices of time spent waiting for disk, tape, or network input could be granted to other users.[citation needed]

Implementing a system able to take advantage of this was initially difficult. Batch processing was effectively a methodological development on top of the earliest systems. Since computers still ran single programs for single users at any time, the primary change with batch processing was the time delay between one program and the next. Developing a system that supported multiple users at the same time was a completely different concept. The "state" of each user and their programs would have to be kept in the machine, and then switched between quickly. This would take up computer cycles, and on the slow machines of the era this was a concern. However, as computers rapidly improved in speed, and especially in size of core memory in which users' states were retained, the overhead of time-sharing continually decreased, relatively speaking.[citation needed]

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 on an additionally modified IBM 7090 computer. Although he left to work on Project MAC and other projects, one of the deliverables 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. Another contender for the first demonstrated time-sharing system was PLATO II, created by Donald Bitzer at a public demonstration at Robert Allerton Park near the University of Illinois in early 1961. Bitzer has long said that the PLATO project would have gotten the patent on time-sharing if only the University of Illinois had known how to process patent applications faster, but at the time university patents were so few and far between, they took a long time to be submitted. The first commercially successful time-sharing system was the Dartmouth Time Sharing System.[citation needed]

Development

Throughout the late 1960s and the 1970s, computer terminals were multiplexed onto large institutional mainframe computers (Centralized computing systems), which in many implementations sequentially polled the terminals to see whether any additional data was available or action was requested by the computer user. Later technology in interconnections were interrupt driven, and some of these used parallel data transfer technologies such as 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.[citation needed]

With the rise of microcomputing in the early 1980s, time-sharing faded into the background because individual microprocessors were sufficiently inexpensive that a single person could have all the CPU time dedicated solely to their needs, even when idle. However, the Internet 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, web sites operate primarily in bursts of activity followed by periods of idle time. This bursting nature permits the service to be used by many customers at once, usually with no perceptible communication delays, unless the servers start to get very busy.[citation needed]

Time-sharing business

In the 1960s, several companies started providing time-sharing services as service bureaus. Early systems used Teletype Model 33 KSR or ASR or Teletype Model 35 KSR or ASR machines in ASCII environments, and IBM Selectric typewriter-based terminals in EBCDIC environments. They would connect to the central computer by dial-up Bell 103A modem or 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.[citation needed]

Common systems used for time-sharing included the SDS 940, the PDP-10, and the IBM 360. Companies providing this service included GE's GEISCO, IBM subsidiary The Service Bureau Corporation, 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 (BBN). By 1968, there were 32 such service bureaus serving the US National Institutes of Health (NIH) alone.[2] The Auerbach Guide to Timesharing (1973) lists 125 different timesharing services using equipment from Burroughs, CDC, DEC, HP, Honeywell, IBM, RCA, Univac, and XDS.[3]

The computer utility

Beginning in 1964, the Multics operating system was designed as a computing utility, modeled on the electrical or telephone utilities. In the 1970s, Ted Nelson's original "Xanadu" hypertext repository was envisioned as such a service. It seemed as the computer industry grew that no such consolidation of computing resources would occur as timesharing systems. In the 1990s the concept was, however, revived in somewhat modified form under the banner of cloud computing.[citation needed]

Security

Time-sharing was the first time that multiple processes, owned by different users, were running on a single machine, and these processes could interfere with one another.[4] For example, one process might alter shared resources which another process relied on, such as a variable stored in memory. When only one user was using the system, this would result in possibly wrong output - but with multiple users, this might mean that other users got to see information they were not meant to see.[citation needed]

To prevent this from happening, an operating system needed to enforce a set of policies that determined which privileges each process had. For example, the operating system might deny access to a certain variable by a certain process.[citation needed]

The first international conference on computer security in London in 1971 was primarily driven by the time-sharing industry and its customers.[citation needed]

Notable time-sharing systems

Significant early timesharing systems:[3]

See also

References

  1. ^ Eisenson, Arthur; and Yager, Heather (1967). Ellis D. Kropotchev Silent Film. Stanford University, 1967. This student-produced film from Stanford University is a humorous spoof of the trials and tribulations of a college hacker condemned to use batch processing. Originally created by Arthur Eisenson and Gary Feldman, the film gives the viewer a feel for the process of computer programming in the 1960s. Original music by Heather Yager. Computer History Museum, Object ID 102695643. Retrieved on 2013-11-29 from http://www.computerhistory.org/revolution/punched-cards/2/211/2253.
  2. ^ "Information Technology Corporate Histories Collection". Computer History Museum. Retrieved on 2013-11-29 from http://www.computerhistory.org/corphist/view.php?s=stories&id=136.
  3. ^ a b c d Auerbach Guide to Time Sharing (PDF). Auerbach Publishers, Inc. 1973. Retrieved 2013-11-29.
  4. ^ Silberschatz, Abraham; Galvin, Peter; Gagne, Greg (2010). Operating system concepts (8th ed.). Hoboken, N.J.: Wiley & Sons. p. 591. ISBN 978-0-470-23399-3.
  5. ^ "A Brief Description of Privacy Measures in the RUSH Time-Sharing System", J.D. Babcock, AFIPS Conference Proceedings, Spring Joint Computer Conference, Vol. 30, 1967, pp. 301-302.
  6. ^ Hartley, D. F. (1968), The Cambridge multiple-access system: user's reference manual, Cambridge: Cambridge Univ. Press, ISBN 978-0901224002
  7. ^ "Time Sharing", James Miller. Retrieved 30 November 2013.

Further reading

  • Nelson, Theodor (1974). Computer Lib: You Can and Must Understand Computers Now; Dream Machines: "New Freedoms Through Computer Screens— A Minority Report". Self-published. ISBN 0-89347-002-3. pp. 56–57.

External links

→ 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/ESAz/VM
VP/CSS
> TSS/360
> TSO for MVT → for OS/VS2 → for MVS → ... → for z/OS
>> MULTICS and most other time-sharing platforms