研究生: |
徐年億 Hsu, Nien I |
---|---|
論文名稱: |
在嵌入式系統中使用動態檔尾壓縮來改善檔案系統的空間利用率研究 Dynamic Tail Packing to Optimize Space Utilization of File Systems in Embedded Computing Systems |
指導教授: |
石維寬
Shih, Wei-Kuan |
口試委員: |
黃能富
張原豪 黃柏鈞 |
學位類別: |
碩士 Master |
系所名稱: |
電機資訊學院 - 資訊工程學系 Computer Science |
論文出版年: | 2014 |
畢業學年度: | 102 |
語文別: | 中文 |
論文頁數: | 34 |
中文關鍵詞: | 檔案系統 、檔尾壓縮 、空間利用率 、嵌入式系統 |
外文關鍵詞: | File System, Tail Packing, Space Utilization, Embedded Systems |
相關次數: | 點閱:2 下載:0 |
分享至: |
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報 |
嵌入式系統為了能大量生產,且方便攜帶或是佈署在任意的空間中,成本多屬低廉,這限制了它們的運算能力和儲存空間等資源,於是在運作中,任何資源上的浪費都是非常嚴重的,其中一個重要的議題就是如何有效利用儲存空間,嵌入式系統並不會使用太過於複雜的file system,但較為簡單的file system對於tail(small) data的處理普遍有空間浪費的問題,它們並不會針對這類型的檔案有特殊處理,而是當作一般檔案來對待,導致這些tail(small) data跟一般檔案一樣占用同樣的空間,原因來自於簡單的file system皆使用cluster作為最小的儲存空間,當要儲存的tail(small) data小於cluster非常多的時候,只會占用cluster一小部分的空間,但cluster剩餘的空間卻無法被其他檔案使用。
對於這樣的問題有一個通用的方式來解決,tail packing技術,該技術可以讓一個cluster儲存多個檔案的tail(small) data,但是它的缺點在嵌入式系統上卻非常明顯,當tail(small) data的size增加時,如果所在的cluster並沒有足夠的額外空間可用,必須另外再找一個有足夠空間的cluster然後將整個tail(small) data的資料搬移到新的cluster,這樣的搬移是非常大的負擔。
我們提出一個dynamic tail packing機制來處理這樣的情況,與傳統的tail packing不同的是,dynamic tail packing允許tail(small) data儲存在多個cluster中,並以特殊的方式形成tail chain,因此,當tail(small) data的size改變的時候,只要在chain中加入新的data即可。
該機制實作在Linux作業系統上,實驗結果顯示出該機制明顯的改善了遷入系統的空間利用率和效能。
Embedded computing systems usually have limited computing power,RAM space, and storage capacity due to the consideration of their cost,energy consumption, and physical size.
Some of them such as sensor nodes and embedded consumer electronics only have a small-sized flash memory as their storage with a (simple) file system to manage their data, which are usually of small sizes. However, the existing file systems usually have low space utilization on managing small files and the tail data of large files. In this work, we propose a dynamic tail packing scheme to optimize the space utilization of file systems by dynamically aggregating/packing the tail data of (small) files together.The proposed scheme was implemented in the file system of Linux operating systems to evaluate its capability. The results demonstrate that the proposed scheme could significantly improve the space utilization of existing file systems.
[1] Microsoft corporation, microsoft extensible firmware initiative fat32 file system specification @ONLINE,
http://staff.washington.edu/dittrich/misc/fatgen103.pdf.
[2] Snia technical council, snia iotta repository @ONLINE, http://iotta.snia.org/.
[3] S. Bai and X.-L. Liao. A parallel flash translation layer based on page group-block hybrid-mapping method. IEEE Transactions on Consumer Electronics, 58(2):441–449, May 2012.
[4] B. Carrier. File System Forensic Analysis. Addison Wesley Professional, 2005.
[5] J.-U. Kang, H. Jo, J.-S. Kim, and J. Lee. A superblock-based flash translation layer for nand flash memory. In Proceedings of the 6th ACM/IEEE International Conference on Embedded Softwar, pages 161–170. ACM/IEEE,2006.
[6] J. Kim, J. M. Kim, S. Noh, S. L. Min, and Y. Cho. A space-efficient flash translation layer for compactflash systems. IEEE Transactions on Consumer Electronics, 48(2):366–375, May 2002.
[7] J. Lee, S. Kim, H. Kwon, C. Hyun, S. Ahn, J. Choi, D. Lee, and S. H. Noh. An adaptive two-level management for the flash translation layer in embedded systems. In Proceedings of the 7th ACM/IEEE International Conference on Embedded Softwar, pages 174–182. ACM/IEEE, 2007.
[8] Y. Lee, T. Jung, and I. Shin. Demand-based flash translation layer considering spatial locality. In Proceedings of the 28th Annual ACM Symposium on Applied Computing, pages 1550–1551. ACM, 2012.
[9] S.-H. Lim and K.-H. Park. An efficient nand flash file system for flash memory storage. IEEE Transactions on Computers, 55(7):906–912, July 2006.
[10] D. Liu, Y. Wang, Z. Qin, Z. Shao, and Y. Guan. A space reuse strategy for flash translation layers in slc nand flash memory storage systems. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 20(6):1094–1107,
June 2012.
[11] Y. Lu, J. Shu, and W. Zheng. Extending the lifetime of flash-based storage through reducing write amplication from file systems. In Proceedings of the Conference on File and Storage Technologies (FAST13), pages 257–270, 2013.
[12] D. Narayanan, A. Donnelly, and A. Rowstron. Write off-loading: practical power management for enterprise storage. ACM Trans. on Storage, 4(3):1–23, Novemeber 2008.
[13] S. Park and S.-Y. Ohm. New techniques for real-time fat file system. IEEE Transactions on Consumer Electronics, 52(1):1–9, Feberuary 2006.
[14] H. Reiser. Reiserfs @ONLINE, https://reiser4.wiki.kernel.org/index.php/Main_Page.
[15] F. Schmuck and R. Haskin. Gpfs: A shared-disk file system for large computing clusters. In Proceedings of the Conference on File and Storage Technologies (FAST02), pages 231–244, 2002.
[16] P. Sehgal, V. Tarasov, and E. Zadok. Evaluating performance and energy in file system server workloads. In Proceedings of the Conference on File and Storage Technologies (FAST10), pages 253–266, 2010.
[17] P. Sehgal, V. Tarasov, and E. Zadok. Optimizing energy and performance for server-class file system workloads. ACM Trans. on Storage, 6(3):1–31, September 2010.
[18] K. Suzaki, K. Iijima, T. Yagi, and C. Artho. Analysis of disk access patterns on file systems for content addressable storage. In 2011 Linux Symposium, pages 23–36, 2011.
[19] C.-H. Wu and T.-W. Kuo. Block recycling schemes and their cost-based optimization in nand flash memory based storage system. In IEEE/ACM International Conference on Computer-Aided Design, pages 601–606. IEEE/ACM, November 2006.
[20] M.-C. Yang, Y.-H. Chang, P.-C. Huang, and T.-W. Kuo. Working-set-based address mapping for ultra-large-scaled flash devices. In Proceedings of the Eighth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis, pages 493–502. IEEE/ACM/IFIP, 2012.
[21] J. Zhang, J. Zhang, X. Han, and L. Xu. A storage slab allocator for disk storage management in file system. In IEEE International Conference on Networking, Architecture, and Storage, NAS 2009., pages 295–302, 2009.