- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章文件管理-烟台大学计算机学院.doc
第四章 文件管理
操作系统的功能之一是对计算机系统的软件资源进行管理,而软件资源通常是以文件形式存放在磁盘或其它外部存储介质上的,对软件资源的管理是通过文件系统来实现的。在计算机系统中,软件资源非常重要,对软件资源的使用也相当频繁,因此文件系统在操作系统中占有非常重要的地位。
文件系统应具备的功能有:实现文件的按名存取,分配和管理文件的存储空间,建立并维护文件目录,提供合适的文件存取方法,实现文件的共享与保护,提供用户使用文件的接口。
本章首先介绍文件系统的有关概念,然后分析文件系统组织结构、存取方法、文件存储空间的管理策略、文件目录管理以及文件系统的安全与保护,最后以Linux文件系统为例来讨论具体文件系统的实现。
4.1 文件系统概述
4.1.1 文件及文件系统
在计算机系统中,文件定义为:存储在外部存储介质上的、具有符号名的一组相关信息的集合。而文件系统是对文件实施管理、控制与操作的一组软件。
1.文件命名
文件保存在外部存储介质上,为了方便用户使用,每个文件都有一个名称,即文件名。文件名是文件的标识,用户通过文件名来使用文件而不必关心文件存储方法、物理位置以及访问方式等。文件系统的基本功能就是实现文件的按名存取。
各种文件系统的文件命名不尽相同,文件名的长度因系统而异。例如: FAT12采用的是8.3命名规则,即规定文件名为8个字符,外加句点和3个字符的扩展名; NTFS(New Technology File System)则可以达到255个字符;而EXT2(一种Linux文件系统)则没有长度限制。
2.文件属性
文件属性是对文件进行说明的信息。文件包括两个部分内容:一是文件内容,二是文件属性。文件属性主要由文件创建日期、文件长度、文件权限、文件存放位置等,这些信息主要被文件系统用来管理文件。不同的文件系统通常有不同种类和数量的文件属性。下面简要讨论一些常用的文件属性:
文件名称:文件名称是供用户使用的外部标识。这是文件最基本的属性。文件名称通常由一串ASCII码或者汉字构成,现在常常由Unicode字符串组成。
文件内部标识:有的文件系统不但为每个文件规定了一个外部标识,而且规定了一个内部标识。文件内部标识只是一个编号,可以方便管理和查找文件。在UNIX文件系统中,inode就是内部标识。
文件物理位置:具体标明文件在存储介质上所存放的物理位置。
文件拥有者:操作系统通常是多用户的,不同的用户拥有各自不同的文件,对这些文件的操作权限也不同。通常文件创建者对自己所建的文件拥有一切权限,而对其它用户所建的文件则拥有有限的权限。
文件权限:通过文件权限,文件拥有者可以为自己的文件赋予各种权限,如可允许自己读写和执行,允许同组的用户读写,而只允许其它用户读。
文件类型:可以从不同的角度来对文件进行分类,例如普通文件或是设备文件,可执行文件或是文本文件,等等。
文件长度:文件长度通常是其数据的长度。长度单位通常是字节。
文件时间:文件时间有很多,如最初创建时间,最后一次的修改时间,最后一次的执行时间,最后一次的读时间等。
3. 文件系统模型
⑴ 文件系统的层次模型
文件系统的传统模型为层次模型,该模型由许多不同的层组成。每一层都会使用下一层的功能特性来创建新的功能,为上一层服务。每一层都在下层的基础上,向上层提供更多的功能,由下至上逐层扩展,从而形成一个功能完备,层次清晰的文件系统。
层次模型的分层方法有很多。这里介绍常用的四层模型,如图5.1所示。该模型包括基本I/O控制层、基本文件系统层、文件组织模块层和逻辑文件系统层:
基本I/O控制层:由设备驱动程序和中断处理程序组成,实现内存和磁盘系统之间的信息传输。
基本文件系统层:主要向相应的设备驱动程序发出读写磁盘物理块的一般命令。
文件组织模块层:负责对具体文件以及这些文件的逻辑块和物理块进行操作。
逻辑文件系统层:使用目录结构为文件组织模块提供所需的信息,并负责文件的保护和安全。
⑵ Sun虚拟文件系统模型
逻辑文件系统层 文件组织模块层 基本文件系统层 基本I/O控制层
图5.1 文件系统的层次模型
文件系统层次模型对支持单个文件系统比较合适,对于同时支持多个文件系统则有所欠缺。为此,Sun公司提出虚拟文件系统(Virtual File System,VFS)框架结构,参见图5.2。通过VFS可以支持多种文件系统,如EXT2,FAT,NTFS等。
图5.2 虚拟文件系统VFS
4. 常用文件系统
随着操作系统的不断发展,越来越多的功能强大的文件系统不断涌现。这里,列出一些具有代表性的文件系统:
EXT2:Linux最为常用的文件
文档评论(0)