专栏电商日志财经减肥爱情
投稿投诉
爱情常识
搭配分娩
减肥两性
孕期塑形
财经教案
论文美文
日志体育
养生学堂
电商科学
头戴业界
专栏星座
用品音乐

Linux文件系统之MINIX文件系统

  MINIX文件系统与标准UNIX的文件系统基本相同,它由6个部分组成:引导块;超级块;i节点位图;逻辑块位图;i节点;数据块。对于一个普通的磁盘块设备来说,其各部分的分布见下图:
  整个块设备被划分成以1KB为单位的磁盘块。
  引导块是计算机加电启动时可由ROMBIOS自动读入的执行代码和数据盘块。但一个系统中并非所有盘设备都用于作为引导设备,所以对于不用于引导的盘片,这一盘块中可以不含代码。但任何盘块设备必须含有引导块空间,以保持MINIX文件系统格式的统一。即文件系统只是在块设备上空出一个存放引导块的空间。如果你把内核映像文件放在文件系统中,那么你就可以在文件系统所在设备的第1个块(即引导块空间)存放实际的引导程序,并由它来取得和加载文件系统中的内核映像文件。
  对于容量巨大的硬盘块设备,通常会在其上会划分出几个分区,并且在每个分区中都可存放一个不同的完整文件系统,见下图。
  图中表示有4个分区,分别存放着FAT32文件系统、NTFS文件系统、MINIX文件系统和EXT2文件系统。硬盘的第一个扇区是主引导扇区,其中存放着硬盘引导程序和分区表信息。分区表中的信息指明了硬盘上每个分区的类型、在硬盘中起始位置参数和结束位置参数以及占用的扇区总数,参见kernelblkdrvhd。c文件后的硬盘分区表结构
  超级块用于存放盘设备上文件系统的结构信息,并说明各部分的大小。其结构见下图(MINIX文件系统):
  系统启动时会从磁盘的超级块中读取信息,初始化上图表中的数据结构。
  其中,sninodes表示设备上的i节点总数。snzones表示设备上以逻辑块为单位的总逻辑块数。simapblocks和szmapblocks分别表示i节点位图和逻辑块位图所占用的磁盘块数。sfirstdatazone表示设备上数据区开始处占用的第一个逻辑块块号。slogzonesize是使用2为底的对数表示的每个逻辑块包含的磁盘块数。对于MINIX1。0文件系统该值为0,因此其逻辑块的大小就等于磁盘块大小,都是1KB。smaxsize是以字节表示的最大文件长度,这里不超过4GB。当然这个长度值将受到磁盘容量的限制。smagic是文件系统魔幻数,用以指明文件系统的类型。structminixsbinfo{unsignedlongsninodes;该成员用于描述MINIXFS文件系统含有的inode数量。该值用于计算InodeBitmap和InodeTable的大小unsignedlongsnzones;该成员用于描述MINIXFS文件系统中含有的Zone的数量。该值用于计算ZoneBitmap。unsignedlongsimapblocks;该成员用于描述InodeBitMap占用BLOCKSIZE的数量,InodeBitMap中的每个位表示一个inode的使用情况,如果某一个置位,那么对应的minixinode就被使用,反之表示对应的minixinode没有被使用。unsignedlongszmapblocks;该成员用于描述ZoneBitMap占用BLOCKSIZE的数量。ZoneBitMap中的每个位表示一个Zone的使用情况,如果某一位置位,那么对应的zone就被使用,反之表示对应的zone没有被使用。该成员用于描述第一个datazone所在的block号。Zone分为两类,一类是Reserved的,用于存储MINIXFS的系统信息,另外一类是Datazone,用于存储文件和目录的,而sfirstdatazone用于指向第一个datazone的block号unsignedlongsfirstdatazone;MINIXFS将文件系统分成BLOCKSIZE大小的数据块,BLOCKSIZE的大小由slogzonesize决定,其计算方法如下:BLOCKSIZE1024slogzonesizeunsignedlongslogzonesize;unsignedlongsmaxsize;simap〔8〕是一个文件缓存数组。数组用于缓存MINIXFS的所有InodeBitMap内容。structbufferheadsimap〔8〕;szmap〔8〕是一个文件缓存数组,数组用于缓存MINIXFS的所有ZoneBitMap内容structbufferheadszmap〔8〕;sdirsize用于描述minixdirentry结构的大小,minixdirentry用于描述一个minix目录。unsignedlongsdirsize;unsignedlongsnamelen;snamelen用于描述文件或目录名字的大小structbufferheadssbh;ssbh用于缓存磁盘中MINIXFS的超级快信息structminixsuperblocksms;sms用于指向minixsuperblock在内存中的位置。unsignedshortsmountstate;smountstate用于描述MINIXFS的mount状态。};
  较低版本系统中使用一个全局的superblocks〔〕来保存超级块,该数据有多少元素也就支持多少个文件系统,高版本使用全局的superblocks链表。
  超级块表将在super。c程序的mountroot()函数中被初始化,在readsuper()函数中会为新加载的文件系统在表中设置一个超级块项,并在putsuper()函数中释放超级块表中指定的超级块项。
  逻辑块位图用于描述盘上每个数据盘块的使用情况。除第1个比特位(位0)以外,逻辑块位图中每个比特位依次代表盘上数据区中的一个逻辑块。因此逻辑块位图的比特位1代表盘上数据区中第一个数据盘块,而非盘上的第一个磁盘块(引导块)。当一个数据盘块被占用时,则逻辑块位图中相应比特位被置位。由于当所有磁盘数据盘块都被占用时查找空闲盘块的函数会返回0值,因此逻辑块位图最低比特位(位0)闲置不用,并且在创建文件系统时会预先将其设置为1。
  当向磁盘申请一个逻辑块时,对整个逻辑块位图进行搜索,寻找首个是0
  的比特位,该比特位所在的序号即为该数据库的逻辑块号,然后把逻辑块号保存到idata〔〕中。
  从超级块的结构中我们还可以看出,逻辑块位图最多使用8块缓冲块(szmap〔8〕),而每块缓冲块大小是1024字节,每比特表示一个盘块的占用状态,因此一个缓冲块可代表8192个盘块。8个缓冲块总共可表示65536个盘块,因此MINIX文件系统1。0所能支持的最大块设备容量(长度)是64MB。
  i节点用于存放盘设备上每个文件和目录名的索引信息。i节点位图用于说明i节点是否被使用,同样是每个比特位代表一个i节点。对于1K大小的盘块来讲,一个盘块就可表示8192个i节点的使用状况。与逻辑块位图的情况类似,由于当所有i节点都被使用时查找空闲i节点的函数会返回0值,因此i节点位图第1个字节的最低比特位(位0)和对应的i节点0都闲置不用,并且在创建文件系统时会预先将i节点0对应比特位图中的比特位置为1。因此第一个i节点位图块中只能表示8191个i节点的状况。
  盘上的i节点部分存放着文件系统中文件或目录名的索引节点,每个文件或目录名都有一个i节点。每个i节点结构中存放着对应文件或目录的相关信息。
  所以图中
  imode。。。izone〔〕这些一条条信息是保存到磁盘中的inode信息,当需要某个读取inode信息时,会从i节点中读取一条对应的inode信息保存到内存中,同时是使用izone〔〕进行初始化inode结构中的idata〔〕,所以在内存中使用的是idata〔〕保存数据块地址,当同步inode节点时,把内存中的idata〔〕刷到磁盘izone〔〕中。
  当创建一个inode节点时先从i节点位图中获取一个bit未使用的位,根据该bit位对应的位置下标(比如该bit位置为第1025的位置),根据下标从i节点中计算属于哪个数据块中,然后从对应的块中进行索引找到块中第n条i节点数据,
  然后从该i节点数据中izone〔〕中即可获取或者存放数据。
  如文件宿主的id(uid)、文件所属组id(gid)、文件长度、访问修改时间以及文件数据块在盘上的位置等。整个i节点结构共使用32个字节,见下图所示:
  imode字段用来保存文件的类型和访问权限属性。其比特位1512用于保存文件类型,位119保存执行文件时设置的信息,位80表示文件的访问权限,见下图
  文件中的数据存放在磁盘块的数据区中,而一个文件名则通过对应的i节点与这些数据磁盘块相联系,这些盘块的号码就存放在i节点的逻辑块数组izone〔〕中。其中,izone〔〕数组用于存放i节点对应文件的盘块号。izone〔0〕到izone〔6〕用于存放文件开始的7个磁盘块号,称为直接块。若文件长度小于等于7K字节,则根据其i节点可以很快就找到它所使用的盘块。若文件大一些时,就需要用到一次间接块了(izone〔7〕),这个盘块中存放着附加的盘块号。对于MINIX文件系统一个盘块中可以存放(10242)512个盘块号,因此可以寻址512个盘块。若文件还要大,则需要使用二次间接盘块(izone〔8〕)。二次间接块的一级盘块的作用类似与一次间接盘块,因此使用二次间接盘块可以寻址512512个盘块。参见下图所示:
  所以对于MINIX文件系统1。0版来说,一个文件的最大长度为(7512512512)262,663KB。
  这些izone〔〕信息是保存在磁盘中的,当读取inode时会把这些izone〔〕刷到inode中的idata〔〕中,也即是在内存中以idata〔〕方式存在。
  另外,对于dev目录下的设备文件来说,它们并不占用磁盘数据区中的数据盘块,即它们文件的长度是0。设备文件名的i节点仅用于保存其所定义设备的属性和设备号。设备号被存放在设备文件i节点的zone〔0〕中。
  当所有i节点都被使用时,查找空闲i节点的函数会返回值0,因此,i节点位图最低比特位和i节点0都闲置不用。i节点0的结构被初始化成全零,并在创建文件系统时将i节点0的比特位置位。
  参考文档
  http:www。oldlinux。orgdownloadCLK5。0WithCover。pdfpage648zoom100,72,450

