欢迎来到天天文库
浏览记录
ID:32258413
大小:3.93 MB
页数:98页
时间:2019-02-02
《linux日志型文件系统的研究及其性能优化》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、摘要Linux支持众多文件系统,Ext2文件系统是最广泛采用的非日志型文件系统。但在日常使用中,断电故障或系统崩溃这样不可预测的事件可能导致文件系统处于不一致状态,为克服这一问题而采用e2fSck将对整个磁盘进行全面彻底地检查和修复,保证了文件系统的可用性。但是随着磁盘容量越来越大,这种检查和修复变得越来越耗时费事。于是Ext2引入了日志块设备层(JBD)。而以日志为基础的修复磁盘的代价,相对于对整个磁盘进行检查修复,是微乎其微的。这样Ext3大大减少了文件系统遇到不可预测的事件时用于恢复文件系统一致性所需要的时间。但本文经研究
2、测试发现,在嵌入式平台这样频繁断电或系统崩溃一些恶劣的工作条件下,Ext3文件系统也表现出了一些问题。如对以Ext3格式存储在磁盘上的文件进行正常的文件操作过程中若是出现了断电或是系统崩溃之类的情况,经e2fsck根据日志对文件进行检查修复之后,文件还是存在着丢失、不完整等问题。随着这些错误的累加,文件系统中的文件将越来越容易出现这些问题,出错率明显上升,导致最后唯一解决的办法就是将磁盘进行格式化,造成所有数据文件的丢失。这些问题严重地损害了Ext3文件系统对文件的保护性,危及到了Ext3文件系统的稳定性。针对上述这种情况,本文
3、从Linux操作系统文件系统模块出发,在众多文件系统中仔细研究了Ext2和Ext3特有的极其相似的磁盘数据结构和内存数据结构,及其大同小异的文件操作流程。在此基础上,结合JBD层和Ext3文件系统交互的三个基本单位:旬柄、事务、日志,研究了JBD层应对日志所有情况的三种不同反应,所有的情况均可退化到这三种情况当中去。进一步划分了JBD层工作的重要流程和核心操作:提交操作和检查点操作,在考察了JBD原有算法的基础上,’认为理论上十分完善的JBD机制实际仍然无法保证存储于磁盘上的日志免受磁盘故障的损害,追究其内部机制可以发现,这是由
4、两个原因引起的,一是与文件系统同在一个磁盘上的日志同样受到磁盘故障的困扰,也容易被损坏,二是为提高效率而采用的异步缓冲写入机制使得日志的事务在内存中停留的时间过长,更加容易受到断电等故障的损害。因此,作为一切修复依据的日志成为了保护的重点对象。如何尽量缩短日志在内存中停留时间,成为了本文研究的重点。在认真考察内核文件系统部分和日志块设备层部分的代码和重要数据结构的基础上,本文对内核中原有算法进行了针对性的改进,采用了同步写入的策略代替原有的异步缓冲机制,在不影响内核原有功能的基础上,试图提高文件摘要系统应对频繁断电或系统崩溃等突
5、发事件的能力。针对改进后的内核,本文借助于嵌入式系统uCLinux设计了针对性的实验,用常见的文件操作:拷贝和删除,来测试改进后的Ext3文件系统的稳定性。实验结果表明,改进后的算法能较明显降低原有算法的出错率。关键词:日志Linux日志块设备层文件系统性能优化IIAbstractABSTRACTLinuxsupportsmanykindsoffilesystems.AstheinstinctfilesystemofLinuxOS,ex2isthemostwidely—usednot-joumalingfilesystem.In
6、dailyuse,unpredictableaccidentslikepowerfailureorsystemcollapsescarlbringfilesystemtoinconsistencestate.Tosolvethisproblem,autorunconsistence.checktool,e2fsck,willbringathoroughandcompletecheckoverthewholedisk,andcanmakeouttheinconsistencecausedbyaccidentsmentionedbe
7、fore.Itpromises也euseoftheExt2filesystem.‘However,asthecapacityofdiskgrows,thischeckbecomesmoreandmoretime-consumingandtroublesome.JournalingblockdeviceisaddedintoExt2filesystem.Thecostofcheckingbasedonjoumalisnegligiblecomparedwiththatbasedonthewholedisk.Thus,Ext3fil
8、esystemreducesobviouslythetimeusedtomaintainconsistenceoffilesystemwhenthereareunpredictableaccidentslikepowerfailureorsystemcollap
此文档下载收益归作者所有