Web browsers

Web browsers are one of the most critical software systems in use today. Modern web apps provide similar functionality as native apps, allowing users to rely solely on web browsers for their tasks. Google Chromebook is an embodiment of the vision that web browsers can fully replace all native apps. Moreover, in many developing countries where people struggle to get access to basic needs, web browsers provide users with access (even though slow) to the web, which can be transformative for providing information. The trend shows that more and more people in developing countries are coming "online" and accessing the web primarily from a web browser on a mobile device.

Moreover, web browsers are increasingly complex, performing many tasks that only native apps used to do. As a result, web browsers have large codebases consisting of millions of lines of code. At runtime, these browsers spawn many processes in order to isolate various trusted and untrusted applications and components. This complexity, large code base, and multi-process execution causes challenges for analyzing various aspects of the browser including performance, privacy, and security. This project aims to address these challenges by developing tools and frameworks that allows for scalable analysis of web browsers.

This project is partially funded by a Google faculty research award and a Mozilla research grant.