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

发布于: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)作为中间层,统一不同文件系统的接口。然后介绍文件的物理结构,包括文件块和逻辑块的映射关系。

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

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

站长声明

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

标签:

相关文章

  • 沃峰科技助力企业客户服务升级,全面解决全国门店运维问题

    沃峰科技助力企业客户服务升级,全面解决全国门店运维问题

    .wp-block-column h3{margin-left:0} 在快速发展的商业环境中,企业客户服务始终是关键竞争力一。 然而,全国不少企业在门店运维服务中面临数字化系统缺失、智能化不足、线上线下分离等一系列挑战,直接影响服务效率和客户满意度。 针对这些痛点,沃峰科技推出了一整套覆盖全

    06-18

  • 诺初美创获数千万元天使轮融资,时代伯乐、莱斯创投联合投资

    诺初美创获数千万元天使轮融资,时代伯乐、莱斯创投联合投资

    投资圈(ID:pedaily)据6月8日消息,跨境智能家居品牌“诺初美创”已近期完成数千万元天使轮融资。 本轮融资由时代伯乐和莱斯创投共同投资。 本次募集资金将主要用于新产品研发。 诺初美创于今年8月上台。 面向25-45岁的家庭消费者,专注于家庭消费场景的产品创新和品牌运营

    06-17

  • 重庆两江新区设立4支新产业基金 总规模45.5亿

    重庆两江新区设立4支新产业基金 总规模45.5亿

    据投资界9月22日消息,重庆两江战略基金举办重点合作项目专场签约活动,设立4支新产业基金,并签约5个投资协议。 总投资规模45.5亿元。 签约项目涵盖大健康、智能制造、新基建、航空航天、人工智能、国际贸易、数字经济等多个产业领域,将助力两江新区进一步深化大数据智能创

    06-17

  • Xilinx 首席执行官概述公司新愿景和战略蓝图

    Xilinx 首席执行官概述公司新愿景和战略蓝图

    2020 年 3 月 19 日,加利福尼亚州圣何塞 — 全球自适应和智能计算领导者 Xilinx, Inc.(纳斯达克代码:XLNX)总裁兼首席执行官(首席执行官彭维克今天透露了公司的未来愿景和战略蓝图。 Peng的愿景是为Xilinx带来新发展、新技术和新方向,打造“自适应计算加速平台”。 在这

    06-06

  • 小家电品牌“豆禾科技”获近亿元A轮融资,

    小家电品牌“豆禾科技”获近亿元A轮融资,

    深耕供应链的小家电品牌“豆禾科技”已完成近亿元A轮融资。 本轮融资由鸿章资本投资,Verity Capital 跟投。 独家财务顾问。 本轮融资将主要用于产品研发、供应链升级、企业信息化建设等。

    06-17

  • 喝了还能降解的“食用标签”让假酒、假药无处藏身

    喝了还能降解的“食用标签”让假酒、假药无处藏身

    食品药品安全时刻关系着人们的生活。 然而,各类假冒伪劣产品始终令人防不胜防。 想要辨别真伪,可能需要有“火眼金睛”,但显然不可能每个人都具备这样的能力。 然而,在现代社会,你可以用科技来辅助。 ▲ 图片来自:Unsplash 美国印第安纳州Purdue大学和韩国国家农业科学

    06-21

  • Whole House Premium对美国第一贸易公司进行数百万美元战略投资

    Whole House Premium对美国第一贸易公司进行数百万美元战略投资

    据投资界8月7日消息,国内一站式家居软装解决方案Whole House Premium,近期又有新动作。 他向美国第一家贸易公司First Trade投资100万,并正式成为First Trade的股东。   全屋优品创始人周志胜介绍,公司已完成1万元B轮融资。 全屋优品成立仅两年,就以其对市场整体专业的

    06-18

  • 台积电抢购EUV光刻机加速7nm-5nm量产进程

    台积电抢购EUV光刻机加速7nm-5nm量产进程

    日前,荷兰半导体设备制造商ASML(阿斯麦)在财报发布会上表示,ASML将采用极紫外光刻机(EUV) 2020年,年出货量从18台增至30台,外媒报道称,晶圆代工厂龙头台积电将抢占30台EUV台的一半以上。 这也将使台积电成为今年的第一。 包含EUV技术的增强型7纳米工艺可于第一季度中

    06-06

  • 挑战闲鱼、转转,京东正式推出“拍拍二手”,会扰乱二手车市场吗?

    挑战闲鱼、转转,京东正式推出“拍拍二手”,会扰乱二手车市场吗?

    二手交易平台以“焕然一新”迎接新玩家。 12月21日,刘强东宣布京东正式上线“拍拍二手”品牌。 它将采用平台化运营思路,整合回收、检测、再加工、销售等逆向供应链资源,高举“品质二手”大旗。 将京东联盟生态拓展至二手商品交易领域。 拍拍二手是由拍拍网发展而来,拍拍网

    06-17

  • 徐小平:创业者看不起英雄,不愿意给他钱

    徐小平:创业者看不起英雄,不愿意给他钱

    在天使来华“两会大众创业”年度盛典上,徐小平回忆起一年来令他印象深刻的一件事: 2018年10月在北大演讲时,一名学生告诉他,学生中存在着职业鄙视链:在四大工作的人鄙视在快消工作的人,在咨询工作的人鄙视在四大工作的人,在投行工作的人鄙视在咨询工作的人,在PE工作的

    06-18

  • 超过110亿元!北汽新能源汽车创下行业最大单笔融资,为何全部退出……

    超过110亿元!北汽新能源汽车创下行业最大单笔融资,为何全部退出……

    过亿的融资金额对于新能源来说算大吗?    据投资界8月14日消息,北汽新能源今日正式宣布,公司已完成总额1800万元B轮融资,中国信达、中基投资、兴旺产业园、国轩投资共14家投资者参与了本轮融资。   创下新能源汽车行业单笔最大融资纪录,并已在筹备IPO。    据了解

    06-18

  • 市值破万亿,王传福表弟一次性返还5万倍

    市值破万亿,王传福表弟一次性返还5万倍

    这是一个里程碑时刻——6月10日,比亚迪股价创历史新高,市值首次突破万亿,成为第一个加入万亿美元市值俱乐部的中国人。 汽车公司。 早在2009年,29岁的王传福在深圳创立了比亚迪。 从一块小小的手机电池起家,后来打造了一个巨大的新能源汽车版图:新能源汽车、动力电池、半

    06-17