Article ID | Journal | Published Year | Pages | File Type |
---|---|---|---|---|
6885383 | Journal of Systems and Software | 2018 | 25 Pages |
Abstract
In this paper, we propose a novel approach named AutoRR, which can automatically and reliably release resources based on dynamic analysis. To identify resource handling operations, we use the dynamic specification-mining technique to mine resource acquiring and releasing functions. During execution, we maintain a resource-state list by intercepting the mined functions. If the driver fails to release acquired resources, AutoRR will report bugs and call corresponding releasing functions to safely release the resources. Dynamic analyses of resource dependency, allocation hierarchy, error handling form and releasing time are performed to avoid introducing new bugs when releasing resources. The evaluation on 12 Linux drivers shows that 40 detected bugs are all successfully and safely tolerated, and the overhead is only 7.84%.
Related Topics
Physical Sciences and Engineering
Computer Science
Computer Networks and Communications
Authors
Bai Jia-Ju, Wang Yu-Ping, Hu Shi-Min,