{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:41:39Z","timestamp":1750308099943,"version":"3.41.0"},"reference-count":24,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2005,5,21]],"date-time":"2005-05-21T00:00:00Z","timestamp":1116633600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGSOFT Softw. Eng. Notes"],"published-print":{"date-parts":[[2005,7]]},"abstract":"<jats:p>Self-healing systems require that repair mechanisms are available to resolve problems that arise while the system executes. Managed execution environments such as the Common Language Runtime (CLR) and Java Virtual Machine (JVM) provide a number of application services (application isolation, security sandboxing, garbage collection and structured exception handling) which are geared primarily at making managed applications more robust. However, none of these services directly enables applications to perform repairs or consistency checks of their components. From a design and implementation standpoint, the preferred way to enable repair in a self-healing system is to use an externalized repair\/adaptation architecture rather than hardwiring adaptation logic inside the system where it is harder to analyze, reuse and extend. We present a framework that allows a repair engine to dynamically attach and detach to\/from a managed application while it executes essentially adding repair mechanisms as another application service provided in the execution environment.<\/jats:p>","DOI":"10.1145\/1082983.1083066","type":"journal-article","created":{"date-parts":[[2005,11,7]],"date-time":"2005-11-07T19:28:32Z","timestamp":1131391712000},"page":"1-7","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":2,"title":["Manipulating managed execution runtimes to support self-healing systems"],"prefix":"10.1145","volume":"30","author":[{"given":"Rean","family":"Griffith","sequence":"first","affiliation":[{"name":"Columbia University"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gail","family":"Kaiser","sequence":"additional","affiliation":[{"name":"Columbia University"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2005,5,21]]},"reference":[{"key":"e_1_2_1_1_1","volume-title":"System support for online reconfiguration","author":"C. Soules","year":"2003","unstructured":"C. Soules et. al. System support for online reconfiguration , 2003 . C. Soules et. al. System support for online reconfiguration, 2003."},{"key":"e_1_2_1_2_1","volume-title":"Dependable systems and networks - performance and dependability symposium (DNS-PDS)","author":"Candea G.","year":"2002","unstructured":"G. Candea , J. Cutler , and A. Fox . Improving availability with recursive micro-reboots: A soft-state case study . In Dependable systems and networks - performance and dependability symposium (DNS-PDS) , 2002 . G. Candea, J. Cutler, and A. Fox. Improving availability with recursive micro-reboots: A soft-state case study. In Dependable systems and networks - performance and dependability symposium (DNS-PDS), 2002."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2004.175"},{"key":"e_1_2_1_5_1","volume-title":"The Autonomic Computing Workshop 5th Workshop on Active Middleware Services (AMS)","author":"Gail Kaiser","year":"2003","unstructured":"Gail Kaiser et. al. Kinesthetics extreme : An enternal infrastructure for monitoring distributed legacy systems . In The Autonomic Computing Workshop 5th Workshop on Active Middleware Services (AMS) , June 2003 . Gail Kaiser et. al. Kinesthetics extreme: An enternal infrastructure for monitoring distributed legacy systems. In The Autonomic Computing Workshop 5th Workshop on Active Middleware Services (AMS), June 2003."},{"key":"e_1_2_1_6_1","volume-title":"Proceedings European Conference on Object-oriented Programming","volume":"1241","author":"Gregor Kiczales","year":"1997","unstructured":"Gregor Kiczales et. al. Aspect-oriented programming . In Proceedings European Conference on Object-oriented Programming , volume 1241 . Springer-Verlag, Berlin, Heidelberg, and New York , 1997 . Gregor Kiczales et. al. Aspect-oriented programming. In Proceedings European Conference on Object-oriented Programming, volume 1241. Springer-Verlag, Berlin, Heidelberg, and New York, 1997."},{"key":"e_1_2_1_7_1","volume-title":"Adding self-healing capabilities to the common language runtime. Technical report","author":"Griffith R.","year":"2005","unstructured":"R. Griffith and G. Kaiser . Adding self-healing capabilities to the common language runtime. Technical report , Columbia University , 2005 . R. Griffith and G. Kaiser. Adding self-healing capabilities to the common language runtime. Technical report, Columbia University, 2005."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.485222"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/MC.2003.1160055"},{"key":"e_1_2_1_10_1","volume-title":"An aosd implementation for c#. Master's thesis","author":"Kim H.","year":"2002","unstructured":"H. Kim . Aspectc# : An aosd implementation for c#. Master's thesis , Department of Computer Science Trinity College Dublin , 2002 . H. Kim. Aspectc#: An aosd implementation for c#. Master's thesis, Department of Computer Science Trinity College Dublin, 2002."},{"key":"e_1_2_1_11_1","volume-title":"ICSE Workshop on Architecting Dependable Systems","author":"Koopman P.","year":"2003","unstructured":"P. Koopman . Elements of the self-healing problem space . In ICSE Workshop on Architecting Dependable Systems , 2003 . P. Koopman. Elements of the self-healing problem space. In ICSE Workshop on Architecting Dependable Systems, 2003."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.60317"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1147\/sj.433.0598"},{"key":"e_1_2_1_14_1","volume-title":"Claw: Cross-language load-time aspect weaving on microsoft's clr demonstration at aosd","author":"Lam J.","year":"2002","unstructured":"J. Lam . Claw: Cross-language load-time aspect weaving on microsoft's clr demonstration at aosd 2002 . J. Lam. Claw: Cross-language load-time aspect weaving on microsoft's clr demonstration at aosd 2002."},{"key":"e_1_2_1_15_1","volume-title":"Microsoft Press","author":"Lidin S.","year":"2002","unstructured":"S. Lidin . Inside Microsoft . NET IL Assembler . Microsoft Press , 2002 . S. Lidin. Inside Microsoft .NET IL Assembler. Microsoft Press, 2002."},{"key":"e_1_2_1_16_1","volume-title":"Proceedings of the Workshop on Unanticipated Software Evolution","author":"Dmitriev M.","year":"2002","unstructured":"M. Dmitriev . Application of the java hotswap technology to advanced profiling . In Proceedings of the Workshop on Unanticipated Software Evolution , June 2002 . M. Dmitriev. Application of the java hotswap technology to advanced profiling. In Proceedings of the Workshop on Unanticipated Software Evolution, June 2002."},{"volume-title":"Common language runtime metadata unmanaged api","year":"2002","key":"e_1_2_1_17_1","unstructured":"Microsoft. Common language runtime metadata unmanaged api , 2002 . Microsoft. Common language runtime metadata unmanaged api, 2002."},{"volume-title":"Common language runtime profiling","year":"2002","key":"e_1_2_1_18_1","unstructured":"Microsoft. Common language runtime profiling , 2002 . Microsoft. Common language runtime profiling, 2002."},{"key":"e_1_2_1_19_1","unstructured":"S. Microsystems. The jvm tool interface version 1.0 http:\/\/java.sun.com\/j2se\/1.5.0\/docs\/guide\/jvmti\/jvmti.html.  S. Microsystems. The jvm tool interface version 1.0 http:\/\/java.sun.com\/j2se\/1.5.0\/docs\/guide\/jvmti\/jvmti.html."},{"key":"e_1_2_1_20_1","unstructured":"A. Mikunov. Rewrite msil code on the fly with the .net framework profiling api.  A. Mikunov. Rewrite msil code on the fly with the .net framework profiling api."},{"key":"e_1_2_1_21_1","volume-title":"Aspect.net - a cross-language aspect weaver. Master's thesis","author":"Rasmussen B.","year":"2002","unstructured":"B. Rasmussen , C. Jensen , J. Nielsen , and L. Jensen . Aspect.net - a cross-language aspect weaver. Master's thesis , Department of Computer Science Trinity College Dublin , 2002 . B. Rasmussen, C. Jensen, J. Nielsen, and L. Jensen. Aspect.net - a cross-language aspect weaver. Master's thesis, Department of Computer Science Trinity College Dublin, 2002."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1145\/568760.568804"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1109\/52.199735"},{"key":"e_1_2_1_24_1","volume-title":"Workshop on Architecting Dependable Systems","author":"Shelton C.","year":"2002","unstructured":"C. Shelton and P. Koopman . Using architectural properties to model and measure system-wide graceful degradation . In Workshop on Architecting Dependable Systems , 2002 . C. Shelton and P. Koopman. Using architectural properties to model and measure system-wide graceful degradation. In Workshop on Architecting Dependable Systems, 2002."},{"key":"e_1_2_1_25_1","unstructured":"N. Yevik. Introduction to ibm jvm for linux jit diagnostics. www-128.ibm.com\/developerworks\/eserver\/library\/esJITDiag.html.  N. Yevik. Introduction to ibm jvm for linux jit diagnostics. www-128.ibm.com\/developerworks\/eserver\/library\/esJITDiag.html."}],"container-title":["ACM SIGSOFT Software Engineering Notes"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1082983.1083066","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1082983.1083066","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T16:08:02Z","timestamp":1750262882000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1082983.1083066"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005,5,21]]},"references-count":24,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2005,7]]}},"alternative-id":["10.1145\/1082983.1083066"],"URL":"https:\/\/doi.org\/10.1145\/1082983.1083066","relation":{"is-identical-to":[{"id-type":"doi","id":"10.1145\/1083063.1083066","asserted-by":"subject"}]},"ISSN":["0163-5948"],"issn-type":[{"type":"print","value":"0163-5948"}],"subject":[],"published":{"date-parts":[[2005,5,21]]},"assertion":[{"value":"2005-05-21","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}