{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,9,28]],"date-time":"2025-09-28T04:10:53Z","timestamp":1759032653245},"publisher-location":"Cham","reference-count":28,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783319675305"},{"type":"electronic","value":"9783319675312"}],"license":[{"start":{"date-parts":[[2017,1,1]],"date-time":"2017-01-01T00:00:00Z","timestamp":1483228800000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2017]]},"DOI":"10.1007\/978-3-319-67531-2_18","type":"book-chapter","created":{"date-parts":[[2017,9,5]],"date-time":"2017-09-05T05:33:37Z","timestamp":1504589617000},"page":"294-311","source":"Crossref","is-referenced-by-count":8,"title":["Runtime Detection of Temporal Memory Errors"],"prefix":"10.1007","author":[{"given":"Kostyantyn","family":"Vorobyov","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Nikolai","family":"Kosmatov","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Julien","family":"Signoles","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Arvid","family":"Jakobsson","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2017,9,6]]},"reference":[{"key":"18_CR1","unstructured":"Akritidis, P., Costa, M., Castro, M., Hand, S.: Baggy bounds checking: an efficient and backwards-compatible defense against out-of-bounds errors. In: Proceedings of the USENIX Security Symposium, pp. 51\u201366. USENIX Association, August 2009"},{"key":"18_CR2","doi-asserted-by":"crossref","unstructured":"Austin, T.M., Breach, S.E., Sohi, G.S.: Efficient detection of all pointer and array access errors. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 290\u2013301. ACM, June 1994","DOI":"10.1145\/178243.178446"},{"key":"18_CR3","doi-asserted-by":"crossref","unstructured":"Bruening, D., Zhao, Q.: Practical memory checking with Dr. Memory. In: Proceedings of the Annual IEEE\/ACM International Symposium on Code Generation and Optimization, CGO 2011, pp. 213\u2013223. IEEE Computer Society, Washington, DC (2011)","DOI":"10.1109\/CGO.2011.5764689"},{"key":"18_CR4","doi-asserted-by":"crossref","unstructured":"Delahaye, M., Kosmatov, N., Signoles, J.: Common specification language for static and dynamic analysis of C programs. In: Proceedings of the ACM Symposium on Applied Computing, pp. 1230\u20131235. ACM, March 2013","DOI":"10.1145\/2480362.2480593"},{"key":"18_CR5","doi-asserted-by":"crossref","unstructured":"Dhurjati, D., Adve, V.S.: Backwards-compatible array bounds checking for C with very low overhead. In: Proceedings of the International Conference on Software Engineering, pp. 162\u2013171. ACM, May 2006","DOI":"10.1145\/1134285.1134309"},{"key":"18_CR6","unstructured":"Eigler, F.C.: Mudflap: pointer use checking for C\/C++. In: Proceedings of the GCC Developers Summit, pp. 57\u201370, May 2003"},{"key":"18_CR7","unstructured":"Hastings, R., Joyce, B.: Purify: fast detection of memory leaks and access errors. In: Proceedings of the Winter USENIX Conference, pp. 125\u2013136, January 1992"},{"key":"18_CR8","unstructured":"Herrmann, P., Signoles, J.: Frama-C\u2019s annotation generator plug-in. CEA LIST, Software Safety Laboratory, Saclay, F-91191 (2016). https:\/\/frama-c.com\/rte.html"},{"issue":"Part 2","key":"18_CR9","doi-asserted-by":"crossref","first-page":"226","DOI":"10.1016\/j.scico.2016.09.003","volume":"132","author":"A Jakobsson","year":"2016","unstructured":"Jakobsson, A., Kosmatov, N., Signoles, J.: Fast as a shadow, expressive as a tree: optimized memory monitoring for C. Sci. Comput. Program. 132(Part 2), 226\u2013246 (2016). Special Issue on Software Verification and Testing (SAC-SVT\u201915)","journal-title":"Sci. Comput. Program."},{"key":"18_CR10","unstructured":"Jakobsson, A., Kosmatov, N., Signoles, J.: Rester statique pour devenir plus rapide, plus pr\u00e9cis et plus mince. In: Baelde, D., Alglave, J. (eds.) Journes Francophones des Langages Applicatifs. Le Val d\u2019Ajol, France, January 2015"},{"key":"18_CR11","unstructured":"Jim, T., Morrisett, J.G., Grossman, D., Hicks, M.W., Cheney, J., Wang, Y.: Cyclone: a safe dialect of C. In: Proceedings of the General Track: 2002 USENIX Annual Technical Conference, pp. 275\u2013288. USENIX, June 2002"},{"key":"18_CR12","unstructured":"Jones, R.W.M., Kelly, P.H.J.: Backwards-compatible bounds checking for arrays and pointers in C programs. In: Proceedings of the International Workshop on Automatic Debugging, pp. 13\u201326. Link\u00f6ping University Electronic Press, September 1997"},{"issue":"3","key":"18_CR13","doi-asserted-by":"crossref","first-page":"573","DOI":"10.1007\/s00165-014-0326-7","volume":"27","author":"F Kirchner","year":"2015","unstructured":"Kirchner, F., Kosmatov, N., Prevosto, V., Signoles, J., Yakobowski, B.: Frama-C: a software analysis perspective. Formal Aspects Comput. 27(3), 573\u2013609 (2015)","journal-title":"Formal Aspects Comput."},{"key":"18_CR14","doi-asserted-by":"crossref","unstructured":"Kwon, A., Dhawan, U., Smith, J.M., Knight Jr., F.K., DeHon, A.: Low-fat pointers: compact encoding and efficient gate-level implementation of fat pointers for spatial safety and capability-based security. In: Proceedings of the ACM SIGSAC Conference on Computer and Communications Security, pp. 721\u2013732. ACM, November 2013","DOI":"10.1145\/2508859.2516713"},{"issue":"3","key":"18_CR15","doi-asserted-by":"crossref","first-page":"477","DOI":"10.1145\/1065887.1065892","volume":"27","author":"GC Necula","year":"2005","unstructured":"Necula, G.C., Condit, J., Harren, M., McPeak, S., Weimer, W.: CCured: type-safe retrofitting of legacy software. ACM Trans. Program. Lang. Syst. 27(3), 477\u2013526 (2005)","journal-title":"ACM Trans. Program. Lang. Syst."},{"issue":"2","key":"18_CR16","doi-asserted-by":"crossref","first-page":"44","DOI":"10.1016\/S1571-0661(04)81042-9","volume":"89","author":"N Nethercote","year":"2003","unstructured":"Nethercote, N., Seward, J.: Valgrind: a program supervision framework. Electron. Not. Theor. Comput. Sci. 89(2), 44\u201366 (2003)","journal-title":"Electron. Not. Theor. Comput. Sci."},{"issue":"6","key":"18_CR17","doi-asserted-by":"crossref","first-page":"89","DOI":"10.1145\/1273442.1250746","volume":"42","author":"N Nethercote","year":"2007","unstructured":"Nethercote, N., Seward, J.: Valgrind: a framework for heavyweight dynamic binary instrumentation. SIGPLAN Not. 42(6), 89\u2013100 (2007)","journal-title":"SIGPLAN Not."},{"key":"18_CR18","unstructured":"Potapenko, A.: AddressSanitizerUseAfterReturn (2015). https:\/\/github.com\/google\/sanitizers\/wiki\/AddressSanitizerUseAfterReturn"},{"key":"18_CR19","unstructured":"Ruwase, O., Lam, M.S.: A practical dynamic buffer overflow detector. In: Proceedings of the Network and Distributed System Security Symposium. The Internet Society, December 2004"},{"key":"18_CR20","unstructured":"Serebryany, K., Bruening, D., Potapenko, A., Vyukov, D.: AddressSanitizer: a fast address sanity checker. In: Proceedings of the USENIX Annual Technical Conference, pp. 309\u2013319. USENIX Association, June 2012"},{"key":"18_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"110","DOI":"10.1007\/978-3-642-29860-8_9","volume-title":"Runtime Verification","author":"K Serebryany","year":"2012","unstructured":"Serebryany, K., Potapenko, A., Iskhodzhanov, T., Vyukov, D.: Dynamic race detection with LLVM compiler \u2014 compile-time instrumentation for ThreadSanitizer. In: Khurshid, S., Sen, K. (eds.) RV 2011. LNCS, vol. 7186, pp. 110\u2013114. Springer, Heidelberg (2012). doi: 10.1007\/978-3-642-29860-8_9"},{"key":"18_CR22","unstructured":"Seward, J., Nethercote, N.: Using Valgrind to detect undefined value errors with bit-precision. In: Proceedings of the USENIX Annual Technical Conference, pp. 17\u201330. USENIX (2005)"},{"key":"18_CR23","unstructured":"SGCheck: an experimental stack and global array overrun detector. http:\/\/valgrind.org\/docs\/manual\/sg-manual.html"},{"issue":"1","key":"18_CR24","doi-asserted-by":"crossref","first-page":"93","DOI":"10.1002\/spe.2105","volume":"43","author":"MS Simpson","year":"2013","unstructured":"Simpson, M.S., Barua, R.: MemSafe: ensuring the spatial and temporal memory safety of C at runtime. Softw. Practice Exp. 43(1), 93\u2013128 (2013)","journal-title":"Softw. Practice Exp."},{"key":"18_CR25","unstructured":"Standard Performance Evaluation Corporation: SPEC CPU (2006). http:\/\/www.spec.org\/benchmarks.html"},{"key":"18_CR26","doi-asserted-by":"crossref","unstructured":"Stepanov, E., Serebryany, K.: MemorySanitizer: fast detector of uninitialized memory use in C++. In: Proceedings of the Annual IEEE\/ACM International Symposium on Code Generation and Optimization, pp. 46\u201355. IEEE Computer Society, February 2015","DOI":"10.1109\/CGO.2015.7054186"},{"key":"18_CR27","unstructured":"Stepanov, E.: AddressSanitizerUseAfterScope (2016). https:\/\/github.com\/google\/sanitizers\/wiki\/AddressSanitizerUseAfterScope"},{"key":"18_CR28","doi-asserted-by":"crossref","unstructured":"Vorobyov, K., Signoles, J., Kosmatov, N.: Shadow state encoding for efficient monitoring of block-level properties. In: Proceedings of the International Symposium on Memory Management, pp. 47\u201358. ACM, June 2017","DOI":"10.1145\/3092255.3092269"}],"container-title":["Lecture Notes in Computer Science","Runtime Verification"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-319-67531-2_18","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,10,3]],"date-time":"2019-10-03T00:19:42Z","timestamp":1570061982000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-319-67531-2_18"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017]]},"ISBN":["9783319675305","9783319675312"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-319-67531-2_18","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2017]]}}}