A Survey to Structure of Directories in File System
Many applications require high throughput for operating small files, such as picture server. File systems often use tree structure to manage data blocks, which can improve the efficiency of adding, deleting, and searching files under a directory. This article gives an introduction to design of the directory of several popular file systems and shows the influence of structure on the performance by several experiments.
KeywordsFile system Linux kernel Directory design
The work described in this paper is sponsored by the Chinese 863 Program under Grant No. 2015AA015303 and the National Natural Science Foundation of China under Grant No. 61472241.
- 1.Mingming Cao, Suparna Bhattacharya, and Ted Ts’o. Ext4: The next generation of ext2/3 filesystem. In LSF, 2007.Google Scholar
- 2.Vijay Chidambaram, Tushar Sharma, Andrea C Arpaci-Dusseau, and Remzi H Arpaci-Dusseau. Consistency without ordering. In FAST, page 9, 2012.Google Scholar
- 3.Subramanya R Dulloor, Sanjay Kumar, Anil Keshavamurthy, Philip Lantz, Dheeraj Reddy, Rajesh Sankaran, and Jeff Jackson. System software for persistent memory. In Proceedings of the Ninth European Conference on Computer Systems, page 15. ACM, 2014.Google Scholar
- 4.Steven R Jahnke. Data synchronization hardware primitive in an embedded symmetrical multiprocessor computer, November 14 2006. US Patent 7,137,118.Google Scholar
- 5.Ryusuke Konishi, Yoshiji Amagai, KojiSato, Hisashi Hifumi, Seiji Kihara, and Satoshi Moriai. The linux implementation of a log-structured file system. ACM SIGOPS Operating Systems Review, 40(3):102–107, 2006.Google Scholar
- 6.Changman Lee, Dongho Sim, Jooyoung Hwang, and Sangyeun Cho. F2 fs: A new file system for flash storage. In 13th USENIX Conference on File and Storage Technologies (FAST 15), pages 273–286, 2015.Google Scholar
- 7.Richard McDougall and Jim Mauro. Filebench. URL: http://www.nfsv4bat.org/Documents/nasconf/2004/filebench.pdf (Cited on page 56.), 2005.
- 8.Paul E McKenney, Dipankar Sarma, and Maneesh Soni. Scaling dcache with rcu. Linux Journal, 2004(117):3, 2004.Google Scholar
- 9.Mark Nielsen. How to use a ramdisk for linux. Linux Gazette (44), 1999.Google Scholar
- 10.Ohad Rodeh, Josef Bacik, and Chris Mason. Btrfs: The linux b-tree filesystem. ACM Transactions on Storage (TOS), 9(3):9, 2013.Google Scholar
- 11.Mendel Rosenblum and John K Ousterhout. The design and implementation of a log-structured file system. ACM Transactions on Computer Systems (TOCS), 10(1):26–52, 1992.Google Scholar
- 12.Priya Sehgal, Sourav Basu, Kiran Srinivasan, and Kaladhar Voruganti. An empirical study of file systems on nvm. In Mass Storage Systems and Technologies (MSST), 2015 31st Symposium on, pages 1–14. IEEE, 2015.Google Scholar
- 13.Stephen Tweedie. Ext3, journaling filesystem. In Ottawa Linux Symposium, pages 24–29, 2000.Google Scholar
- 14.Werner Vogels. File system usage in windows nt 4.0. In ACM SIGOPS Operating Systems Review, volume 33, pages 93–109. ACM, 1999.Google Scholar
- 15.Zhang Mingliang Zhang Zongjie. Analysis of fat32 file system. Computer & Digital Engineering, 1:014, 2005.Google Scholar