{"id":"https://openalex.org/W2464211874","doi":"https://doi.org/10.1109/tse.2016.2584066","title":"Automating Live Update for Generic Server Programs","display_name":"Automating Live Update for Generic Server Programs","publication_year":2016,"publication_date":"2016-06-23","ids":{"openalex":"https://openalex.org/W2464211874","doi":"https://doi.org/10.1109/tse.2016.2584066","mag":"2464211874"},"language":"en","primary_location":{"id":"doi:10.1109/tse.2016.2584066","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tse.2016.2584066","pdf_url":null,"source":{"id":"https://openalex.org/S8351582","display_name":"IEEE Transactions on Software Engineering","issn_l":"0098-5589","issn":["0098-5589","1939-3520","2326-3881"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320439","host_organization_name":"IEEE Computer Society","host_organization_lineage":["https://openalex.org/P4310320439","https://openalex.org/P4310319808"],"host_organization_lineage_names":["IEEE Computer Society","Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Software Engineering","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://research.vu.nl/en/publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5083941826","display_name":"Cristiano Giuffrida","orcid":"https://orcid.org/0000-0002-8329-5929"},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Cristiano Giuffrida","raw_affiliation_strings":["Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-8329-5929","affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands","institution_ids":["https://openalex.org/I865915315"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5055719945","display_name":"C\u0103lin Iorgulescu","orcid":"https://orcid.org/0000-0003-0382-6820"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Clin Iorgulescu","raw_affiliation_strings":["\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne, Lausanne, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne, Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5031168005","display_name":"Giordano Tamburrelli","orcid":null},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Giordano Tamburrelli","raw_affiliation_strings":["Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands","institution_ids":["https://openalex.org/I865915315"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5048320589","display_name":"Andrew S. Tanenbaum","orcid":"https://orcid.org/0000-0002-9547-801X"},"institutions":[{"id":"https://openalex.org/I865915315","display_name":"Vrije Universiteit Amsterdam","ror":"https://ror.org/008xxew50","country_code":"NL","type":"education","lineage":["https://openalex.org/I865915315"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Andrew S. Tanenbaum","raw_affiliation_strings":["Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Vrije Universiteit Amsterdam, De Boelelaan, Amsterdam, Netherlands","institution_ids":["https://openalex.org/I865915315"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":1.9816,"has_fulltext":true,"cited_by_count":15,"citation_normalized_percentile":{"value":0.88844653,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"43","issue":"3","first_page":"207","last_page":"225"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T12127","display_name":"Software System Performance and Reliability","score":0.9994000196456909,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10772","display_name":"Distributed systems and fault tolerance","score":0.9991999864578247,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9984999895095825,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8679935336112976},{"id":"https://openalex.org/keywords/initialization","display_name":"Initialization","score":0.6986042261123657},{"id":"https://openalex.org/keywords/garbage-collection","display_name":"Garbage collection","score":0.6898412704467773},{"id":"https://openalex.org/keywords/overhead","display_name":"Overhead (engineering)","score":0.6612246632575989},{"id":"https://openalex.org/keywords/trace","display_name":"TRACE (psycholinguistics)","score":0.5031678080558777},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.4988229274749756},{"id":"https://openalex.org/keywords/state","display_name":"State (computer science)","score":0.4902210831642151},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.48747897148132324},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.4592978060245514},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.40919890999794006},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3639989495277405},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.35284677147865295},{"id":"https://openalex.org/keywords/garbage","display_name":"Garbage","score":0.1640838086605072}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8679935336112976},{"id":"https://openalex.org/C114466953","wikidata":"https://www.wikidata.org/wiki/Q6034165","display_name":"Initialization","level":2,"score":0.6986042261123657},{"id":"https://openalex.org/C105122174","wikidata":"https://www.wikidata.org/wiki/Q322202","display_name":"Garbage collection","level":3,"score":0.6898412704467773},{"id":"https://openalex.org/C2779960059","wikidata":"https://www.wikidata.org/wiki/Q7113681","display_name":"Overhead (engineering)","level":2,"score":0.6612246632575989},{"id":"https://openalex.org/C75291252","wikidata":"https://www.wikidata.org/wiki/Q1315756","display_name":"TRACE (psycholinguistics)","level":2,"score":0.5031678080558777},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.4988229274749756},{"id":"https://openalex.org/C48103436","wikidata":"https://www.wikidata.org/wiki/Q599031","display_name":"State (computer science)","level":2,"score":0.4902210831642151},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.48747897148132324},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.4592978060245514},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.40919890999794006},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3639989495277405},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.35284677147865295},{"id":"https://openalex.org/C75403996","wikidata":"https://www.wikidata.org/wiki/Q5521979","display_name":"Garbage","level":2,"score":0.1640838086605072},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C41895202","wikidata":"https://www.wikidata.org/wiki/Q8162","display_name":"Linguistics","level":1,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0}],"mesh":[],"locations_count":4,"locations":[{"id":"doi:10.1109/tse.2016.2584066","is_oa":false,"landing_page_url":"https://doi.org/10.1109/tse.2016.2584066","pdf_url":null,"source":{"id":"https://openalex.org/S8351582","display_name":"IEEE Transactions on Software Engineering","issn_l":"0098-5589","issn":["0098-5589","1939-3520","2326-3881"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310320439","host_organization_name":"IEEE Computer Society","host_organization_lineage":["https://openalex.org/P4310320439","https://openalex.org/P4310319808"],"host_organization_lineage_names":["IEEE Computer Society","Institute of Electrical and Electronics Engineers"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"IEEE Transactions on Software Engineering","raw_type":"journal-article"},{"id":"pmh:oai:research.vu.nl:openaire_cris_publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","is_oa":false,"landing_page_url":"https://research.vu.nl/en/publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","pdf_url":null,"source":{"id":"https://openalex.org/S4306401107","display_name":"VU Research Portal","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I865915315","host_organization_name":"Vrije Universiteit Amsterdam","host_organization_lineage":["https://openalex.org/I865915315"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Giuffrida, C, Iorgulescu, C, Tanenbaum, A S & Tamburrelli, G 2016, 'Automating Live Update for Generic Server Programs', IEEE Transactions on Software Engineering, vol. PP, no. 99. https://doi.org/10.1109/TSE.2016.2584066","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:research.vu.nl:publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","is_oa":true,"landing_page_url":"https://hdl.handle.net/1871.1/3ae64b99-8350-4eb6-bb28-5da4e48d0644","pdf_url":"https://research.vu.nl/en/publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","source":{"id":"https://openalex.org/S4306401107","display_name":"VU Research Portal","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I865915315","host_organization_name":"Vrije Universiteit Amsterdam","host_organization_lineage":["https://openalex.org/I865915315"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Giuffrida, C, Iorgulescu, C, Tanenbaum, A S & Tamburrelli, G 2016, 'Automating Live Update for Generic Server Programs', IEEE Transactions on Software Engineering, vol. PP, no. 99. https://doi.org/10.1109/TSE.2016.2584066","raw_type":"info:eu-repo/semantics/article"},{"id":"pmh:oai:infoscience.epfl.ch:227753","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/227753","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I5124864","host_organization_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","host_organization_lineage":["https://openalex.org/I5124864"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"}],"best_oa_location":{"id":"pmh:oai:research.vu.nl:publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","is_oa":true,"landing_page_url":"https://hdl.handle.net/1871.1/3ae64b99-8350-4eb6-bb28-5da4e48d0644","pdf_url":"https://research.vu.nl/en/publications/3ae64b99-8350-4eb6-bb28-5da4e48d0644","source":{"id":"https://openalex.org/S4306401107","display_name":"VU Research Portal","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I865915315","host_organization_name":"Vrije Universiteit Amsterdam","host_organization_lineage":["https://openalex.org/I865915315"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Giuffrida, C, Iorgulescu, C, Tanenbaum, A S & Tamburrelli, G 2016, 'Automating Live Update for Generic Server Programs', IEEE Transactions on Software Engineering, vol. PP, no. 99. https://doi.org/10.1109/TSE.2016.2584066","raw_type":"info:eu-repo/semantics/article"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G7278742857","display_name":null,"funder_award_id":"227874","funder_id":"https://openalex.org/F4320334678","funder_display_name":"European Research Council"}],"funders":[{"id":"https://openalex.org/F4320334678","display_name":"European Research Council","ror":"https://ror.org/0472cxd90"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2464211874.pdf","grobid_xml":"https://content.openalex.org/works/W2464211874.grobid-xml"},"referenced_works_count":62,"referenced_works":["https://openalex.org/W313428","https://openalex.org/W1214620947","https://openalex.org/W1244076508","https://openalex.org/W1486522688","https://openalex.org/W1486784874","https://openalex.org/W1599340145","https://openalex.org/W1602079523","https://openalex.org/W1734886231","https://openalex.org/W1973659375","https://openalex.org/W1978918413","https://openalex.org/W1998009565","https://openalex.org/W2015574046","https://openalex.org/W2015739534","https://openalex.org/W2020473227","https://openalex.org/W2020961463","https://openalex.org/W2025254124","https://openalex.org/W2027137911","https://openalex.org/W2034613985","https://openalex.org/W2038897371","https://openalex.org/W2049659774","https://openalex.org/W2054175778","https://openalex.org/W2094631165","https://openalex.org/W2096910097","https://openalex.org/W2104696904","https://openalex.org/W2108247069","https://openalex.org/W2113103747","https://openalex.org/W2118005163","https://openalex.org/W2119760639","https://openalex.org/W2119834487","https://openalex.org/W2121433585","https://openalex.org/W2123524055","https://openalex.org/W2125951560","https://openalex.org/W2125977605","https://openalex.org/W2127023692","https://openalex.org/W2130473288","https://openalex.org/W2130478289","https://openalex.org/W2135248477","https://openalex.org/W2138510645","https://openalex.org/W2139430599","https://openalex.org/W2142138831","https://openalex.org/W2145150838","https://openalex.org/W2145982220","https://openalex.org/W2153185479","https://openalex.org/W2153530968","https://openalex.org/W2154698535","https://openalex.org/W2162765234","https://openalex.org/W2163171633","https://openalex.org/W2169275155","https://openalex.org/W2400355634","https://openalex.org/W3152282438","https://openalex.org/W3152304858","https://openalex.org/W4231218853","https://openalex.org/W4231606388","https://openalex.org/W4231653287","https://openalex.org/W4246166885","https://openalex.org/W6629036170","https://openalex.org/W6629184407","https://openalex.org/W6636140832","https://openalex.org/W6637374623","https://openalex.org/W6676156027","https://openalex.org/W6678842459","https://openalex.org/W6712397143"],"related_works":["https://openalex.org/W3204184292","https://openalex.org/W3176564347","https://openalex.org/W1985458517","https://openalex.org/W2355833770","https://openalex.org/W3031039437","https://openalex.org/W3095877357","https://openalex.org/W2536863148","https://openalex.org/W183202219","https://openalex.org/W10861731","https://openalex.org/W2072565696"],"abstract_inverted_index":{"The":[0,89],"pressing":[1],"demand":[2],"to":[3,71,93,98,110,114,126,161],"deploy":[4],"software":[5,78],"updates":[6,79],"without":[7,212],"stopping":[8],"running":[9,96],"programs":[10,66,181],"has":[11],"fostered":[12],"much":[13],"research":[14],"on":[15,30,122,151,173,178,204],"live":[16,49,57,86],"update":[17,35,58,87],"systems":[18],"in":[19,68],"the":[20,31,34,46,84,95,107,129,139,145,164,169,174,196],"past":[21],"decades.":[22],"Prior":[23],"solutions,":[24,73],"however,":[25],"either":[26],"make":[27],"strong":[28],"assumptions":[29],"nature":[32],"of":[33,48,83,138,154,198],"or":[36],"require":[37],"extensive":[38],"and":[39,63,80,104,133,156,167,206],"error-prone":[40],"manual":[41],"effort,":[42],"factors":[43],"which":[44],"discourage":[45],"adoption":[47],"update.":[50],"This":[51],"paper":[52],"presentsMutable":[53],"Checkpoint-Restart(MCR),":[54],"a":[55,101,115,135,152],"new":[56,108],"solution":[59],"for":[60],"generic":[61],"(multiprocess":[62],"multithreaded)":[64],"server":[65,180],"written":[67],"C.":[69],"Compared":[70],"prior":[72],"MCR":[74,149],"can":[75,188],"support":[76],"arbitrary":[77],"automate":[81,190],"most":[82],"common":[85],"operations.":[88],"key":[90],"idea":[91],"is":[92],"allow":[94,106],"version":[97,109],"safely":[99],"reach":[100],"quiescent":[102],"state":[103,171],"then":[105],"restart":[111],"as":[112,119],"similarly":[113],"fresh":[116],"program":[117,131,140],"initialization":[118],"possible,":[120],"relying":[121],"existing":[123],"code":[124],"paths":[125],"automatically":[127],"restore":[128],"old":[130],"threads":[132],"reinitialize":[134],"relevant":[136],"portion":[137],"data":[141,147],"structures.":[142],"To":[143],"transfer":[144],"remaining":[146],"structures,":[148],"relies":[150],"combination":[153],"precise":[155],"conservative":[157],"garbage":[158],"collection":[159],"techniques":[160,187],"trace":[162],"all":[163],"global":[165],"pointers":[166],"apply":[168],"required":[170],"transformations":[172],"fly.":[175],"Experimental":[176],"results":[177],"popular":[179],"(Apache":[182],"httpd,nginx,OpenSSHandvsftpd)":[183],"confirm":[184],"that":[185],"our":[186],"effectively":[189],"problems":[191],"previously":[192],"deemed":[193],"difficult":[194],"at":[195],"cost":[197],"negligible":[199],"performance":[200],"overhead":[201,209],"(2":[202],"percent":[203],"average)":[205],"moderate":[207],"memory":[208],"(3.9$\\times$on":[210],"average,":[211],"optimizations).":[213]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":2},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":1},{"year":2020,"cited_by_count":2},{"year":2019,"cited_by_count":2},{"year":2018,"cited_by_count":4},{"year":2017,"cited_by_count":1}],"updated_date":"2026-08-13T07:04:57.449891","created_date":"2025-10-10T00:00:00"}
