Title | : | Debugging in a world of software frameworks |
Speaker | : | Abhilash Jindal (Mobile Enerlytics, USA) |
Details | : | Thu, 20 Jun, 2019 11:00 AM @ A M Turing Hall |
Abstract: | : | Modern programmers stand on 'the shoulders of giant' software frameworks. The programmers are able to build complicated applications fairly quickly by just stringing together many intricate framework APIs. But, due to the limited understanding of underlying frameworks, programmers often make mistakes in using these APIs. Moreover, this limited understanding has made debugging software systems significantly harder.
In this talk, we will take a close look at wakelock APIs, a set of APIs for explicitly managing the power states of hardware components, that was introduced by the Android framework. I will present the complexity of correctly using wakelock APIs and present a taxonomy of most prevalent energy bugs in the Android ecosystem— sleep disorder bugs which arise from incorrect usage of wakelock APIs. I will then present KLOCK that makes use of a set of static analyses to systematically identify sleep-induced time bugs, a subclass of sleep disorder bugs. KLOCK aided in detecting 63 time bugs in the Android kernel. Bio: Abhilash Jindal received B.Tech. in Electrical Engineering from IIT Kanpur. He received his Ph.D. in Computer Science from Purdue University where he researched software-based approaches for extending mobile battery life. He has published papers in top system conferences including OSDI, ATC, Eurosys, Mobisys, Sigmetrics, and Mobicom. Currently, he is commercializing his research work serving as the CTO of Mobile Enerlytics, a silicon valley startup. His research interests include mobile systems, software engineering, and operating systems. |