操作系统中文件系统的实现与分配分析(一)

发布于:2024-10-24 编辑:匿名 来源:网络

虚拟文件系统在Linux文件系统中,用户空间、系统调用、虚拟机文件系统、缓存、文件系统和文件系统之间有着密切的关系。贮存 。

如下图: image 在操作系统中,文件系统扮演着重要的角色。他们负责管理操作系统中的文件和目录。

然而,不同的文件系统有不同的实现和存储位置。为了给用户提供统一的界面,操作系统引入了虚拟文件系统(Virtual File System,VFS)作为中间层。

VFS定义了一套通用的数据结构和标准接口,使得程序员不需要了解具体文件系统的工作原理。他们只需要了解VFS提供的接口即可执行文件操作。

事实上,甚至各种编程语言提供的接口都可以为我们所用。封装完成后,只需要调用一些方法就可以了。

Linux 支持多种文件系统。文件系统根据存储位置的不同可以分为三类。

直接将数据存储在磁盘上的磁盘文件系统,如Ext 2/3/4、XFS等。 内存文件系统,此类文件系统的数据存储在内存中,如/proc和/sys文件系统。

读写这些文件实际上就是读写内核中的相关数据。网络的文件系统,用于访问其他计算机主机的数据,如NFS、SMB等。

为了正常使用文件系统,首先需要将其挂载到一个目录上。例如,Linux系统启动时,会将文件系统挂载到根目录,使文件系统可用。

文件的物理结构操作系统负责管理磁盘上的数据,并以易于读取的形式呈现出来,这样我们就不需要关心数据的具体存储位置和方式。操作系统背后的机制将数据存储在磁盘上,以便我们可以轻松访问和操作它。

我们借助操作系统来看看文件的物理结构是如何存储在磁盘上的。文件块我们知道物理磁盘上的最小存储单位是扇区,通常是字节。

这意味着即使一条数据小于字节,它仍然会占用字节的磁盘空间。但由于扇区尺寸较小,读写效率会降低。

为了方便对文件的管理和访问,操作系统引入了逻辑块的概念。几乎所有的文件系统都会将文件划分为固定大小的块来存储。

正如我们之前所说,块的大小通常为 4KB。如果磁盘的扇区大小以字节为单位,文件系统的块大小为4KB,则文件系统的存储单元为8个扇区。

这也解释了为什么文件的大小和它占用的空间之间存在差异。文件的大小是指文件本身的实际大小,但不一定等于所占用的空间量。

因为无论文件大小是否达到4KB,只要有数据,就会分配一个块来存储。需要注意的是,在Windows的NTFS文件系统中,如果写入的数据较小,小于1KB,则会存储在文件表中,而不是4KB的块中。

但一旦数据超过1KB,就会分配4KB的存储空间。内存管理也使用类似的逻辑块概念。

文件的逻辑地址也被划分为文件块。逻辑地址由逻辑块号和块内的地址组成。

用户通过逻辑地址操作文件,操作系统负责完成逻辑地址和物理地址的映射来访问和操作文件。图像文件分配方法 文件分配方法大致可以分为两种:连续分配和非连续分配。

连续分配是指将文件的数据块连续存储在磁盘上的相邻区域中,类似于Java中的数组。非连续分配就是将文件的数据块存储在磁盘上的不同区域,类似于Java中的链表。

连续分配是一种可以提高访问速度的分配方法。由于文件的块是连续存储的,因此访问文件时不需要来回移动磁头,可以直接顺序访问。

这种顺序访问功能使得连续分配适合具有更多顺序访问模式的文件,例如视频文件或音乐文件。那么操作系统是如何完成逻辑块和物理块之间的映射的呢?实际情况下,每个文件都会放在一个目录下。

无论是最外层的根目录,还是用户创建的目录,都会有相应的目录结构文件,记录了当前目录下的目录项和目录项。文件信息。

如图: image 具体来说,操作系统通过逻辑块号与块内地址的映射关系来实现逻辑块与物理块的对应关系,即(逻辑块号,块内地址)-> (物理块号,块内的地址)。用户访问文件内容时,操作系统会通过文件标识符找到对应的目录项,并通过逻辑块号计算出物理块号,即物理块号=起始块号+逻辑块数字。

