2022年minix文件系统研究 .pdf
《2022年minix文件系统研究 .pdf》由会员分享,可在线阅读,更多相关《2022年minix文件系统研究 .pdf(14页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录摘要. 1 1 引言. 1 1.1 研究背景 . 1 1.2 研究目的和意义 . 1 1.3 主要研究工作 . 2 2 MINIX 文件系统 . 2 2.1 MINIX 文件系统原理 . 2 2.2 MINIX 文件系统实现 . 6 2.2.1 核心数据结构分析 . 6 2.2.2 典型操作实现 . 8 3 总结. 12 致谢. 13 参考文献 . 13 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 14 页 - - - - - - - - - 1 MINIX 文件
2、系统研究摘要本文对文件系统进行了分析, 主要研究了 MINIX文件系统的基本原理,通过阅读代码,分析了MINIX 文件系统的实现中所用的主要数据结构, MINIX文件系统的工作流程以及典型操作的实现。关键词: MINIX,文件系统,表格管理1 引言1.1 研究背景对于长期的信息存储, 我们有如下三个基本要求: 1. 必须能存储大量的信息; 2. 在使用信息的进程终止时,信息必须保存下来;3. 多个进程可以并发地访问这些信息。解决所有这些问题的常用方法就是把信息以文件为单位,存储在磁盘或其他外部介质上。文件是由操作系统来管理的,包括文件的结构、文件的命名、文件的使用、文件的保护和文件的实现等,这
3、些都是在操作系统的设计中需要解决的问题。在一个操作系统中,负责处理与文件有关的各种事情的那一部分,就称为文件系统。文件系统由三部分组成: 与文件管理有关的软件、 被管理的文件以及实施文件管理所需的数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件的存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。1.2 研究目的和意义文件系统是操作系统的一个重要组成部分,是负责存取和管理文件信息的软件机构,通过对操作系统所管理的存储空间的抽象,向用户提供统一的、对象化的访问接口,屏蔽对物理设
4、备的直接名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 14 页 - - - - - - - - - 2 操作和资源管理。本文主要研究MINIX 操作系统的文件系统,通过分析 MINIX 的文件系统,了解MINIX 文件系统的基本原理和设计模式,掌握MINIX 的文件系统的实现,加深了对操作系统的理解。1.3 主要研究工作本文主要研究了 MINIX文件系统的基本原理, 并对 MINIX文件系统的实现进行了分析。2 MINIX 文件系统2.1 MINIX 文件系统原理和所有
5、的文件系统一样, MINIX文件系统也必须为文件分配和释放空间、记录磁盘块和空闲空间、提供某种方式来防止文件被非法使用等。 从本质上来说, MINIX文件系统只不过是运行在用户空间的一个大的C 程序。在读、写文件时,用户进程向文件系统发送一条消息,表明自己需要什么操作,而文件系统会完成相应的工作,并返回一个结果。文件系统实际上是一个网络文件服务器,只不过它正好和调用进程在同一台机器上运行。这种设计方式有深刻的含义。一方面,文件系统可以独立于MINIX的其他部分进行修改、调试和测试。另一方面,我们可以很方便地把整个文件系统移植到任何一台带有C编译器的计算机上,在那里进行编译链接,然后把它作为一个
6、独立的类UNIX的远程文件服务器。文件系统设计中存在许多关键问题:消息、文件系统的布局、位图、i 节点、块高速缓存、目录和路径、文件描述符、文件锁以及设备文件。1. 消息文件系统的结构基本上与内存管理器和所有的I/O 任务一样。文件系统的主循环程序不断地等待消息。当收到消息后,它首先提取消息的类型,然后以其为索引查找文件系统中处理各类消息名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 14 页 - - - - - - - - - 3 的过程指针表。随后调用相应过程,进行处
7、理后,返回状态值。文件系统再把回答消息发送给调用进程,然后回到循环的开始,等待下一条消息的到来。2. 文件系统的布局MINIX文件系统是一个自成体系的逻辑实体。它可以存储在任何一个块设备中,如软盘或硬盘分区。MINIX 文件系统与标准的UNIX 的文件系统基本相同,由6 部分组成:引导块、超级块、i节点位图、区段位图、 i 节点、数据区。 MINIX文件系统布局如图1 所示:图 1 一张软盘或一个小的硬盘分区上的磁盘布局每个文件系统都以一个引导块开始。引导块是计算机加电启动时可由 ROMBIOS 自动读入的执行代码和数据。但并非所有盘都用作引导设备,所以对于不用于引导的盘片,这一盘块中可以不含
8、代码。但任何盘片必须要含有引导块空间,以保持MINIX 文件系统格式的统一。如果内核文件放在文件系统中,那么就可以在文件系统所在的设备的第一个块(引导块空间)存放实际的引导程序,并由它来取得和加载文件系统中的内核映象文件。超级块包含了描叙文件系统布局的信息,其主要功能是给出文件系统各个部分的大小。和引导块一样,超级块的大小也是固定的 1024 字节。如果给定块的大小和i 节点数,我们可以很容易地算出 i 节点位图的大小和存放i 节点所需的块数。3. 位图MINIX 使用了两个位图来管理空闲的i-node和区段。当一个文件被删除时,很容易计算出该文件i-node 所在的位图块,并利用 cache
9、 来查找该块,找到后改变该文件所对应的i-node 位图所在的位。区段位图的操作类似。一般来说我们可能错误的从常理认为创建一个文件时,文件系统必须逐一地检查每一个位图位,以便可以找到一个空闲的名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 14 页 - - - - - - - - - 4 i-node ,然后把它用于新建的问题。但是在实际的工作过程中,在内存的超级块表中会有一个域指向了第一个可用的i-node ,所以我们可以直接使用。那么这个特殊域是如何做到指向第一个空闲
10、 i-node的呢?当一个i-node 被释放时,要检查这个被释放的i-node 是不是在当前第一个空闲i-node 之前,如果是,则指向刚释放的 i-node 。当整个分区上的i-node都被占用了时候,空闲i-node 地址域将被指向第0 号 i-node 。这样的机制同样使用于区段。4. i 节点在 MINIX中 i 节点的布局和 UNIX中几乎一样。如图2 所示:图 2 MINIX 的 i 节点i 节点的主要作用是给出文件数据块所在的位置。前 7 个区段名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
11、 - - - - - 第 5 页,共 14 页 - - - - - - - - - 5 号直接存在 i 节点中。在MINIX 发行版中,区段和块的大小都为1KB ,所以小于 7KB的文件可以不必使用间接块号。当文件的大小超过 7KB时,需要使用间接区段。 i 节点中含有模式信息,给出了文件的类型和保护标志位、SETUID位、SETGID 位,类型包括普通文件、目录、块设备文件、字符设备或者管道。i 节点中的link字段记录了多少个目录项正在指向这个i 节点。5. 块高速缓存MINIX使用块高速缓存来改进文件系统的性能。高速缓存使用一个固定长度的缓冲区数组来实现,每个缓冲区由头和体两个部分组成。
12、头里面包含有指针和计数器、标志位。体则包含了一个磁盘块大小的空间。所有未使用的缓冲区被连接在一条双向链表中,按最近一次使用时间的先后顺序排列,如图3 所示。为了快速判断某个块是否在缓存中,MINIX使用了哈希表。图 3 块高速缓存使用的链接表6. 目录和路径目录和路径名管理是文件系统的一个重要功能。MINIX文件系统的系统调用一部分是以文件名作为数据的标示的。在实际操作中实际需要的是目的文件的i-node 。文件系统需要在目录树中查找文件并找到对应的i-node 。7. 文件描述符在 read 和 write系统调用中会用到文件描述符,这个文件描述符是在文件被打开时返回的。文件系统首先是一个程
13、序,它有自己的地址空间,并在其中维护进程表的部分内容。在地址空间中有一个字段是一个数组,以文件的描述符编号作为索引。当给名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 14 页 - - - - - - - - - 6 定一个文件描述符时, 可以通过改数组找到相应的文件。在 MINIX中,每个文件都有一个32位的整数来描述即将读写的下一个字节的位置,这个整数成为文件位置,它是通过lseek系统调用来修改的。在 MINIX 中存在一个共享表filp,包含了所有被打开的文件的文
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年minix文件系统研究 2022 minix 文件系统 研究
限制150内