Rackham Predoctoral Fellowship for design of robust, reliable and repairable software systems

Subarno Banerjee uses program analysis to improve software systems’ safety and security.

Subarno Banerjee Enlarge
PhD student Subarno Banerjee

Subarno Banerjee, CSE PhD candidate, has received a Rackham Predoctoral Fellowship to support his research into enhancing computer systems’ security and reliability through program analysis. Subarno is advised by Prof. Satish Narayanasamy, and works closely with Prof. Peter M. Chen.

Designing practical computer systems that are secure, reliable, and easily repairable is challenging as enforcing these properties requires fundamentally more work. So in practice, many systems relax security or even correctness guarantees for the sake of performance. Careful reasoning through targeted program analyses can enable practical software engineering tools within compilers and runtime-systems to address some of these challenges. Subarno’s work leverages unsound assumptions and dynamic observations to induce more precise static reasoning about program safety and security.

Subarno’s dissertation work has resulted in two key results to previously unsolved problems, and has demonstrated the practicality of solutions:

  • Enabled information-flow security on live systems by solving the rollback problem in Optimistic Hybrid Analysis. This enables practical online security monitoring for critical server applications.
  • Designed the first sound garbage collector for the C language by efficiently tracking pointer provenance. This ensures temporal memory safety for legacy software systems with low overheads.

Subarno has also collaborated with research teams at major technology companies to inform his own work and to deploy some of the techniques at industry. His work at Microsoft Research improves the art of repairing software failures using modified replay analyses; he built a practical bug detection tool for Java at Uber; and he will work on reliable cluster management at Google.

Subarno’s work has appeared at premier venues across the computer systems areas, including security (S&P Oakland), software engineering (FSE), and computer architecture (ISCA).

About the Rackham Predoctoral Fellowship

The Rackham Predoctoral Fellowship supports outstanding doctoral candidates who are actively working on dissertations that are unusually creative, ambitious and impactful.