{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,1,12]],"date-time":"2025-01-12T00:40:10Z","timestamp":1736642410997,"version":"3.32.0"},"reference-count":20,"publisher":"Wiley","issue":"9","license":[{"start":{"date-parts":[[2006,10,30]],"date-time":"2006-10-30T00:00:00Z","timestamp":1162166400000},"content-version":"vor","delay-in-days":4807,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1993,9]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>The usual way of installing a new version of a piece of software is to shut down the running program and then install the new version. This necessitates a sometimes unacceptable delay during which service is denied to the users of the software. An on\u2010line software replacement system replaces parts of the software while it is in execution, thus eliminating the shutdown. In this paper, we describe a system for on\u2010line software version change for software written in the C language. When the change is initiated by the user, the system instantiates a new process with the new version of the software, transfers state from the old process to the new one at an appropriate time, and transfers the control to the new process. The user sees a minimal delay in this switchover.<\/jats:p>","DOI":"10.1002\/spe.4380230903","type":"journal-article","created":{"date-parts":[[2006,11,18]],"date-time":"2006-11-18T05:45:01Z","timestamp":1163828701000},"page":"949-964","source":"Crossref","is-referenced-by-count":46,"title":["On\u2010line software version change using state transfer between processes"],"prefix":"10.1002","volume":"23","author":[{"given":"Deepak","family":"Gupta","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Pankaj","family":"Jalote","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"311","published-online":{"date-parts":[[2006,10,30]]},"reference":[{"key":"e_1_2_1_2_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1984.5010202"},{"key":"e_1_2_1_3_2","unstructured":"W. F.Tichy \u2018Design implementation and evaluation of a revision control system\u2019 Proc. 6th Int. Conf. Software Eng. Tokyo 1982 pp.58\u201367."},{"key":"e_1_2_1_4_2","doi-asserted-by":"publisher","DOI":"10.1109\/32.24720"},{"key":"e_1_2_1_5_2","doi-asserted-by":"crossref","unstructured":"D.Perry \u2018The Inscape environment\u2019 Proc. 11th Int. Conf. on Software Eng. 1989 pp.2\u201312.","DOI":"10.1145\/74587.74588"},{"key":"e_1_2_1_6_2","unstructured":"J.Purtillo \u2018The polylith software bus\u2019 Tech. Report no. 2469 University of Maryland 1990. Also to appear inACM Transactions on Programming Languages and Systems."},{"key":"e_1_2_1_7_2","unstructured":"C.Hofmeister E.WhiteandJ.Purtillo \u2018Surgeon: a package for dynamically reconfigurable distributed applications\u2019 Proc. IEEE International Conference on Configurable Distributed Systems March1992."},{"key":"e_1_2_1_8_2","doi-asserted-by":"crossref","unstructured":"J.PurtilloandC.Hofmeister \u2018Dynamic reconfiguration of distributed programs\u2019 IEEE International Conference on Distributed Computing Systems May1991 pp.560\u2013571.","DOI":"10.1109\/ICDCS.1991.148726"},{"key":"e_1_2_1_9_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1985.232231"},{"key":"e_1_2_1_10_2","doi-asserted-by":"publisher","DOI":"10.1109\/32.60317"},{"key":"e_1_2_1_11_2","doi-asserted-by":"crossref","unstructured":"M. R.Barbacci D. L.DoubledayandC. B.Weinstock \u2018Application\u2010level programming\u2019 IEEE International Conference on Distributed Computing Systems 1990 pp.458\u2013465.","DOI":"10.1109\/ICDCS.1990.89315"},{"key":"e_1_2_1_12_2","unstructured":"R. S.Fabry \u2018How to design systems in which modules can be changed on the fly\u2019 Proc. 2nd Int. Conf. Software Eng. 1976."},{"key":"e_1_2_1_13_2","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1978.231515"},{"key":"e_1_2_1_14_2","unstructured":"I.Lee \u2018DYMOS: a dynamic modification system\u2019 Ph.D. Thesis University of Wisconsin 1983."},{"key":"e_1_2_1_15_2","doi-asserted-by":"publisher","DOI":"10.1002\/smr.4360010106"},{"key":"e_1_2_1_16_2","doi-asserted-by":"publisher","DOI":"10.1016\/0164-1212(91)90096-O"},{"key":"e_1_2_1_17_2","unstructured":"M. E.SegalandO.Frieder \u2018Dynamically updating distributed software: supporting change in uncertain and mistrustful environments\u2019 Proc.IEEE Conference on Software Maintenance October1989."},{"key":"e_1_2_1_18_2","doi-asserted-by":"publisher","DOI":"10.1145\/360933.360975"},{"key":"e_1_2_1_19_2","unstructured":"Sun Microsystems Inc. Mountain View CA.Sun OS Reference Manual 1988."},{"key":"e_1_2_1_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/2080.357392"},{"key":"e_1_2_1_21_2","doi-asserted-by":"publisher","DOI":"10.1145\/214451.214452"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380230903","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380230903","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,1,12]],"date-time":"2025-01-12T00:05:58Z","timestamp":1736640358000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380230903"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1993,9]]},"references-count":20,"journal-issue":{"issue":"9","published-print":{"date-parts":[[1993,9]]}},"alternative-id":["10.1002\/spe.4380230903"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380230903","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"type":"print","value":"0038-0644"},{"type":"electronic","value":"1097-024X"}],"subject":[],"published":{"date-parts":[[1993,9]]}}}