由于物理块号可以直接从逻辑块号计算出来,因此连续分配方法支持顺序访问和随机访问。连续分配方式在读写文件时效率更高,因为文件的磁盘块是相邻的,减少了移动磁头的时间。

这就是为什么有些中间件或数据库在写入文件时采用顺序写入机制来提高处理速度。连续空间存储方式虽然读写效率较高,但其缺点也很明显,包括“磁盘空间碎片”、“文件长度不易扩展”等。

但连续分配方式也有明显的缺点,主要是磁盘空间碎片和文件长度不易扩展。当文件被删除时,会留下一个间隙,如果新文件的大小小于间隙的大小,则可以将新文件放置在间隙中。

但如果新文件的大小大于所有空余空间的总大小,则即使磁盘上有足够的可用空间,也无法存储该文件。在这种情况下,我们可以通过移动现有文件来为新文件腾出空间,但是在磁盘上移动文件非常耗时,因此这并不实用。

image 另一个问题是文件长度扩展不方便。例如,在上图中,如果文件 A 需要扩展,则需要更多的磁盘空间。

然而,释放足够空间的唯一方法是移动文件,这是非常低效的。那么有没有更好的方法来解决上述问题呢?确实,为了解决连续分配的问题,可以采用非连续的空间存储方式,比如链式存储、索引存储、组织表等。

这些方法可以克服连续分配带来的空间碎片和文件长度扩展不方便的问题。这种非连续分配方式我们下次再解释!总结本文主要讨论操作系统中文件系统的实现和分配。

首先引入虚拟文件系统(VFS)作为中间层,统一不同文件系统的接口。然后介绍文件的物理结构,包括文件块和逻辑块的映射关系。

然后详细讨论了连续分配方法的特点、优缺点,包括顺序访问和随机访问的效率,以及磁盘空间碎片和文件长度扩展不方便的问题。

