{"id":"https://openalex.org/W2054175778","doi":"https://doi.org/10.1145/1542476.1542479","title":"Safe and timely updates to multi-threaded programs","display_name":"Safe and timely updates to multi-threaded programs","publication_year":2009,"publication_date":"2009-06-15","ids":{"openalex":"https://openalex.org/W2054175778","doi":"https://doi.org/10.1145/1542476.1542479","mag":"2054175778"},"language":"en","primary_location":{"id":"doi:10.1145/1542476.1542479","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1542476.1542479","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5012137980","display_name":"Iulian Neamtiu","orcid":"https://orcid.org/0000-0001-9730-9650"},"institutions":[{"id":"https://openalex.org/I103635307","display_name":"University of California, Riverside","ror":"https://ror.org/03nawhv43","country_code":"US","type":"education","lineage":["https://openalex.org/I103635307"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Iulian Neamtiu","raw_affiliation_strings":["University of California, Riverside, Riverside, CA, USA","University of California, RIverside, Riverside, CA, USA"],"affiliations":[{"raw_affiliation_string":"University of California, Riverside, Riverside, CA, USA","institution_ids":["https://openalex.org/I103635307"]},{"raw_affiliation_string":"University of California, RIverside, Riverside, CA, USA","institution_ids":["https://openalex.org/I103635307"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5046625836","display_name":"Michael Hicks","orcid":"https://orcid.org/0000-0002-2759-9223"},"institutions":[{"id":"https://openalex.org/I66946132","display_name":"University of Maryland, College Park","ror":"https://ror.org/047s2c258","country_code":"US","type":"education","lineage":["https://openalex.org/I66946132"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Michael Hicks","raw_affiliation_strings":["University of Maryland, College Park, College Park, MD, USA","University of Maryland, College Park, College Park, MD, USA;"],"affiliations":[{"raw_affiliation_string":"University of Maryland, College Park, College Park, MD, USA","institution_ids":["https://openalex.org/I66946132"]},{"raw_affiliation_string":"University of Maryland, College Park, College Park, MD, USA;","institution_ids":["https://openalex.org/I66946132"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5012137980"],"corresponding_institution_ids":["https://openalex.org/I103635307"],"apc_list":null,"apc_paid":null,"fwci":17.7449,"has_fulltext":false,"cited_by_count":116,"citation_normalized_percentile":{"value":0.99368806,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":91,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"13","last_page":"24"},"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.9987000226974487,"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/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"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.885390043258667},{"id":"https://openalex.org/keywords/programmer","display_name":"Programmer","score":0.8304491639137268},{"id":"https://openalex.org/keywords/thread","display_name":"Thread (computing)","score":0.7965831756591797},{"id":"https://openalex.org/keywords/distributed-computing","display_name":"Distributed computing","score":0.5104216933250427},{"id":"https://openalex.org/keywords/task","display_name":"Task (project management)","score":0.4627729654312134},{"id":"https://openalex.org/keywords/workload","display_name":"Workload","score":0.4510679244995117},{"id":"https://openalex.org/keywords/multithreading","display_name":"Multithreading","score":0.4408141076564789},{"id":"https://openalex.org/keywords/server","display_name":"Server","score":0.4339090883731842},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.34425270557403564},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.3391072154045105}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.885390043258667},{"id":"https://openalex.org/C2778514511","wikidata":"https://www.wikidata.org/wiki/Q1374194","display_name":"Programmer","level":2,"score":0.8304491639137268},{"id":"https://openalex.org/C138101251","wikidata":"https://www.wikidata.org/wiki/Q213092","display_name":"Thread (computing)","level":2,"score":0.7965831756591797},{"id":"https://openalex.org/C120314980","wikidata":"https://www.wikidata.org/wiki/Q180634","display_name":"Distributed computing","level":1,"score":0.5104216933250427},{"id":"https://openalex.org/C2780451532","wikidata":"https://www.wikidata.org/wiki/Q759676","display_name":"Task (project management)","level":2,"score":0.4627729654312134},{"id":"https://openalex.org/C2778476105","wikidata":"https://www.wikidata.org/wiki/Q628539","display_name":"Workload","level":2,"score":0.4510679244995117},{"id":"https://openalex.org/C201410400","wikidata":"https://www.wikidata.org/wiki/Q1064412","display_name":"Multithreading","level":3,"score":0.4408141076564789},{"id":"https://openalex.org/C93996380","wikidata":"https://www.wikidata.org/wiki/Q44127","display_name":"Server","level":2,"score":0.4339090883731842},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.34425270557403564},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.3391072154045105},{"id":"https://openalex.org/C187736073","wikidata":"https://www.wikidata.org/wiki/Q2920921","display_name":"Management","level":1,"score":0.0},{"id":"https://openalex.org/C162324750","wikidata":"https://www.wikidata.org/wiki/Q8134","display_name":"Economics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1542476.1542479","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1542476.1542479","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":29,"referenced_works":["https://openalex.org/W49672653","https://openalex.org/W1486522688","https://openalex.org/W1567833156","https://openalex.org/W1734886231","https://openalex.org/W1990241377","https://openalex.org/W1998009565","https://openalex.org/W2034613985","https://openalex.org/W2047401676","https://openalex.org/W2054175778","https://openalex.org/W2068937020","https://openalex.org/W2076149580","https://openalex.org/W2108247069","https://openalex.org/W2109387036","https://openalex.org/W2112281233","https://openalex.org/W2118005163","https://openalex.org/W2127023692","https://openalex.org/W2129990308","https://openalex.org/W2132500556","https://openalex.org/W2139430599","https://openalex.org/W2146957318","https://openalex.org/W2158449625","https://openalex.org/W2163171633","https://openalex.org/W2167441199","https://openalex.org/W2400355634","https://openalex.org/W4231606388","https://openalex.org/W4249000722","https://openalex.org/W4249448758","https://openalex.org/W6629036170","https://openalex.org/W6634054181"],"related_works":["https://openalex.org/W2999356192","https://openalex.org/W3021399981","https://openalex.org/W1608279668","https://openalex.org/W2021596359","https://openalex.org/W1581434145","https://openalex.org/W2136872817","https://openalex.org/W4232891356","https://openalex.org/W3159593435","https://openalex.org/W122971516","https://openalex.org/W2464927678"],"abstract_inverted_index":{"Many":[0],"dynamic":[1,30,163],"updating":[2],"systems":[3],"have":[4],"been":[5],"developed":[6],"that":[7,56,140,157],"enable":[8],"a":[9,44,89,101,111,124,162],"program":[10,85,103],"to":[11,17,32,87,99,137,144,152],"be":[12,64,92,114],"patched":[13],"while":[14,47],"it":[15],"runs,":[16],"fix":[18],"bugs":[19],"or":[20],"add":[21],"new":[22],"features.":[23],"This":[24],"paper":[25],"explores":[26],"techniques":[27],"for":[28,66],"supporting":[29],"updates":[31,151,174],"multi-threaded":[33,70,154],"programs,":[34,71],"focusing":[35],"on":[36],"the":[37,72,83,97,145],"problem":[38],"of":[39,59,126],"applying":[40],"an":[41],"update":[42,164],"in":[43],"timely":[45],"fashion":[46],"still":[48],"producing":[49],"correct":[50],"behavior.":[51],"Past":[52],"work":[53],"has":[54],"shown":[55],"this":[57],"tension":[58],"safety":[60],"versus":[61],"timeliness":[62],"can":[63,159],"balanced":[65],"single-threaded":[67],"programs.":[68],"For":[69],"task":[73],"is":[74],"more":[75,139,168],"difficult":[76],"because":[77],"myriad":[78],"thread":[79],"interactions":[80],"complicate":[81],"understanding":[82],"possible":[84],"states":[86],"which":[88,110,116],"patch":[90,112],"could":[91],"applied.":[93],"Our":[94],"approach":[95],"allows":[96],"programmer":[98],"specify":[100],"few":[102,135],"points":[104,136],"(e.g.,":[105],"one":[106],"per":[107],"thread)":[108],"at":[109],"may":[113],"applied,":[115],"simplifies":[117],"reasoning":[118],"about":[119],"safety.":[120],"To":[121],"improve":[122],"timeliness,":[123],"combination":[125],"static":[127],"analysis":[128],"and":[129],"run-time":[130],"support":[131],"automatically":[132],"expands":[133],"these":[134],"many":[138],"produce":[141],"behavior":[142],"equivalent":[143],"originals.":[146],"Experiments":[147],"with":[148],"thirteen":[149],"realistic":[150],"three":[153],"servers":[155],"show":[156],"we":[158],"safely":[160],"perform":[161],"within":[165],"milliseconds":[166],"when":[167],"straightforward":[169],"alternatives":[170],"would":[171],"delay":[172],"some":[173],"indefinitely.":[175]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":4},{"year":2017,"cited_by_count":7},{"year":2016,"cited_by_count":12},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":12},{"year":2013,"cited_by_count":16},{"year":2012,"cited_by_count":16}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
