Checking System Rules Using System-Specific, Programmer-Written Compiler Extensions ... {z--} == {err('post-decrement' ... decrements it during unloading (by ...
Seth Hallem, Benjamin Chelf, Yichen Xie, and Dawson Engler (presented by ... Deletes state attached to redefined expressions. 14. Intraprocedural Heuristics ...
Dawson Engler, Benjamin Chelf, Andy Chou, and Seth Hallem. ... Unreclaimed memory checks 'Double free' instances checks. Use after deallocation checks ...
Title: Selling an Idea or a Product Author: public pc (3rd floor) Last modified by: Dawson Engler Created Date: 6/2/1995 10:06:36 PM Document presentation format
can use automatically generated rules. r e l a t e d w o r k. type systems. specifications ... Rules for belief propagation. i n t e r n a l c o n s i s t e n c ...
Neither can proceed these threads are deadlocked. Race condition ... Two threads can simultaneously write to same memory (bad) One thread can read, another can ...
... least one access is a write No synchronization to separate accesses Avoiding Data Races Avoiding Data Races Associate locks with shared mutable data Acquire ...
Talk about how to find hundreds of errors by just putting a little bit of system specific knowledge in a compiler Using System-Specific Compiler Extensions to Find ...
Thread n holds Lock n, waits for Lock 1. Deadlocks in ... Threads must acquire locks in descending order of lock levels. Lock Level Based Partial Orders ...
A Parameterized Type System for Race-Free Java Programs Chandrasekhar Boyapati Martin Rinard Laboratory for Computer Science Massachusetts Institute of Technology
This talk is about how you can find lots of bugs in real code by making compilers aggressively system specific Finding bugs with system-specific static analysis
Two threads concurrently access same data. At least one access is a write ... Problem: Locking is not enforced! Inadvertent programming errors... Our solution ...
A Parameterized Type System for Race-Free Java Programs. Chandrasekhar Boyapati Martin Rinard ... Statically verifiable race-free program. a1 is locked before ...
How to find lots of bugs by checking program belief systems. Dawson Engler ... Crucial: we know contradiction is an error without knowing the correct belief! ...
Can look for redundancy in general: deadcode elim is an error finder. ... Can cross-correlate: free is on error path, has dealloc in name, etc, bump up ranking. ...
This talk is about how you can find lots of bugs in real code by making compilers aggressively system specific How to find lots of bugs with system-specific static ...
This talk is about how you can find lots of bugs in real code by making ... Some big, gaping security holes. Remote exploit, no checks. Unexpected overflow: ...
Weird things that surprise academics trying to commercialize a static checking tool. Andy Chou, Ben Chelf, Seth Hallem Charles Henri-Gros, Bryan Fulton, Ted Unangst