{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2023,10,21]],"date-time":"2023-10-21T05:40:47Z","timestamp":1697866847593},"reference-count":35,"publisher":"Wiley","issue":"1","license":[{"start":{"date-parts":[[2006,10,30]],"date-time":"2006-10-30T00:00:00Z","timestamp":1162166400000},"content-version":"vor","delay-in-days":8338,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1984,1]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>We describe the operating system Perseus, developed as part of a study into the issues of computer communications and their impact on operating system and programming language design. Perseus was designed to be portable by virtue of its kernel\u2010based structure and its implementation in Pascal. In particular, machine\u2010dependent code is limited to the kernel and most operating systems functions are provided by server processes, running in user mode. Perseus was designed to evolve into a distributed operating system by virtue of its interprocess communication facilities, based on message\u2010passing. This paper presents an overview of the system and gives an assessment of how far it satisfied its original goals. Specifically, we evaluate its interprocess communication facilities and kernel\u2010based structure, and discuss its portability. We close with a brief history of the project, pointing out major milestones and stumbling blocks.<\/jats:p>","DOI":"10.1002\/spe.4380140105","type":"journal-article","created":{"date-parts":[[2006,11,18]],"date-time":"2006-11-18T03:09:14Z","timestamp":1163819354000},"page":"31-48","source":"Crossref","is-referenced-by-count":0,"title":["Perseus: Retrospective on a portable operating system"],"prefix":"10.1002","volume":"14","author":[{"given":"Willy","family":"Zwaenepoel","sequence":"first","affiliation":[]},{"given":"Keith A.","family":"Lantz","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2006,10,30]]},"reference":[{"key":"e_1_2_1_2_2","first-page":"549","volume-title":"Computer Structures: Principles and Examples","author":"Thacker C. P.","year":"1982"},{"key":"e_1_2_1_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/360248.360253"},{"key":"e_1_2_1_4_2","unstructured":"A.Bechtolsheim F.BaskettandV.Pratt \u2018The SUN workstation architecture\u2019 Tech. report 229 Computer Systems Laboratory Departments of Computer Science and Electrical Engineering Stanford University March1982."},{"key":"e_1_2_1_5_2","unstructured":"K. A.Lantzet al. \u2018Perseus: final report of the IBM joint study on distributed computing\u2019 in preparation."},{"key":"e_1_2_1_6_2","doi-asserted-by":"crossref","unstructured":"F.Baskett J. H.HowardandJ. T.Montague \u2018Task communication in DEMOS\u2019 Proc 6th Symposium on Operating Systems Principles ACM November1977 pp.23\u201332.","DOI":"10.1145\/1067625.806544"},{"key":"e_1_2_1_7_2","doi-asserted-by":"crossref","unstructured":"M. L.Powell \u2018The DEMOS file system\u2019 Proc. 6th Symposium on Operating Systems Principles ACM November1977 pp.33\u201342.","DOI":"10.1145\/1067625.806545"},{"key":"e_1_2_1_8_2","unstructured":"The Bell System Technical Journal Special Issue on UNIX Bell Laboratories July\/August1978."},{"key":"e_1_2_1_9_2","unstructured":"K. A.Lantz \u2018Uniform interfaces for distributed systems\u2019 PhD dissertation University of Rochester 1980 TR63 Department of Computer Science."},{"key":"e_1_2_1_10_2","doi-asserted-by":"publisher","DOI":"10.1109\/MC.1982.1653859"},{"key":"e_1_2_1_11_2","volume-title":"The Thoth System: Multi\u2010Process Structuring and Portability","author":"Cheriton D. R.","year":"1982"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/359060.359074"},{"key":"e_1_2_1_13_2","doi-asserted-by":"publisher","DOI":"10.1145\/365230.365252"},{"key":"e_1_2_1_14_2","doi-asserted-by":"publisher","DOI":"10.1109\/TCOM.1980.1094684"},{"key":"e_1_2_1_15_2","unstructured":"D. C.OppenandY. K.Dalal \u2018The clearinghouse: a decentralized agent for locating named objects in a distributed environment\u2019 Tech. report O P D\u201078103 Xerox Office Products Division Systems Development Department October1981."},{"key":"e_1_2_1_16_2","unstructured":"T. R.Gross K. A.Lantz K.MarzulloandW.Zwaenepoel \u2018Uniform access to resources in Perseus\u2019 Perseus Report Computer Systems Laboratory Departments of Computer Science and Electrical Engineering Stanford University June1981."},{"key":"e_1_2_1_17_2","unstructured":"K. A.Lantz \u2018A universal directory service\u2019 in preparation."},{"key":"e_1_2_1_18_2","doi-asserted-by":"crossref","unstructured":"L.Pouzin \u2018Virtual circuits vs. datagrams\u2014technical and political problems\u2019 Proc. National Computer Conference AFIPS June1976 pp.483\u2013494.","DOI":"10.1145\/1499799.1499870"},{"key":"e_1_2_1_19_2","doi-asserted-by":"crossref","unstructured":"M. L.PowellandB. P.Miller \u2018Process migration in DEMOS\/MP\u2019 Proc. 9th Symposium on Operating Systems Principles ACM October1983 pp.110\u2013119.","DOI":"10.1145\/773379.806619"},{"key":"e_1_2_1_20_2","doi-asserted-by":"crossref","unstructured":"R. F.RashidandG. G.Robertson Accent: a communication oriented network operating system kernel Proc. 8th Symposium on Operating Systems Principles ACM December1981 pp.64\u201475.","DOI":"10.1145\/1067627.806593"},{"key":"e_1_2_1_21_2","doi-asserted-by":"publisher","DOI":"10.1145\/850697.850704"},{"key":"e_1_2_1_22_2","doi-asserted-by":"crossref","unstructured":"M. H.SolomonandR. A.Finkel \u2018The Roscoe distributed operating system\u2019 Proc. 7th Symposium on Operating Systems Principles ACM December1979 pp.108\u2013114.","DOI":"10.1145\/800215.806577"},{"key":"e_1_2_1_23_2","unstructured":"J. H.Saltzer D. P.ReedandD. D.Clark \u2018End\u2010to\u2010end arguments in system design\u2019 Proc. 2nd International Conference on Distributed Computing Systems INRIA\/LRI April1981 pp.509\u2013512."},{"key":"e_1_2_1_24_2","unstructured":"R. F.Rashid \u2018An inter\u2010process communication facility for UNIX\u2019 Tech. report CMU\u2010CS\u201080\u2013124 Department of Computer Science Carnegie\u2010Mellon University March1980."},{"key":"e_1_2_1_25_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1982.234956"},{"key":"e_1_2_1_26_2","doi-asserted-by":"publisher","DOI":"10.1145\/360051.360074"},{"key":"e_1_2_1_27_2","doi-asserted-by":"publisher","DOI":"10.1145\/850657.850658"},{"key":"e_1_2_1_28_2","doi-asserted-by":"publisher","DOI":"10.1145\/358818.358822"},{"key":"e_1_2_1_29_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1982.235250"},{"key":"e_1_2_1_30_2","doi-asserted-by":"crossref","unstructured":"D. R.CheritonandW.Zwaenepoel \u2018The distributed V kernel and its performance for diskless workstations\u2019.Proc. 9th Symposium on Operating Systems Principles ACM October1983 pp.129\u2013140.","DOI":"10.1145\/773379.806621"},{"key":"e_1_2_1_31_2","unstructured":"K. A.Lantz D. R.CheritonandW. I.Nowicki \u2018Third generation graphics for distributed systems\u2019 Tech. report STAN\u2010CS\u201082\u2013958 Department of Computer Science Stanford University February1983. To appear in ACM Transactions on Graphics."},{"key":"e_1_2_1_32_2","doi-asserted-by":"crossref","unstructured":"G.Popek B.Walker J.Chow D.Edwards C.Kline G.RudisinandG.Thiel \u2018LOCUS: a network transparent high reliability distributed system\u2019 Proc.8th Symposium on Operating Systems Principles ACM December1981 pp.169\u2013177.","DOI":"10.1145\/1067627.806605"},{"key":"e_1_2_1_33_2","first-page":"819","volume-title":"Proc. Information Processing 77","author":"Morris D.","year":"1977"},{"key":"e_1_2_1_34_2","doi-asserted-by":"crossref","unstructured":"A. D.BirrellandB. J.Nelson \u2018Communication techniques for remote procedure calls\u2019 Presented at the9th Symposium on Operating Systems Principles ACM October1983. To appear inACM Transactions on Computer Systems.","DOI":"10.1145\/800217.806609"},{"key":"e_1_2_1_35_2","unstructured":"J. L.Hennessy \u2018Pascal*: a Pascal based systems programming language\u2019 Tech. report 174 Computer Systems Laboratory Departments of Computer Science and Electrical Engineering Stanford University June1980."},{"key":"e_1_2_1_36_2","doi-asserted-by":"publisher","DOI":"10.1145\/356869.356872"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380140105","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380140105","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,10,20]],"date-time":"2023-10-20T07:56:26Z","timestamp":1697788586000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380140105"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1984,1]]},"references-count":35,"journal-issue":{"issue":"1","published-print":{"date-parts":[[1984,1]]}},"alternative-id":["10.1002\/spe.4380140105"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380140105","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1984,1]]}}}