{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,12]],"date-time":"2026-06-12T10:08:04Z","timestamp":1781258884423,"version":"3.54.1"},"reference-count":51,"publisher":"Institute of Electrical and Electronics Engineers (IEEE)","issue":"4","license":[{"start":{"date-parts":[[2023,4,1]],"date-time":"2023-04-01T00:00:00Z","timestamp":1680307200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/ieeexplore.ieee.org\/Xplorehelp\/downloads\/license-information\/IEEE.html"},{"start":{"date-parts":[[2023,4,1]],"date-time":"2023-04-01T00:00:00Z","timestamp":1680307200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-029"},{"start":{"date-parts":[[2023,4,1]],"date-time":"2023-04-01T00:00:00Z","timestamp":1680307200000},"content-version":"stm-asf","delay-in-days":0,"URL":"https:\/\/doi.org\/10.15223\/policy-037"}],"funder":[{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["62172217"],"award-info":[{"award-number":["62172217"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100007538","name":"Civil Aviation Administration of China","doi-asserted-by":"publisher","award":["U1533130"],"award-info":[{"award-number":["U1533130"]}],"id":[{"id":"10.13039\/501100007538","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["IIEEE Trans. Software Eng."],"published-print":{"date-parts":[[2023,4,1]]},"DOI":"10.1109\/tse.2022.3210580","type":"journal-article","created":{"date-parts":[[2022,9,29]],"date-time":"2022-09-29T19:42:13Z","timestamp":1664480533000},"page":"2107-2127","source":"Crossref","is-referenced-by-count":6,"title":["A Source-Level Instrumentation Framework for the Dynamic Analysis of Memory Safety"],"prefix":"10.1109","volume":"49","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-4707-2402","authenticated-orcid":false,"given":"Zhe","family":"Chen","sequence":"first","affiliation":[{"name":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, Jiangsu, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Qi","family":"Zhang","sequence":"additional","affiliation":[{"name":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, Jiangsu, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Jun","family":"Wu","sequence":"additional","affiliation":[{"name":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, Jiangsu, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Junqi","family":"Yan","sequence":"additional","affiliation":[{"name":"College of Computer Science and Technology, Nanjing University of Aeronautics and Astronautics, Nanjing, Jiangsu, China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-0380-3506","authenticated-orcid":false,"given":"Jingling","family":"Xue","sequence":"additional","affiliation":[{"name":"School of Computer Science and Engineering, UNSW, Sydney, NSW, Australia"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"263","reference":[{"key":"ref1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.2242"},{"key":"ref2","doi-asserted-by":"publisher","DOI":"10.1145\/1542476.1542504"},{"key":"ref3","doi-asserted-by":"publisher","DOI":"10.1145\/1806651.1806657"},{"key":"ref4","first-page":"189","article-title":"Beyond spatial and temporal memory safety","volume-title":"Proc. IEEE 40th Int. Conf. Softw. Eng.","author":"Chen"},{"key":"ref5","doi-asserted-by":"publisher","DOI":"10.1145\/3460319.3464807"},{"key":"ref6","first-page":"125","article-title":"Purify: Fast detection of memory leaks and access errors","volume-title":"Proc. Winter USENIX Conf.","author":"Hastings"},{"key":"ref7","doi-asserted-by":"publisher","DOI":"10.1145\/1453101.1453137"},{"key":"ref8","doi-asserted-by":"publisher","DOI":"10.1145\/1882291.1882338"},{"key":"ref9","doi-asserted-by":"publisher","DOI":"10.1134\/S0361768817050024"},{"key":"ref10","doi-asserted-by":"publisher","DOI":"10.1145\/2338965.2336784"},{"key":"ref11","doi-asserted-by":"publisher","DOI":"10.1145\/2491509.2491511"},{"key":"ref12","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2014.2302311"},{"key":"ref13","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2018.2869336"},{"key":"ref14","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-04694-0_10"},{"key":"ref15","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45314-8_16"},{"key":"ref16","doi-asserted-by":"publisher","DOI":"10.1145\/949952.940113"},{"key":"ref17","first-page":"17","article-title":"Using valgrind to detect undefined value errors with bit-precision","volume-title":"Proc. USENIX Annu. Tech. Conf.","author":"Seward"},{"key":"ref18","doi-asserted-by":"publisher","DOI":"10.1145\/1254810.1254820"},{"key":"ref19","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250746"},{"key":"ref20","first-page":"309","article-title":"AddressSanitizer: A fast address sanity checker","volume-title":"Proc. USENIX Annu. Tech. Conf.","author":"Serebryany"},{"key":"ref21","first-page":"13","article-title":"Backwards-compatible bounds checking for arrays and pointers in C programs","volume-title":"Proc. 3rd Int. Workshop Automated Debugging","author":"Jones"},{"key":"ref22","first-page":"159","article-title":"A practical dynamic buffer overflow detector","volume-title":"Proc. Netw. Distrib. Syst. Secur. Symp.","author":"Ruwase"},{"key":"ref23","doi-asserted-by":"publisher","DOI":"10.1145\/1134285.1134309"},{"key":"ref24","first-page":"51","article-title":"Baggy bounds checking: An efficient and backwards-compatible defense against out-of-bounds errors","volume-title":"Proc. 18th USENIX Secur. Symp.","author":"Akritidis"},{"key":"ref25","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2010.15"},{"key":"ref26","doi-asserted-by":"publisher","DOI":"10.1002\/spe.2105"},{"key":"ref27","doi-asserted-by":"publisher","DOI":"10.1145\/3092255.3092269"},{"key":"ref28","doi-asserted-by":"publisher","DOI":"10.1145\/2259016.2259034"},{"key":"ref29","doi-asserted-by":"publisher","DOI":"10.1145\/2884781.2884784"},{"key":"ref30","doi-asserted-by":"publisher","DOI":"10.1145\/1993498.1993541"},{"key":"ref31","doi-asserted-by":"publisher","DOI":"10.1145\/503272.503286"},{"key":"ref32","doi-asserted-by":"publisher","DOI":"10.1145\/1065887.1065892"},{"key":"ref33","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1097-024X(199701)27:1<87::AID-SPE78>3.0.CO;2-P"},{"key":"ref34","doi-asserted-by":"publisher","DOI":"10.1145\/1029894.1029913"},{"key":"ref35","doi-asserted-by":"publisher","DOI":"10.1145\/2103656.2103709"},{"key":"ref36","doi-asserted-by":"publisher","DOI":"10.1109\/ISSRE.2014.20"},{"key":"ref37","doi-asserted-by":"publisher","DOI":"10.1145\/3224423"},{"key":"ref38","first-page":"190","article-title":"Everything you want to know about pointer-based checking","volume-title":"Proc. 1st Summit Adv. Program. Lang.","author":"Nagarakatte"},{"key":"ref39","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-67531-2_18"},{"key":"ref40","article-title":"Memory tagging and how it improves C\/C++ memory safety","author":"Serebryany","year":"2018"},{"issue":"2","key":"ref41","first-page":"12","article-title":"ARM memory tagging extension and how it improves C\/C++ memory safety","volume":"44","author":"Serebryany","year":"2019","journal-title":"Usenix Mag."},{"key":"ref42","doi-asserted-by":"publisher","DOI":"10.1109\/ISCA.2012.6237017"},{"key":"ref43","doi-asserted-by":"publisher","DOI":"10.1145\/2581122.2544147"},{"key":"ref44","article-title":"Intel\u00ae memory protection extensions enabling guide","year":"2016"},{"key":"ref45","article-title":"SPARC ADI","year":"2021"},{"key":"ref46","article-title":"Hardware-assisted addresssanitizer design documentation","year":"2021"},{"key":"ref47","article-title":"Movec-msbench: A memory safety benchmark suite, version 2.0.1","author":"Chen","year":"2021"},{"key":"ref48","doi-asserted-by":"publisher","DOI":"10.1109\/WWC.2001.990739"},{"key":"ref49","article-title":"The mibench and spec benchmark suites","author":"Chen","year":"2021"},{"key":"ref50","doi-asserted-by":"publisher","DOI":"10.1145\/3293882.3330581"},{"key":"ref51","article-title":"Programming Languages - C, ISO\/IEC 9899:1999, International Organization for Standardization, Geneva, Switzerland","year":"1999"}],"container-title":["IEEE Transactions on Software Engineering"],"original-title":[],"link":[{"URL":"http:\/\/xplorestaging.ieee.org\/ielx7\/32\/10103953\/09905988.pdf?arnumber=9905988","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2024,1,22]],"date-time":"2024-01-22T23:17:21Z","timestamp":1705965441000},"score":1,"resource":{"primary":{"URL":"https:\/\/ieeexplore.ieee.org\/document\/9905988\/"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2023,4,1]]},"references-count":51,"journal-issue":{"issue":"4"},"URL":"https:\/\/doi.org\/10.1109\/tse.2022.3210580","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":[[2023,4,1]]}}}