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
Recommended Citation
Yi Qiao and Xiaozhu Felix Lin,
"Understanding Suspend/Resume Path of Linux Device Drivers"
(August 2, 2018).
The Summer Undergraduate Research Fellowship (SURF) Symposium.
Paper 49.
https://docs.lib.purdue.edu/surf/2018/Presentations/49
Included in
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