族谱网 头条 人物百科

日志文件系统

2020-10-16
出处:族谱网
作者:阿族小谱
浏览:509
转发:0
评论:0
概述对文件系统进行修改时,需要进行很多操作。这些操作可能中途被打断,也就是说,这些操作不是“不可中断”(atomic)的。如果操作被打断,就可能造成文件系统出现不一致的状态。例如:删除文件时,先要从目录树中移除文件的标示,然后收回文件占用的空间。如果在这两步之间操作被打断,文件占用的空间就无法收回。文件系统认为它是被占用的,但实际上目录树中已经找不到使用它的文件了。在非日志文件系统中,要检查并修复类似的错误就必须对整个文件系统的数据结构进行检查。一般在挂载文件系统前,操作系统会检查它上次是否被成功卸载,如果没有,就会对其进行检查。如果文件系统很大或者I/O带宽有限,这个操作可能会花费很长时间。为了避免这样的问题,日志文件系统分配了一个称为日志(journal)的区域来提前记录要对文件系统做的更改。在崩溃后,只要读取日志重新执行未完成的操作,文件系统就可以恢复一致。这种恢复是原子的,因为只存...

概述

对文件系统进行修改时,需要进行很多操作。这些操作可能中途被打断,也就是说,这些操作不是“不可中断”(atomic)的。如果操作被打断,就可能造成文件系统出现不一致的状态。

例如:删除文件时,先要从目录树中移除文件的标示,然后收回文件占用的空间。如果在这两步之间操作被打断,文件占用的空间就无法收回。文件系统认为它是被占用的,但实际上目录树中已经找不到使用它的文件了。

在非日志文件系统中,要检查并修复类似的错误就必须对整个文件系统的数据结构进行检查。一般在挂载文件系统前,操作系统会检查它上次是否被成功卸载,如果没有,就会对其进行检查。如果文件系统很大或者I/O带宽有限,这个操作可能会花费很长时间。

为了避免这样的问题,日志文件系统分配了一个称为日志(journal)的区域来提前记录要对文件系统做的更改。在崩溃后,只要读取日志重新执行未完成的操作,文件系统就可以恢复一致。这种恢复是原子的,因为只存在几种情况:

不需要重新执行:这个事务被标记为已经完成

成功重新执行:根据日志,这个事务被重新执行

无法重新执行:这个事务会被撤销,就如同这个事务从来没有发生过

日志本身不完整:事务还没有被完全写入日志,它会被简单忽略

日志的三个级别

在很多日志文件系统(如:ext3,ReiserFS)中,可以选择三个级别的日志:回写(writeback)、顺序(ordered)和数据(data)。

回写

在回写模式中,只有元数据被记录到日志中,数据会被直接写入主文件系统。这种模式能提供较好的性能,不过有较大的风险。例如:在增大文件时,数据还未写入就发生崩溃,那么文件系统恢复后,文件后面就可能出现垃圾数据。

顺序

在顺序模式中,只有元数据被记录到日志中,但在日志被标记为提交前,数据会被写入文件系统。在这种模式下,如果在增大文件时,数据还未写入就发生崩溃,那么在恢复时这个事务会被简单的撤销,文件保持原来的状态。

数据

在数据模式中,元数据和文件内容都先被写入日志中,然后在提交到主文件系统。这提高了安全性,但损失性能,因为所有数据要写入两次。在这种模式下,如果在增大文件时,发生崩溃,那么可能有两种情况:

日志完整:这时事务会被重新执行,修改会被提交到主文件系统

日志不完整:这时主文件系统还未被修改,只需要简单放弃这个事务

常见的日志文件系统

JFS:IBM的 Journaled File System, 最早的日志文件系统。

Ext4/Ext3文件系统:Ext2文件系统演化而成的日志文件系统,广泛用于Linux系统。

ReiserFS:用B+树作为数据结构的日志文件系统,在处理小文件时有较好的性能。

Btrfs:用B树作为数据结构,被认为是下一代Linux文件系统。

NTFS:微软的NTFS也是日志文件系统,也是Windows NT下最常用的文件系统。

HFS+:苹果公司发展的OS X操作系统下主要使用的文件系统。

参见

数据库


免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。

——— 没有了 ———
编辑:阿族小谱
发表评论
写好了,提交
{{item.label}}
{{commentTotal}}条评论
{{item.userName}}
发布时间:{{item.time}}
{{item.content}}
回复
举报
点击加载更多
打赏作者
“感谢您的打赏,我会更努力的创作”
— 请选择您要打赏的金额 —
{{item.label}}
{{item.label}}
打赏成功!
“感谢您的打赏,我会更努力的创作”
返回

更多文章

更多精彩文章
打赏
私信

推荐阅读