联想小新Pro272023一体机今晚开售搭载i9处理器A370M显卡IT之家3月20日消息,联想小新Pro272023一体机今晚开售,仅有一个版本可选,搭载英特尔13代酷睿i913900HA370M独显32GDDR5内存1TB固态硬盘,首发8999楼市回暖了吗?35城进入复苏通道澎湃新闻记者计思敏3月16日,国家统计局发布2023年2月份70个大中城市商品住宅销售价格变动情况。今年2月份,随着政策效果逐步显现及住房需求进一步释放,70个大中城市中商品住宅销S2B2C商城系统平台可实现企业业务一体化管理价值S2B2C电商系统商城基于对新商业未来的思考,降低运营成本,提升整体效率。下面易族智汇javashop编辑整理为什么说S2B2C商城系统平台实现企业业务一体化管理价值,S2B2C商未来二十年人工智能的发展猜想随着科技的飞速发展,人工智能已经渗透到了我们生活的方方面面。从智能手机自动驾驶汽车到语音识别和机器翻译,人工智能不断地改变着我们的生活方式。在未来二十年内,我们预计人工智能将在多个唐山三友硅业用数字化车间建设叩开智能工厂大门培育数字动能,推进智能制造,连日来,唐山三友硅业深入落实职代会工作报告精神,通过积极引进先进技术及设备,着力构建安全生产全流程网络化信息化数据化共享平台,持续推进智能化数字车间建设鹿客全球旗舰新品掌心锁V5创新外观掌静脉堪称智能锁界爱马仕3月21日,国内智能门锁领军企业鹿客科技在杭州运河文化发布中心举办鹿客2023全球旗舰新品发布会,正式发布其高端旗舰新品掌心锁V5系列V5Max和V5Pro,官方售价分别为3999东北创业者点赞无锡,可抵千万广告费,也揭开东北衰落的遮羞布最近一位东北来无锡创业的小哥火了,准确的说是无锡的营商环境火了。这是一位做餐饮的老板,在无锡开店,店铺已经装修完毕,但是遇到了一个对他来说天大的困难,如果解决不了数十万的投资就将打厦门上市公司协会第六届会员大会暨换届大会圆满落幕3月17日下午,厦门上市公司协会第六届第一次会员大会在厦门第一广场隆重举行。大会选举产生了厦门上市公司协会第六届理事会监事会,以及新一届协会领导班子。安井食品集团董事长刘鸣鸣成功当全家一起玩起来,华为智慧屏游戏中心合家欢会员免费领随着更多用户回归客厅场景,家庭影院家庭K歌家庭健身和家庭游戏等成为重要的家庭娱乐方式。近日,华为智慧屏游戏中心上线了合家欢会员,新用户前2个月免费试用,让我们全家一起玩了起来。对于泰勒斯威夫特演唱会上的性感紧身衣泰勒斯威夫特(TaylorSwift)使用了性感的紧身衣设计,以重现她多年的旅程。闪闪发光的紧身衣在大约三个小时的演唱会上,泰勒斯威夫特以44首歌曲和令人印象深刻的服装没有让观众失三湘第一美女巨贪,依靠色相铺路,换取仕途上的一帆风顺今天的主角她是一个只有初中文化程度的女人,但却只用了短短13年,从一名仓库保管员火箭飞升到副厅级干部。自蒋艳萍17岁起,她就利用自己的容貌和手段,给自己换来了无数好处,而她自己的职
经营状况良好的国有企业需要私有化改制吗?不需要,国企即国有的,是有社会责任的私企是私人的,仅可对自己负责国企当国家处于困难的时候,是不计成本以国家利益为重的,私企是做不到的当新冠肺炎病毒在武汉时,驰援武汉的大多数医护人员朋友看到一个招聘想去加拿大枫叶糖浆厂做流水线,工资税后19760,可信吗?可信。六年前在美国做酒店服务的时候一个月2000美金左右两年前在新西兰做奇异果包装差不多一个月2500纽币加拿大过去的有黑工,如果是正规劳务输出的话需要有雅思成绩,凡是说过去很简单高血压能吃枸杞吗?高血压已经成为我们生活中最为常见的慢性疾病之一,而枸杞可以说是我们生活中最为常见的保健食品,那么高血压可以吃枸杞吗?可以的。高血压患者可以吃枸杞,枸杞本身就是一种保健食品,里面所含我想带女朋友自驾游去西藏,大家有什么好的建议?需要准备些什么?谢邀!我刚从西藏回来,也是我第五次进藏了。如果你带女朋友进藏,你要特别照顾好女朋友,你要是第一次进藏的话,我建议做好一些准备,首先是物资准备,因为进藏路途遥远,气候变化多端,1。常朋友的奶粉三百多,我的奶粉一百块,以后两个宝宝会不会差别很大?首先奶粉的差距肯定会有的,不然为什么一个卖300一个卖100。其次差异主要在奶粉的营养配比和微量元素,这些对孩子身体发育有影响,但奶粉不是唯一的补充渠道,辅食喂养的搭配很重要。最后大家能否给我推荐一个手机,价格在20000左右的,不要华为?文小伊评科技价格20000左右的手机,你确定你没有多打一个0?目前主流品牌除了华为MateX2之外,没有一款手机的价格可以达到20000,就算是三星旗下价格最高的折叠屏手机Gala秦孝公为何把秦穆公拼死夺来的河西之地,拱手相让给魏国?秦孝公作为一名高明的政治家,自有其胆略和智慧。在洒满秦魏两国无数战士热血的河西之地,自古以来便是兵家必争之地。秦孝公暂时放缓了对河西之地的进攻,既有为秦国变法强大的原因,也有当时的如果DNFampquot惜奶阁ampquot进军超时空,对老板有要求吗?这里我们要先提到一个新的名词,叫做奶金!一般我们当老板,都是把钱给团长,然后自己进图跑图拿个纪录就站街,这样的团我们是叫做金团。但是呢,假如这个团长是个奶妈怎么办呢?奶妈肯定不能自夏枯草是什么样的草药呢?夏枯草是什么样的草药呢?夏枯草是生长在我国新疆陕西甘肃及以南地方的一个小型草本,常生长在山坡荒地水沟旁湿润处。它的形态特点一是多年生,高约三十公分,直立,茎从地上部就分叉茎干四棱形你反对给不缴社保的人发养老金吗?你反对给不缴社保的人发养老金吗?这不是个人反对或是赞成的问题,社保法就是这么规定的。不缴社保的人是不会有任何养老金的,今后也不可能再有不缴纳社保的人能够领取养老金的情况出现。我国的今年42岁,现在交社保是不是有些晚,退休后是不是领的很少?今年42岁,现在交社保是不是有些晚,退休后是不是领的很少?现在42岁交社保我个人认为还是有点晚,当然我说的这种晚并不是害怕不能办理退休,顺利办理退休是没有问题的,但可能会出现你担心
友情链接:快好找快生活快百科快传网中准网文好找聚热点快软网