Research Website

https://engineering.purdue.edu/~xzl/xsel/

Keywords

Operating System, Kernel hacking, Linux Device Drivers, Mobile Devices, Power management

Presentation Type

Poster

Research Abstract

Suspend/Resume (S/R), stands for putting mobile devices into sleep mode and wakes them up. Such a S/R process is heavily used in mobile devices today. While controlling by the operating system (OS), S/R process consumes a dominating portion of energy. In order to minimize the power consumption, we have to understand what happens on the S/R Path of modern device drivers so that further solutions reducing the overhead in that process can be found. In a modern OS, device drivers can make up over 70% of the source code, while still heavily dependent on the rest of the OS. Such a property made analyzing the driver code an extremely complicated and important task. We built a static code analysis tool and using the tool, we were able to quantitatively analyze the S/R path of Linux device drivers. By comparing different versions, we observed the evolution of Linux S/R path over time. In this paper, we present a quantitative analysis of Linux driver codes on the S/R path and show how they evolve over time.

Session Track

Computer and Web Based Applications

Share

COinS
 
Aug 2nd, 12:00 AM

Understanding Suspend/Resume Path of Linux Device Drivers

Suspend/Resume (S/R), stands for putting mobile devices into sleep mode and wakes them up. Such a S/R process is heavily used in mobile devices today. While controlling by the operating system (OS), S/R process consumes a dominating portion of energy. In order to minimize the power consumption, we have to understand what happens on the S/R Path of modern device drivers so that further solutions reducing the overhead in that process can be found. In a modern OS, device drivers can make up over 70% of the source code, while still heavily dependent on the rest of the OS. Such a property made analyzing the driver code an extremely complicated and important task. We built a static code analysis tool and using the tool, we were able to quantitatively analyze the S/R path of Linux device drivers. By comparing different versions, we observed the evolution of Linux S/R path over time. In this paper, we present a quantitative analysis of Linux driver codes on the S/R path and show how they evolve over time.

https://docs.lib.purdue.edu/surf/2018/Presentations/49