Embedded System Lab A Study of Linux File
Embedded System Lab. A Study of Linux File System Evolution L. Lu, A. C. Arpaci-Dusseau, R. H. Arpaci. Dusseau, S. Lu Kilmo Choi rlfah 926@naver. com 최길모 최진화 Embedded System Lab.
Index l Introduction l Patch Overview l File System Bugs l Performance and Reliability l Conclusion 최길모 Embedded System Lab.
Introduction l Open-source local file-systems remain a critical component in the world of modern storage(ex. Distributed file system, Smart phone) l Target file-systems £ Every file-system in Linux 2. 6 series(2. 6. 0~2. 6. 39) over a period of 8 years including 5079 patches £ l Ext 3, Ext 4, XFS, Btrfs, Reiser. FS, JFS Patches category £ 최길모 Bug, performance, reliability, etc. Embedded System Lab.
Patch Overview l Investigate general questions regarding file-system patches £ l patch type, patch trend, patch size Patch Type 최길모 Embedded System Lab.
Patch Overview l Patch Trend £ While the number of patches per version increased in general, the percentage of patch type relatively stable £ l Bug patches do not decrease over time Patch Size £ 최길모 Way to quantify the complexity of patch Embedded System Lab.
File System Bugs l Correlation Between Code and Bugs 최길모 Embedded System Lab.
File System Bugs l Bug Patterns and Trends £ 최길모 Fine-grained bug patterns provide useful information to developer and tool builders Embedded System Lab.
File System Bugs l Bug Consequence 최길모 Embedded System Lab.
File System Bugs l Bug Pattern Examples and Analysis £ 최길모 Semantic Bugs Embedded System Lab.
File System Bugs £ 최길모 Concurrency Bugs Embedded System Lab.
File System Bugs £ 최길모 Memory Bugs Embedded System Lab.
File System Bugs £ 최길모 Error Code Bugs Embedded System Lab.
Performance and Reliability l Performance Patches £ £ £ 최길모 Synchronization ü Inefficient usage of synchronization methods ü removing unnecessary locks, using smaller locks Access Optimization ü Apply smarter access strategies ü caching metadata and statistics, avoiding unnecessary I/O and computing Schedule ü Improve I/O operation scheduling ü batching writes, opportunistic readhead Embedded System Lab.
Performance and Reliability l Reliability £ £ Robust ü Enhance file-system robustness ü boundary limits and access permission checking Corruption Defense ü £ Error Enhancement ü £ user/kernel space pointer and lock annotation for early bug detection Debug ü 최길모 Improve original error handling Annotation ü £ Improve file systems ability to handle various possible corruption Add more internal debugging or tracing support Embedded System Lab.
Conclusion l 5079 patches across six linux file system l Nearly 1800 bugs l “Software archeology” l Should be of utility to file-system developers and tool makers 최길모 Embedded System Lab.
- Slides: 15