{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,19]],"date-time":"2026-06-19T20:02:37Z","timestamp":1781899357749,"version":"3.54.5"},"publisher-location":"Berlin, Heidelberg","reference-count":30,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"value":"9783642407864","type":"print"},{"value":"9783642407871","type":"electronic"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2013]]},"DOI":"10.1007\/978-3-642-40787-1_10","type":"book-chapter","created":{"date-parts":[[2013,9,18]],"date-time":"2013-09-18T23:18:35Z","timestamp":1379546315000},"page":"167-182","source":"Crossref","is-referenced-by-count":22,"title":["An Optimized Memory Monitoring for Runtime Assertion Checking of C Programs"],"prefix":"10.1007","author":[{"given":"Nikolai","family":"Kosmatov","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Guillaume","family":"Petiot","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Julien","family":"Signoles","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","reference":[{"key":"10_CR1","unstructured":"Sullivan, M., Chillarege, R.: Software defects and their impact on system availability: A study of field failures in operating systems. In: The 1991 International Symposium on Fault-Tolerant Computing (FTCS 1991), pp. 2\u20139. IEEE Computer Society (1991)"},{"issue":"3","key":"10_CR2","doi-asserted-by":"publisher","first-page":"25","DOI":"10.1145\/1127878.1127900","volume":"31","author":"L.A. Clarke","year":"2006","unstructured":"Clarke, L.A., Rosenblum, D.S.: A historical perspective on runtime assertion checking in software development. ACM SIGSOFT Software Engineering Notes\u00a031(3), 25\u201337 (2006)","journal-title":"ACM SIGSOFT Software Engineering Notes"},{"key":"10_CR3","unstructured":"Turing, A.: Checking a large routine. In: The Conference on High Speed Automatic Calculating Machines, pp. 67\u201369 (1949)"},{"issue":"5","key":"10_CR4","doi-asserted-by":"publisher","first-page":"293","DOI":"10.1016\/j.jlap.2008.08.004","volume":"78","author":"M. Leucker","year":"2009","unstructured":"Leucker, M., Schallhart, C.: A brief account of runtime verification. J. Log. Algebr. Program.\u00a078(5), 293\u2013303 (2009)","journal-title":"J. Log. Algebr. Program."},{"key":"10_CR5","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"233","DOI":"10.1007\/978-3-642-33826-7_16","volume-title":"Software Engineering and Formal Methods","author":"P. Cuoq","year":"2012","unstructured":"Cuoq, P., Kirchner, F., Kosmatov, N., Prevosto, V., Signoles, J., Yakobowski, B.: Frama-C: A program analysis perspective. In: Eleftherakis, G., Hinchey, M., Holcombe, M. (eds.) SEFM 2012. LNCS, vol.\u00a07504, pp. 233\u2013247. Springer, Heidelberg (2012)"},{"key":"10_CR6","doi-asserted-by":"crossref","unstructured":"Delahaye, M., Kosmatov, N., Signoles, J.: Common specification language for static and dynamic analysis of C programs. In: The 28th Annual ACM Symposium on Applied Computing (SAC 2013), pp. 1230\u20131235. ACM (2013)","DOI":"10.1145\/2480362.2480593"},{"key":"10_CR7","series-title":"LNCS","volume-title":"RV 2013","author":"N. Kosmatov","year":"2013","unstructured":"Kosmatov, N., Signoles, J.: A lesson on runtime assertion checking with Frama-C. In: Bensalem, S., Legay, A. (eds.) RV 2013. LNCS, vol.\u00a08174, Springer, Heidelberg (2013)"},{"issue":"4","key":"10_CR8","doi-asserted-by":"publisher","first-page":"691","DOI":"10.1145\/96559.214080","volume":"37","author":"W. Szpankowski","year":"1990","unstructured":"Szpankowski, W.: Patricia tries again revisited. J. ACM\u00a037(4), 691\u2013711 (1990)","journal-title":"J. ACM"},{"key":"10_CR9","unstructured":"Signoles, J.: E-ACSL: Executable ANSI\/ISO C Specification Language (January 2012), \n                    \n                      http:\/\/frama-c.com\/download\/e-acsl\/e-acsl.pdf"},{"key":"10_CR10","unstructured":"Baudin, P., Filli\u00e2tre, J.C., Hubert, T., March\u00e9, C., Monate, B., Moy, Y., Prevosto, V.: ACSL: ANSI\/ISO C Specification Language, v1.6 (April 2013), \n                    \n                      http:\/\/frama-c.com\/acsl.html"},{"key":"10_CR11","unstructured":"Baudin, P., Pacalet, A., Raguideau, J., Schoen, D., Williams, N.: CAVEAT: a tool for software validation. In: The 2002 International Conference on Dependable Systems and Networks (DSN 2002), p. 537. IEEE Computer Society (2002)"},{"key":"10_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"173","DOI":"10.1007\/978-3-540-73368-3_21","volume-title":"Computer Aided Verification","author":"J.-C. Filli\u00e2tre","year":"2007","unstructured":"Filli\u00e2tre, J.-C., March\u00e9, C.: The why\/Krakatoa\/Caduceus platform for deductive program verification. In: Damm, W., Hermanns, H. (eds.) CAV 2007. LNCS, vol.\u00a04590, pp. 173\u2013177. Springer, Heidelberg (2007)"},{"key":"10_CR13","unstructured":"Cheon, Y.: A Runtime Assertion Checker for the Java Modeling Language, Iowa State Univ. (2003), \n                    \n                      http:\/\/cs.iastate.edu\/~leavens\/JML\/Relatedpapers\/index.html"},{"key":"10_CR14","unstructured":"Meyer, B.: Object-Oriented Software Construction. Prentice-Hall, Inc. (1988)"},{"key":"10_CR15","unstructured":"ISO\/IEC 9899:1999: Programming languages \u2013 C"},{"key":"10_CR16","unstructured":"Jones, R.W.M., Kelly, P.H.J.: Backwards-compatible bounds checking for arrays and pointers in c programs. In: The Third International Workshop on Automatic Debugging (AADEBUG 1997), pp. 13\u201326 (1997)"},{"key":"10_CR17","doi-asserted-by":"crossref","unstructured":"Nethercote, N., Seward, J.: How to shadow every byte of memory used by a program. In: The 3rd International Conference on Virtual Execution Environments (VEE 2007), pp. 65\u201374. ACM (2007)","DOI":"10.1145\/1254810.1254820"},{"key":"10_CR18","doi-asserted-by":"crossref","unstructured":"Botella, B., Delahaye, M., Hong-Tuan-Ha, S., Kosmatov, N., Mouy, P., Roger, M., Williams, N.: Automating structural testing of C programs: Experience with PathCrawler. In: The 4th Int. Workshop on Automation of Software Test (AST 2009), pp. 70\u201378. IEEE Computer Society (2009)","DOI":"10.1109\/IWAST.2009.5069043"},{"key":"10_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"262","DOI":"10.1007\/978-3-540-39656-7_11","volume-title":"Formal Methods for Components and Objects","author":"G.T. Leavens","year":"2003","unstructured":"Leavens, G.T., Cheon, Y., Clifton, C., Ruby, C., Cok, D.R.: How the design of JML accommodates both runtime assertion checking and formal verification. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol.\u00a02852, pp. 262\u2013284. Springer, Heidelberg (2003)"},{"key":"10_CR20","unstructured":"Comar, C., Kanig, J., Moy, Y.: Integrating formal program verification with testing. In: The Embedded Real-Time Software and Systems Congress, ERTS 2012 (2012)"},{"key":"10_CR21","unstructured":"Ruwase, O., Lam, M.S.: A practical dynamic buffer overflow detector. In: The 11th Annual Network and Distributed System Security Symposium (NDSS 2004), pp. 159\u2013169 (2004)"},{"key":"10_CR22","doi-asserted-by":"crossref","unstructured":"Xu, W., DuVarney, D.C., Sekar, R.: An efficient and backwards-compatible transformation to ensure memory safety of C programs. In: FSE 2004, pp. 117\u2013126. ACM (2004)","DOI":"10.1145\/1041685.1029913"},{"key":"10_CR23","doi-asserted-by":"crossref","unstructured":"Dhurjati, D., Adve, V.S.: Backwards-compatible array bounds checking for C with very low overhead. In: The 28th International Conference on Software Engineering (ICSE 2006), pp. 162\u2013171 (2006)","DOI":"10.1145\/1134285.1134309"},{"key":"10_CR24","unstructured":"Akritidis, P., Costa, M., Castro, M., Hand, S.: Baggy bounds checking: An efficient and backwards-compatible defense against out-of-bounds errors. In: The 18th USENIX Security Symposium (USENIX 2009), pp. 51\u201366. USENIX Association (2009)"},{"issue":"1","key":"10_CR25","doi-asserted-by":"publisher","first-page":"93","DOI":"10.1002\/spe.2105","volume":"43","author":"M.S. Simpson","year":"2013","unstructured":"Simpson, M.S., Barua, R.: MemSafe: ensuring the spatial and temporal memory safety of C at runtime. Softw., Pract. Exper.\u00a043(1), 93\u2013128 (2013)","journal-title":"Softw., Pract. Exper."},{"key":"10_CR26","doi-asserted-by":"crossref","unstructured":"Austin, T.M., Breach, S.E., Sohi, G.S.: Efficient detection of all pointer and array access errors. In: The ACM SIGPLAN 1994 Conference on Programming Language Design and Implementation (PLDI 1994), pp. 290\u2013301. ACM (1994)","DOI":"10.1145\/773473.178446"},{"issue":"3","key":"10_CR27","doi-asserted-by":"publisher","first-page":"477","DOI":"10.1145\/1065887.1065892","volume":"27","author":"G.C. 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.\u00a027(3), 477\u2013526 (2005)","journal-title":"ACM Trans. Program. Lang. Syst."},{"key":"10_CR28","doi-asserted-by":"crossref","unstructured":"Oiwa, Y.: Implementation of the memory-safe full ANSI-C compiler. In: The 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI 2009), pp. 259\u2013269. ACM (2009)","DOI":"10.1145\/1542476.1542505"},{"key":"10_CR29","doi-asserted-by":"crossref","unstructured":"Yuan, J., Johnson, R.: CAWDOR: compiler assisted worm defense. In: The 12th IEEE International Working Conference on Source Code Analysis and Manipulation (SCAM 2012), pp. 54\u201363. IEEE Computer Society (2012)","DOI":"10.1109\/SCAM.2012.30"},{"key":"10_CR30","unstructured":"Serebryany, K., Bruening, D., Potapenko, A., Vyukov, D.: AddressSanitizer: a fast address sanity checker. In: The 2012 USENIX Annual Technical Conference (USENIX ATC 2012), pp. 309\u2013318. USENIX Association (2012)"}],"container-title":["Lecture Notes in Computer Science","Runtime Verification"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-40787-1_10","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,17]],"date-time":"2019-05-17T12:01:52Z","timestamp":1558094512000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-40787-1_10"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2013]]},"ISBN":["9783642407864","9783642407871"],"references-count":30,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-40787-1_10","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013]]}}}