操作系统中文件系统的实现与分配分析(一)

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 证监会:加强对拟上市公司投资的离职系统员工监管

    证监会:加强对拟上市公司投资的离职系统员工监管

    投资圈(ID:pedaily)4月20日消息:近日,有媒体报道中证建投系统离职员工证监会对拟上市公司的惊人投资,引起各方关注。 证监会对此高度重视,坚持防范违法违规“创富”,维护市场“三公”秩序,加强监管队伍廉洁建设。 坚持问题导向、举一反三,对在审企业进行全面排查,对

    06-17

  • 今晚,4500万人与周杰伦“时光倒流”

    今晚,4500万人与周杰伦“时光倒流”

    ,应该是一场激情的爱情约会。 但当晚19点35分,还没等两人晒出甜蜜合照,他们的朋友圈就被一个许久没有出专辑的男人入侵了。 你谈你的爱情,我看我的青春。 天晴在等待烟雨,粉丝在等待“地表最强妖天伦”。 数千人在视频号直播间回忆青春。 当34岁的周杰伦带着八块锋利的巧

    06-21

  • 为打造平价时尚服装市场,919氢仓获得青松基金等两轮合计数千万元融资,

    为打造平价时尚服装市场,919氢仓获得青松基金等两轮合计数千万元融资,

    据投资界(ID:pedaily)6月4日消息,平价时尚服装市场品牌“氢仓”宣布,先后获得青松基金天使轮和个人投资者战略轮共计数十轮投资。 融资数百万元。 据其创始人&CEO席一舟介绍,本轮融资将主要用于供应链建设、门店扩张和团队建设。 “公司将重点打造江苏、安徽、四川等地

    06-18

  • 鹤壁市长郭浩:中国5G产业创新创业大赛推动高质量发展

    鹤壁市长郭浩:中国5G产业创新创业大赛推动高质量发展

    4月2日下午,“中国5G产业创新创业大赛”作为5G产业前沿创新的重要舞台,已日益突出和影响。 吸引力持续增强,为推动高质量发展提供更多活力。 ”鹤壁市市长郭浩在中国5G产业创新创业大赛全国总决赛颁奖典礼暨鹤壁市旗滨区重点产业座谈会上表示。 “最近几年。 鹤壁积极适应新

    06-17

  • 北京理工大学与珠海学院联合成立集成电路技术现代产业学院

    北京理工大学与珠海学院联合成立集成电路技术现代产业学院

    7月4日,集成电路技术现代产业学院成立暨揭牌仪式在珠海高新区举行。 这所产业学院由北京理工大学珠海学院(信息学院)、广东中兴电子股份有限公司、珠海英思科技有限公司联合创办。 图片珠海高新区 珠海高新专区新闻显示,北理工珠海学院院长赵显礼表示,集成电路发展关系产

    06-06

  • 2024年北京车展,看这26款新车就够了

    2024年北京车展,看这26款新车就够了

    时隔4年,2024年北京车展终于又来了。 4年的时间并不算长,但对于汽车行业来说已经是一个巨大的变化。 如果说去年的上海车展让世界看到了中国新能源汽车的快速发展,那么今年的北京车展则证明了一件事情:世界新能源汽车潮流就在这次北京车展。 可以说,这种四年积累的潜力,

    06-21

  • 视联科技获凤凰卫视战略投资

    视联科技获凤凰卫视战略投资

    》据4月26日消息,视联科技近日完成新一轮战略融资。 本轮投资由凤凰卫视集团旗下凤凰创新产业基金投资,此次获得的融资将主要用于人工智能产品的落地,加快业务拓展和服务体系升级。

    06-18

  • 阿里云智能总裁张建锋:创新是丽水绿色发展之路

    阿里云智能总裁张建锋:创新是丽水绿色发展之路

    “创新是我们的第一动力,也是丽水绿色发展的路径。 ” 6月9日,阿里云智能总裁、阿里巴巴达摩院特朗张建锋在国家数字生态系统创新发展峰会上致辞时表示。 阿里云智库总裁、阿里巴巴达摩院院长张建锋总结称,自2016年丽水市政府与阿里巴巴集团签署战略协议以来,在双方共同努

    06-17

  • 小度迎新期待:百度集团CIO李莹轮流担任CEO

    小度迎新期待:百度集团CIO李莹轮流担任CEO

    10月7日最新消息,百度小度公司迎来新任CEO,百度集团副总裁、百度集团CIO李莹博士,直接向李彦宏汇报工作。 业内人士分析,这轮新一轮干部轮换对小度来说意义重大。 李莹在担任百度集团CIO期间,打造了以人工智能和知识管理为核心的智能工作平台,为百度AI基础技术和产品应

    06-17

  • 诺和诺德斥资7亿美元使用蛋白质组学药物

    诺和诺德斥资7亿美元使用蛋白质组学药物

    年底,Ventus Therapeutics宣布与诺和诺德达成全球*许可协议。 根据该协议,诺和诺德将获得Ventus专有的NOD样受体pyrin结构域相关蛋白3(NLRP3)外周抑制剂的开发和商业化权利。 诺和诺德将向Ventus预付 10,000 美元,并提供研发 (R&D) 资金。 Ventus还可能收到总计 6.33 亿美

    06-17

  • 中国南车香港上市获批, A+H股IPO拟募资20亿美元

    中国南车香港上市获批, A+H股IPO拟募资20亿美元

    据悉,中国最大的铁路机车装备制造商中国南车车辆股份有限公司首次公开发行股票(IPO)计划已经香港联交所批准。 获批后,连同在上海IPO,拟募集资金规模将达20亿美元,约1亿港元。   新闻 人士表示,总部位于北京的中国南车股份有限公司计划在香港IPO发行最多20亿股,并将于

    06-18

  • 以旧换新平台有德汇获人保远望基金近亿元B+轮融资

    以旧换新平台有德汇获人保远望基金近亿元B+轮融资

    据投资界12月29日消息,全品类以旧换新平台有德汇今日宣布完成近百笔融资获得人保财险、人保财险的B+轮融资。 人保远望基金是与启迪科技合作设立的。 据悉,本轮资金将用于拓展线下市场、升级后端渠道。   优德火此前已获得多轮融资:  获得龙腾资本天使轮投资;   再

    06-18