Large 00352

Systems vs. Programs and the Battle Against Bugs

George Candea

Recorded 26 May 2011 in Lausanne, Vaud, Switzerland

Event: KTN - Know Thy Neighbor

Abstract

When going from a small program to a real system, new fundamental challenges arise that cannot be addressed with the techniques that work at small scale. This talk will describe some of the problems that systems researchers have been working on for decades, along with some of my favorite ideas that came out of systems research.

Then I will focus on one of the biggest challenges system reliability that arises from humans' apparent inability to build complex software with millions of lines of code, hundreds of threads, etc. that actually works. Real-world developers simply write code, test, deploy, debug, patch in an endless cycle. Without passing judgment on whether this is right or wrong, I believe it is possible to empower developers to deliver better systems without changing their programming language, development processes, or invest extra effort. The key is to have substantially more powerful tools that help developers understand more deeply the systems they build. I will describe our S2E platform and how it enabled us to build tools that automatically find bugs in proprietary software, compute precise performance envelopes, and even reverse engineer closed-source software to make it better.

Watched 12822 times.

 Watch