{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T09:45:21Z","timestamp":1770284721854,"version":"3.49.0"},"reference-count":78,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"1","license":[{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"},{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-029"},{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-037"}],"funder":[{"DOI":"10.13039\/501100012166","name":"National Key Research and Development Program of China","doi-asserted-by":"publisher","award":["2017YFA0700604"],"award-info":[{"award-number":["2017YFA0700604"]}],"id":[{"id":"10.13039\/501100012166","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61632015"],"award-info":[{"award-number":["61632015"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IIEEE Trans. Software Eng."],"published-print":{"date-parts":[[2022,1,1]]},"DOI":"10.1109\/tse.2020.2989171","type":"journal-article","created":{"date-parts":[[2020,4,20]],"date-time":"2020-04-20T19:53:19Z","timestamp":1587412399000},"page":"346-363","source":"Crossref","is-referenced-by-count":13,"title":["Automatic Detection, Validation, and Repair of Race Conditions in Interrupt-Driven Embedded Software"],"prefix":"10.1109","volume":"48","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-7216-6929","authenticated-orcid":false,"given":"Yu","family":"Wang","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8185-0573","authenticated-orcid":false,"given":"Fengjuan","family":"Gao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-4794-1652","authenticated-orcid":false,"given":"Linzhang","family":"Wang","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9461-4251","authenticated-orcid":false,"given":"Tingting","family":"Yu","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jianhua","family":"Zhao","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Xuandong","family":"Li","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"263","reference":[{"key":"ref7","article-title":"Program analysis and specialization for the C programming language","author":"Andersen","year":"1994"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-74591-4_4"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1145\/2858965.2814303"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1145\/1806596.1806626"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/1736020.1736040"},{"key":"ref12","first-page":"209","article-title":"KLEE: Unassisted and automatic generation of high-coverage tests for complex systems programs","volume-title":"Proc. USENIX Symp. Operating Syst. Des. Implementations","author":"Cadar"},{"key":"ref13","first-page":"209","article-title":"KLEE: Unassisted and automatic generation of high-coverage tests for complex systems programs","volume-title":"Proc. 8th USENIX Conf. Operating Syst. Des. Implementation","author":"Cadar"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1145\/3106237.3106239"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1145\/99164.99167"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1109\/SSIRI-C.2011.18"},{"key":"ref17","doi-asserted-by":"publisher","DOI":"10.1145\/1837853.1693458"},{"key":"ref18","volume-title":"Linux Device Drivers","author":"Corbet","year":"2005"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1145\/120807.120811"},{"key":"ref20","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384650"},{"key":"ref21","article-title":"Systematically exposing OS kernel races - an interview with Ben Blum","author":"Engblom","year":"2012"},{"key":"ref22","doi-asserted-by":"publisher","DOI":"10.1145\/2491411.2491453"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781169"},{"key":"ref24","article-title":"Theory of clock synchronization and mutual exclusion in networked control systems","author":"Ganguly","year":"1999"},{"key":"ref25","doi-asserted-by":"publisher","DOI":"10.1145\/2786805.2786841"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1145\/1808266.1808278"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1145\/1808266.1808278"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1109\/ICST.2014.17"},{"key":"ref29","doi-asserted-by":"publisher","DOI":"10.1002\/stvr.1539"},{"key":"ref30","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594330"},{"key":"ref31","doi-asserted-by":"publisher","DOI":"10.1145\/2931037.2931069"},{"key":"ref32","article-title":"Static race detection of interrupt-driven programs","volume":"12","author":"Huo","year":"2011","journal-title":"J. Comput. Res. Develop."},{"key":"ref33","article-title":"IRQ handling race and spurious IIR read in 8250.c.","author":"Jackson"},{"key":"ref34","doi-asserted-by":"publisher","DOI":"10.1145\/1993316.1993544"},{"key":"ref35","first-page":"221","article-title":"Automated concurrency-bug fixing","volume-title":"Proc. 10th USENIX Symp. Operating Syst. Des. Implementation","author":"Jin"},{"key":"ref36","doi-asserted-by":"publisher","DOI":"10.1145\/2103656.2103662"},{"key":"ref37","doi-asserted-by":"publisher","DOI":"10.1145\/1595696.1595701"},{"key":"ref38","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-39955-8_7"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1145\/2771783.2771798"},{"key":"ref40","first-page":"81","article-title":"Timing analysis of interrupt-driven programs under context bounds","volume-title":"Proc. Formal Method Comput.-Aided Des.","author":"Kotker"},{"key":"ref41","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254088"},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1145\/1453101.1453115"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1145\/2950290.2950309"},{"key":"ref44","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227184"},{"key":"ref45","doi-asserted-by":"publisher","DOI":"10.1145\/1346281.1346323"},{"key":"ref46","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-23702-7_11"},{"key":"ref47","doi-asserted-by":"publisher","DOI":"10.1145\/2594291.2594311"},{"key":"ref48","doi-asserted-by":"publisher","DOI":"10.1145\/1047659.1040336"},{"key":"ref49","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227146"},{"key":"ref50","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542491"},{"key":"ref51","first-page":"267","article-title":"Finding and reproducing Heisenbugs in concurrent programs","volume-title":"Proc. USENIX Symp. Operating Syst. Des. Implementations","author":"Musuvathi"},{"key":"ref52","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2009.5070538"},{"key":"ref53","doi-asserted-by":"publisher","DOI":"10.1145\/130616.130623"},{"key":"ref54","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227145"},{"key":"ref55","doi-asserted-by":"publisher","DOI":"10.1145\/966049.781528"},{"key":"ref56","article-title":"Larry gets taken to task on concurrency","author":"Osterman","year":"2005"},{"key":"ref57","doi-asserted-by":"publisher","DOI":"10.1145\/781498.781529"},{"key":"ref58","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254126"},{"key":"ref59","doi-asserted-by":"publisher","DOI":"10.1145\/1133255.1134019"},{"key":"ref60","doi-asserted-by":"publisher","DOI":"10.1145\/2771783.2771791"},{"key":"ref61","doi-asserted-by":"publisher","DOI":"10.1145\/2254064.2254127"},{"key":"ref62","doi-asserted-by":"publisher","DOI":"10.1145\/2544173.2509538"},{"key":"ref63","doi-asserted-by":"publisher","DOI":"10.1145\/1086228.1086282"},{"key":"ref64","doi-asserted-by":"publisher","DOI":"10.1016\/j.entcs.2007.04.002"},{"key":"ref65","doi-asserted-by":"publisher","DOI":"10.1145\/2813885.2737998"},{"key":"ref66","doi-asserted-by":"publisher","DOI":"10.1145\/2983990.2984040"},{"key":"ref67","doi-asserted-by":"publisher","DOI":"10.1145\/265924.265927"},{"key":"ref68","doi-asserted-by":"publisher","DOI":"10.1145\/1321631.1321679"},{"key":"ref69","doi-asserted-by":"publisher","DOI":"10.1145\/1379022.1375584"},{"key":"ref70","doi-asserted-by":"publisher","DOI":"10.1007\/11817963_38"},{"key":"ref71","doi-asserted-by":"publisher","DOI":"10.1049\/cje.2018.03.015"},{"key":"ref73","doi-asserted-by":"publisher","DOI":"10.1145\/2666356.2594335"},{"key":"ref74","doi-asserted-by":"publisher","DOI":"10.1109\/ASE.2000.873645"},{"key":"ref75","first-page":"391","article-title":"Static race detection for device drivers: The Goblint approach","volume-title":"Proc. IEEE\/ACM Int. Conf. Automated Softw. Eng.","author":"Vojdani"},{"key":"ref76","doi-asserted-by":"publisher","DOI":"10.1007\/978-0-387-09766-4_38"},{"key":"ref77","doi-asserted-by":"publisher","DOI":"10.1145\/781131.781145"},{"key":"ref78","doi-asserted-by":"publisher","DOI":"10.1145\/2875913.2875943"},{"key":"ref79","doi-asserted-by":"publisher","DOI":"10.1145\/3092703.3092724"},{"key":"ref80","doi-asserted-by":"publisher","DOI":"10.1145\/996841.996859"},{"key":"ref81","doi-asserted-by":"publisher","DOI":"10.1007\/11531142_26"},{"key":"ref82","doi-asserted-by":"publisher","DOI":"10.1145\/2384616.2384651"},{"key":"ref83","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884866"},{"key":"ref84","doi-asserted-by":"publisher","DOI":"10.1145\/2365864.2151034"},{"key":"ref85","doi-asserted-by":"publisher","DOI":"10.1145\/1095809.1095832"}],"container-title":["IEEE Transactions on Software Engineering"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/32\/9675297\/09072666.pdf?arnumber=9072666","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,1,9]],"date-time":"2024-01-09T22:23:30Z","timestamp":1704839010000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/9072666\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,1,1]]},"references-count":78,"journal-issue":{"issue":"1"},"URL":"https:\/\/doi.org\/10.1109\/tse.2020.2989171","relation":{},"ISSN":["0098-5589","1939-3520","2326-3881"],"issn-type":[{"value":"0098-5589","type":"print"},{"value":"1939-3520","type":"electronic"},{"value":"2326-3881","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,1,1]]}}}