ALFRED P. SLOAN SCHOOL OF MANAGEMENT CSVZY The Two Sides of Time Sharin/? Martin Greenberger Sloan School of Management and Project MAC Massachusetts Institute of Technology 127-65 MASSACHUSETTS INSTITUTE OF TECHNOLOGY 50 MEMORIAL DRIVE CAMBRIDGE, MASSACHUSETTS 02139 . C8V£Y The Two Sides of Time Sharing Martin Creenberger Sloan School of Management and Project MAC Massachusetts Institute of Technology 127-65 Based on material presented to the IFIP Congress 65. Work reported herein was supported (in part) by Project MAC, an M.I.T. research program sponsored by the Advanced under Research Department of Defense, Projects Agency, Office of Naval Research Contract Number Nonr-U 102( 01) permitted for any is Reproduction in whole or in part purpose of the United States Covernment. Development of the OPS system was a cooperative undertaking with Anthony Horry , Malcolm Jones, James Morris, David Ness, Mayer Wantman, and Stephen Whitelaw, li.l-feS' PACF 2 Introduction 1. There is more than one way to hlsect the new suhject of time sharing into contrasting aspects. example / For could view the rood and the had of it, a dichotomy guaranteed provoke to lively discussions. little like Harvard the three-year olds. sweatshirts and goals, hut come too early in the sra on see is these They we They focus attention on that Rut discussions, although healthy, are premature. we important a some issues developmental process to he very meaningful, My hi sect ion is not going to he into the pood and had , hut rather into the system and the user , hoth we consider good for now. and Mo I user ,T,'s physical is reflected Project MAT: tool or distinction The Mul t i expresses the hopes of the uspr. present In the phrase on- 1 i ne rp?* 1 -1 the distinction suhject of the to ime Real . while -1 of an of also is depicts Ime descrihes on-1 ne ? The distinction may even within the scheduling algorithm which happens to he acronym Machine-Aided Cognition The the performance of the processor, the status of the user. system -Access Computer refers whereas systpm, whom of hetween douhle-edged the in the found he on-line operation, recent operations a research paper (11), Speaking of operations research, there was article hy Heorges Brigham puhlished ahout the Journal ( 2 ) „ It of the Operations Research 10 a very years Society of ago fine in America won the I.anchester Prize for the hest 0/R paper of . the year. factory, of and a congestion problem contained an interesting It counter. tool a dealt with It The analysis aircraft In an queueing viewed analysis service the operation at the tool counter mathematically, first from the side of the tool clerk or server, mechanic or user. This then from the siHe of approach gives duals. in mathematical two problems that are completely equivalent. the We might call them Unless we change the statement of service objectives passing from one side of the counter to the other, both problems yield identical solutions. The point is, of course, that service the objectives normally are different on the two sides of the counter. server and the user look at the operation through pi The different asses Behind the tool counter the clerk moves as possible. quickly as He strives for efficiency and dispatch to prevent conpestion on the other side. In his he may fail haste, notice which customer has been waiting the to This longest. oversight does not affect average customer wait, so long no one starts a brawl show a from impatience. slight preference for customers v/ho wish tools, a bias that actually reduces average free periods, the clerk nibbles which he tries to get done away without at front of the counter, back to his job. also fewest During background neglecting the mechanic His foreman may he the wait. important service operation in the foreground In may The clerk tasks more the , is marking as eaper to time, and get a costly machine may be sitting idle in need of repairs. Me is miffed at havinp to wait lonper than the next fellow. is upset hy having accept to sinple-head wrench, or a Stillson a from available counter. the tools the all a the If would needs he without counter, one of bolt that turns out to be the wronr size and requires him to return to mechanic had his way, instead He waiting, be error, replacement, discussion, or red tape. The sets of objectives necessarily contradictory. of On the contrary, objectives usually are fashioned so as user, but typically the average user users, rather than the ? nd yi dual ? tonl-counter phenomenon is familiar in the aggrepate the and a closed shop, while the of two-sided same the fiel^. computer conventional computer center the operations manaper for greater equipment efficiency the We really did not need since example, server's the accommodate to or not are user. Now let's talk about computers. the system and user throuph programmer response time and closer touch wi th his run. a strives processing batch lonps In faster for This state of affairs has lead to conflict, and this conflict has been the sinple most important motive for Time sharing is definitely sharing. user and a development the a concession recognition of his point of view. of to time the PAGF 5 Time-shar ng Supervisors 2. i The first order of business in making time sharing work on a meaningful scale was to solve the technical occasioned by this new mode of operation. bui 1 t problems Supervisors were to: Accept input continuously from the remote terminals of a number of simultaneous users, a. Parcel out successive pieces of the computer's time to users equitably, b. f Schedule this time so that the computer seemed immediately responsive to most requests, c. damage Protect the programs of each user from by an errant neighbor, d. e. Manage input-output and queues of interrupts. Transfer programs flexibly between primary and f. secondary storage, g. Maintain data files, Provide error detection unauthorized use, and h. and security I. Allow batch processing to continue background, concurrently with operation remote terminals in the foreground. Programming the supervisors to in of these solve from the the techniral problems were major undertakings, partly because the jor had not been done before, and available at the time were partly not because designed to the do computers the joh. PAGF Emphasis was p]aced on the server side of 6 operation the getting the processor to time share. A few time sharing supervisors with limited horizons did cross over to the user's side (15,18), while the and broader supervisors means others for do to provided (3,17) so, supervisor at Project MAP, is e PTSS, framework a writing variety of languages, and systems base, programs compiling including FORTRAN, MAD, applications, such hand be can as tailored engineering user 3. ' s a sense a design fulfillment of this particular stress (16), in a and From of Fach CTSS in ALGOL, for analysis (1), and symbol manipulation (21). systems is in Users (U). There are flexible facilities for editing. FAP. sharinr modular set of subroutines that encourages further evolution may add to CTSS by the an*-' time the structured as bip-ger a these special domai n. User Systems The development of time sharing supervisors has been an approach to man-machine operation from the server's side the counter. from the In user's have contrast, certain systems side These (5,13,20). problem context. Sharing prerequisite or Initial time concern, sense as an afterthought, and some among users although of these approached were systems designed to facilitate man-machine interaction in it of a specific was not a makes good systems have PAPF since moved in that which one is interactive direction. of earliest the user Sketchpad, systems, most and heinp is for 7 example/ vivid of implemented the an in extended 3-dimens ional form on the Project MAC computer. The full power of an on-line system is attained when the user is able to shift flexibly anH easily variety without of different activities set-up costs or requiring awkward between incurring adjustments. computer can do many wondrous things, as we all this versatility does not benefit most users placed at their fingertips. average The have to carry his water to the faucet. wMe a rh raw know, but it is should user i The unless system The h not should take care of this for him. Specifically, it should be convenient for the on-line uspt to regulate echo checking, make calculations, display intermediate results, obtain helpful puidelines, key variables. He shoulH have the ability move to view and easily between program modification and execution without the for recompi lat on i , He should subroutine by simply referring to he it abl^ treat the compound as he features are important to him mathematical problem, building a whether the he such These solving is a simulation model, designing man-machine decision procedure, constructing ng-ponp:i ng among several subroutines, parts. operation, or simply doing some data analysis. pi a symbolically, alter its treats a execute to arguments without fuss, compound it with other and need activities, a real-time And if he is the value of PAHF mu 1 1 ? pi i provided when features, these hy single a system, these features (8,9,10). multi-purpose to It is an on-line the individual user, uses CTSS and is a natural An 111 that is as CTSS is The system OPS extension of it. ustration Suppose we have the followinr prohlem to processor single prnv'de to system just multi-purpose to the community of users. . shares time round-rohin scheduling procedure N using terminals, with a Quantum one request has to wait, on the average, for values of N ranging from we also want to know how much hatch processing in a of we want to know how long a one-second accomplished our solve: second; 50; is ed. The OPS system at Project MAC was developed k 8 the background during periods when 1 to can be none of the N terminals is requesting service. For equal N connected, we can to number the answer these of terminals questions time-sharing operation introspective; that gather statistics about itself. we device in general, unless we operation to a are But willing stream of perturbations in making by is, N, the by having it cannot to currently use this subject The the public relations side of such an approach to the prohlem gives even the most callous administrator substantial reason to pause. Simulation is a more feasible tack, as any pood student of the art will hasten simulation does not tell to disturb rhanrinp us, clientele, the in N a can be is to Ry virtue of and accomplished with great dispatch, still more elepant solution A develop a queueinp model with parameter. as N problem the to suitable simplifying assumptions, tbp mo^pl heromps difference equations. to A set of a compact algorithm can be propremmp^ solve the equations recursively. patberinp The benefits and drawbacks of empirical data vs. simulation documented, mathematical vs. analysis well arr> What we would really likp to be able to do little of all three, back and forth, a gradually our until is desired increasing comprehension of the problem becomes the sol ut ion, This over iterative process can expand several weeks or into months even production-oriented natch setting- a in Consider sequence required to propram the algorithm; statistical analyses necessary for estimating and reducing data to combine all that probability classical with rp.ppptpr': simulation and contemplation of i how this process can be very costly in time. the process requires a flexible simulation Simscript, pood statistical subroutines, multiple repression, debuppinp aids, traditional a the debugging add to this the reiat ionsbips distributions; complications results; t'> series of runs ^nd In of the you see addition, like system, like Thl-square like traces and an^' dumps, PACF 10 a desk calculator, graphical displays, and so on. In a t ime-shar ng environment/ we can hope for match of computer process. Indeed, in with the creative on-line system facilities provides that We hope can with us motivations the for an variety of need, and allows us to switch hack v/e debugging, between prohl pn-sol vi ng or this has been one of the main the development of time sharing. forth and modeling, calculating, better a i simulating, modifying, displays, and analysis, with minimal effort and expense. The OPS system has these features, and brings us closer to the day when the total process describing might occupy an able researcher have been lonper than we that no one interesting afternoon at his terminal. JL, The OPS System The OPS system is a multi-purpose with on-line facilities for: calculations; statistical analyses without need for graduated entails minimal set-up costs, giving Subroutines the user added arc to adapt or great is levels simple system with to his of and flexibility subtracted the instant incremental Switching among facilities user interaction. allowing multiple as compilation; modeling of computer simulations; and use. such vector and FORTRAN and MAO type programming with regressions; execution matrix symbolic apparatus modular of ease, own ; PA^F 11 speci f! cat ions on 1 I . Information about the system ne. The OPS system has recently available command at Project MAO. and these will made been giving In the user can specify operators stored OPS available Is In a publicly the command, file, his personal be loaded with the standard operators of the precompiled RSS Operators system. subroutines. They can arc. be simply loaded load at time, dynamically any time thereafter. By means of the OPS system, 1. Pall the user can: operators by name from the console; Compound operators into MAn or FORTRAN 2. like type programs that may themselves be called operators 3. Fxecute (or test) while compounding; k. Compound (or remember) while executing; compound operators and their Fdit 5. parameters either from the console or from a compound operator; 6. Refer symbolically to common storage by cell or array name- Dynamically modify the mapping of common storage at execution time; contents 7. Add operators without them Into core as needed; 8. limit level the Intensify or reduce 9. interaction by means of switch settings. and of and bring user or PAPF 12 Standard Operators 6. Among the standard operators that cone with the system are: 1. SFT, which like is general the statement of FORTRAN and MAD, except that assignment (=) symhols can its denote complete matrices and vectors/ as well elements. as Thus, executing the operator SFT may cause 20 x a = n 20 A 20 x + R LOn. (C) * matrix A to he added product of to the 20 scalar matrix (whose elements ara all equal matrix need lop of the constant T)„ stored explicitly. scalar The SFT also provides rire referred to by the be of parenthesis following the in the matrix Flements customarv Pimensions may he symbolic, as notation. not general multiplication and transposition of matrices, matrices to a example: SFT n(l,J) 2. IF and I FR the MAD conditional = (pronounced IF-R), which statement, upon the truth value of 3. a and cause a are> similar branch to depending Roolean proposition. REPFAT and GOTO, which allow for looping, and unconditional k* A(I,C)/SQRT.(B(C,J)) indexing, transfers. TYPF, which permits symbolic entry or print out unformated information to or from common storage. of e PAT 5. SAVFC and LOADT, (pronounced SAVF-C which save and retrieve Information hetween and 13 LOAD-C), common storape and disc, 6. SAVFS, LOADS, ENTERS, FRASFS, RFSFTS, PRINTS and (prounouncd SAVF-S etc), which save, retrieve, modify, print the symhol 7. SAVFK, tahle. LOADK, FO TK I PRINTK, FNTFRK, FRASFK, NAMEK, , CALLK, RFTRNK, and TAKFP, which save, delete, and initiate, execute, rename, name, retrieve, edit, print, terminate and compound operators, and distribute their parameters. which TFXT, 8. prints prespec'fie^ out textual information durinp execution. 9. a FIT, which performs dependent variable on multiple linear repression of a set of independent variables. a For exampl FIT fits in TO XI X2 Y X3 the observations stored vectors XI, specified, and X2, and X3. a in the vector Y to those stored A vector of weights may vector containing the residuals of fit be may be created, 10. RSPHFO, SCHFO, OALLRK, and RFTPNA, operators for form which on-line PANTFL, DFLAY, a model inp LOCAL, us'np simulation of packapp en OALL^K, apen^a that schedules actions and events. 11. FORMAT, INPUT, and OUTPUT, which arbitrarily formated readinp and printinp in FORTRAN. make the possible sense of . PAHF 1U which VIEW, 12. pives snapshot a system key of variables for error checkinp. FRROR, which 13. diagnostic provides information on common user mistakes, CTSS, which allows execution of lit. HTSS any command from within the OPS system. nuiDF, which provides 15. information descriptive on the OPS system. DRAW, 16. exponential, d i which furnishes normal, draw random a thp probability rectangular or from str but ion 7. i The Fut u re Future time sharing supprvisors will havinp systems flexibly modules, correct many a processors i nterconnectpd computer on run many . These systpms number of current technical deficiencies sharing operation. They will for provide in thp allocation of storape throuph pape turninp, so that will not have to specify or data requirements when ComputerLand they will he load bepins permit his all the to assembled as pure identified sepments of memory. time Hynamic a uspr en rl with the interact sharinp procedures will propramminr by different users, not only of processors and storape, but also packapes memory active and in propram symbolically . PARF 15 advances These server's the on side There is still much work to he done operation. it will are the there, and Progress will also henefit the user directly. on the user's side in the form of more natural much wider range of terminal of come languages, improvements equipment/ a in graphical and audio input-output facilities, sn^ bigger an^ better OPS-type systems. The situation today in computation after the turn of electricity (12). ahout what the in it was distribution of The first electric service City illuminated the Fdison early bulbs, light York New in an^' did toaster, or There was plenty of skepticism about the benefits of little else, iron. century the is except run an occasional elevator, distributing electricity in those days- Fach electric light installation was required by law to be accompanied by a light alongside to cover what was at first considered to the very substantia^ likelihood of failure. out, very few of the gas Much progress As it gas be turned lights ever had to be used. been has maHe design the in of the system developments are dwarfed by what has happened on the user's television, hi-fi, distribution lines and turbines since then, but s i rie=-househol d appliances, communications, heating systems, radio, air cond i t i op nr, ? ... , computers challenge in designing better computer system configurations, as well as Today the there is great intellectual programming concepts and software required to make the PACF 16 systems work as Intended (and, h field are dedicated to the task. programming receives is s tor cal I Many of the finest minds than intended). objective ! temporarily dominated by even y, and a better computer the in Project At priority, top 1 MAC, system twofold the MAC concerted effort to foster and implement the utility concept. The broad system poal of Project MAT may he reparded as the development and operation of community utility a computer that is capable of supplying each power to customer where, when, and in the amount needed, (7) Work also is in side of the counter, of examples. In progress at Project MAC on and OPS is only one of a magnitude user's larre numhpr facilities cominp years we may expect users to expand dramatically in the for importance, ar\^ just as applications of electricity have expanded during the past several decades. More and more and creative energy will scientific brainpower shift in this direction. The shift has just hep:un. underway for some time will it Only after it really be meaningful has been to down and talk about the good and the bad of time sharing. sit . PAGE 17 8. References R. Logcher, Structural Language A Problem-oriented Technical Report MAC-TR-6, M.I.T., 1964. Biggs, 1. J. M. and for D. i Problem in an "On a Congestion 3righam, G. 2. Factory", Operations Research , (November 1955). al. The Compat Corbato, F. J. et. 3. System M.I.T. Press, Cambridge, 1963. i bl e Stress Engi neer ng : . Aircraft Time-Shar ng i . "Introduction Corbato, F. J, and Glaser, E. Sharing," Datamat ion , (November 1964), 4. to Time Fried, B. The STL On-1 ne J. and 0. Caller, G. 5. TRW/Space Technology Laboratories, Redondo Beach, Computer j . Cal iforni a, 1964. Computation Facility for "A Multiuser Dennis, J, 3, of (September the ACM 2/ Education and Research", Comm 6. . 1964). 7. Fano, Spectrum , "The MAC System: M. (January 1965). R. The Greenberger, Martin. Report MAC-TR-8, M.I.T., 1964* 8. A Progress Report", 0PS-1 I EEE Techn cal Manual i Computer for New Methodology Greenberger, Martin. A 1964. Simulation Technical Report MAC-TR-13, M.I.T./ 9. . D. Ness, and Greenberger, M., Jones, M., Morris, J., M.I.T., MAC-M-233, System", "Trial Launching of the OPS-3 10. April 1965. "Priority Scheduling of Greenberger, Martin. 11. Vol. 13, Time-Shared Computer Systems", Bui leti n of ORSA Supplement 1, Spring 1965 (Abstract). , 12. Greenberger, Martin. "The Computers of Tomorrow", Atlantic Monthly (May 1964). , The . PAGE 18 Hellerman, H. 13. Translator System", Comm "Experimental . of the ACM 7 Personalized (July 196*0. Array McCarthy, J. "Time-Sharing Computer Systems"/ 14. Management and the Computer of the Future CM. Greenberger, Ed.)/ M.I.T. Press, Cambridge, 1962. . Morrisey, J. J, (November 1964) 15, Quicktran "The Datamat ion . System", Ross, T. 0. and Feldman, C. and G. Verbal Language for the AED System A Progress Report Report MAC-TR-4, M.I.T., 1964. 16. . : Schwartz, J. "A General -Purpose Time-Sharing 17. AFIPS Proceedi nes 25, (1964) p. 397. Shaw, J. 1964). 18. D. "The JOSS System", Datamation . Graphi cal Technical System", (November 19. R. "Man-Machine Console Facilities Stotz, Compu ter-Ai ded Design", AF PS Conference Proceedi ngs (1963). I for 23 , 20. Sutherland, I. E. Graphi cal Sketchpad A Man-Machi ne Communi cat ion Lincoln System Technical Report 296, Laboratory, January 30, 1963. : . Weizenbaum, J. System within CTSS. 21. 1964. Programmi ng An Open-En Jed QPL-1 M.I.T., Technical Report MAC-TR-7, : OPT 19SF *