· 寻亲问祖日志(一)
寻亲问祖日志(一上月17日去静海祭祖回到家,我把族谱中各次修叙家谱的序言逐字逐句的看了一遍,2000年的序言中有这样一段话:“按照初衷,本不愿遗漏一人,但由于种种原因,年湮日久,历史留给我们的仍有难以弥补的缺口。如:河南固始、北京采育镇,原谱序言提及有我族人,谱表亦有所载,此次去人专程寻访无着,徒劳往返,甚为可惜。再有,山东泰安有玄姓、元姓万余人,经联系无谱可考,难于接叙;胶南草场、诸城朱解村,有玄姓千余人,为我族支系,迫切希望接叙,但限于经济条件,未能如愿以偿;潍坊昌邑五元村,皆为元姓,可否接叙,无从查考。另外,据知河南台前县玄家桥,有玄姓千余人,已传20余世,并有家谱,是否可与接叙,亦难考究。还有唐山迁安大玄庄、玄家安子、玄家洼,十之八九为玄姓,是否可叙,也不得而知。上述遗留问题,只好寄希望于后人,如有机缘,再行叙修。”这段话深深的刺痛了我!元氏人虽说也有三千多年的历史,可到现在却变成...
· 寻亲访祖日志(四)
今天是2011年1月1日,我和女儿一起迎接新年,去年也是我来南昌跟她一起过新年的。与上次不同的是,这次来南昌还有一个很重要的目的,就是寻亲。12月27日我从上海来到南昌住了一晚,28日便乘车去了抚州崇仁,到达崇仁已经接近中午12点。元家桥村委书记卫平来车站接我,跟随他前往元家桥。元家桥距离崇仁九公里,车沿着蜿蜒的小路慢慢的行驶。卫平告诉我,村里的老人听说我来了都非常高兴,要请我吃饭。原本我觉得快到新年了,这个时候来就已经是打扰了,没想到还这样兴师动众的,更增添了几分歉意。随着车子走向深处,我期盼的心情越来越浓烈。我看到前面有个小桥,正想问卫平那是不是元家桥的时候,车子向左拐了,煞那间鞭炮响起,我看见了高高的墙上《元氏宗祠》四个大字,还有站在祠堂门口的十几个人。顿时,我热血腾涌,激动的心情无以言表。尽管我不是很懂,但我想这一定是迎接贵客表示,而我心里是把这当做迎接亲人回家。卫平给我一一介绍了...
· 文件系统
概述空闲空间示例:每簇4,096字节的NTFS文件系统,每个文件5字节,共100,000个文件,逻辑字节总共500,000字节,但由于一个文件需独占整数倍个簇(最后一簇无论是否占满,仍会独占一整个簇),实际占用磁盘空间409,600,000字节(每个文件5字节独占一个簇)文件系统是一种用于向用户提供底层数据访问的机制。它将设备中的空间划分为特定大小的块(或者称为簇),一般每块512字节。数据存储在这些块中,大小被修正为占用整数个块。由文件系统软件来负责将这些块组织为文件和目录,并记录哪些块被分配给了哪个文件,以及哪些块没有被使用。不过,文件系统并不一定只在特定存储设备上出现。它是数据的组织者和提供者,至于它的底层,可以是磁盘,也可以是其它动态生成数据的设备(比如网络设备)。文件名在文件系统中,文件名是用于定位存储位置。大多数的文件系统对文件名的长度有限制。在一些文件系统中,文件名是大小写不...
· Google文件系统
历史设计GFS专门为Google的核心数据即页面搜索的存储进行了优化。数据使用大到若干G字节的大文件持续存储,而这些文件极少被删除、覆盖或者减小;通常只是进行添加或读取操作。它也是针对Google的计算机集群进行的设计和优化,这些节点是由廉价的“常用”计算机组成,这就意味着必须防止单个节点的高损害率和随之带来的数据丢失。其它设计理念包括高数据吞吐率,甚至这带来了访问反应期变差。节点分为两类:主节点和Chunkservers。Chunkservers存储数据文件,这些单个的文件象常见的文件系统中的簇或者扇区那样被分成固定大小的数据块(这也是名字的由来)。每个数据块有一个唯一的64位标签,维护从文件到组成的数据块的逻辑映射。每个数据块在网络上复制一个固定数量的次数,缺省次数是3次,对于常用文件如可执行文件的次数要更多。主服务器通常并不存储实际的大块数据,而是存储与大块数据相关的元数据,这样的数
· MINIX文件系统
设计与实现一个MINIX文件系统由6个组成部分:引导块是总是存储在第一个块。在系统启动时,它包含了引导加载程序的加载和运行一个操作系统。第二个块是超块,它是存储有关文件系统,即允许操作系统来定位和理解其它文件系统结构数据。例如,数i节点和区,两个位图的大小和的起始块的数据区。该索引节点位图是一个简单的地图索引节点跟踪哪些是在使用中,哪些是免费的通过代表他们的任何一个(使用时)或零(免费)。该区域的位图的工作原理相同的方式作为索引节点位图,除了它跟踪的区域。该索引节点区域。每个文件或目录被表示为一个inode,它记录元数据,包括类型(文件,目录,块炭,管道),标识为用户和组,三时间戳记录的日期和上次访问时间,最后修改和最后的状态改变。一个inode还包含指向该区域中的地址的列表的数据区所在的文件或目录的实际存储数据。该数据区是在文件系统的最大组成部分,使用大部分空间。它是在实际的文件和目录的...

关于我们

关注族谱网 微信公众号,每日及时查看相关推荐,订阅互动等。

APP下载

下载族谱APP 微信公众号,每日及时查看
扫一扫添加客服微信