《操作系统原理与实例分析PPT课件第五章文件管理系统.ppt》由会员分享,可在线阅读,更多相关《操作系统原理与实例分析PPT课件第五章文件管理系统.ppt(78页珍藏版)》请在三一办公上搜索。
1、第5章 文件管理系统,5.1 文件系统概述 交互式操作系统的文件系统应该向用户提 供如下基本服务:1)用户可以创建,删除,读取或更新文件;2)一个用户可以受控制地访问其它用户文件;3)可以控制不同用户对不同文件的访问权限;4)用户可以根据实际需要重新构造文件;5)允许用户在两个文件之间移动数据;6)用户能备份文件,且能在文件被毁坏时,恢复 文件;7)用户可以通过符号名访问文件.,5.2 文件系统与数据库管理系统 目前数据库管理系统与操作系统之间存在两种依附关系:*利用操作系统中的文件系统来管理文件及存储空间;*不依赖操作系统提供的文件系统,而具有独立的数据组织及存取控制.,5.3 文件 5.3
2、.1 文件的概念 文件:是一种具有符号名的,相关联元素的有序集合.文件名是文件系统和用户之间的联系纽带.,文件、记录和数据项,1.数据项,(1)基本数据项。这是用于描述一个对象的某种属性的字符集,是数据组织中可以命名的最小逻辑数据单位,即原子数据,又称为数据元素或字段。,(2)组合数据项(复合字段)。它是由若干个基本数据项组成的,简称组项。基本数据项除了数据名外,还应有数据类型。因为基本项仅是描述某个对象的属性,根据属性的不同,需要用不同的数据类型来描述。由数据项的名字和类型两者共同定义了一个数据项的“型”。而表征一个实体在数据项上的数据则称为“值”。例如,学号/30211、姓名/王有年、性别
3、/男等。,2.记录 记录是一组相关数据项的集合,用于描述一个对象在某方面的属性。一个记录应包含哪些数据项,取决于需要描述对象的哪个方面。而一个对象,由于他所处的环境不同可把他作为不同的对象。,3.文件,文件是指由创建者所定义的、具有文件名的一组相关元素的集合,可分为有结构文件和无结构文件两种。在有结构的文件中,文件由若干个相关记录组成;而无结构文件则被看成是一个字符流。文件在文件系统中是一个最大的数据单位,它描述了一个对象集。,4.数据库 略5.3.2 文件的类型 1.按照文件的逻辑结构分类*由结构文件*无结构文件,2.按照文件的物理组织结构分类*连续文件*链接文件*索引文件,3.按照文件的保
4、护级别分类*只读文件*执行文件*读/写文件*不保护文件,4.按照文件的性质和用途分类*系统文件*用户文件*库文件,5.按照文件的数据形式分类*源文件*目标文件*可执行文件,6.多媒体文件 是一种集成了数字,字符,格式化文本,可执行程序,图形,图像,声音等信息的高度结构化文件.,5.3.3 对文件的操作 对文件的操作包含两个方面的含义:*指对整个文件的操作;*指对文件中的数据项的操作.,对文件的操作:*打开文件*关闭文件*建立文件*撤销文件*复制文件*修改文件名*读操作*写操作*更新操作*插入操作*删除操作,5.4 文件目录5.4.1 文件目录的内容 文件目录的内容:*基本信息*地址信息*访问控
5、制信息*使用信息,5.4.2 对文件目录的操作 目录文件:多个文件的目录项构成的一种特殊文件.对目录文件的操作:*搜索目录*创建目录*删除目录*显示目录*修改目录,5.4.3 目录结构 目录结构:*单级目录结构*两级目录结构*层次目录结构(多级目录结构),*单级目录结构,单级目录,*两级目录结构,两级目录结构,*层次目录结构(多级目录结构),多级目录结构,在树形目录结构中,从根目录到任何数据文件,都只有一条惟一的通路。在该路径上从树的根(即主目录)开始,把全部目录文件名与数据文件名,依次地用“/”连接起来,即构成该数据文件的路径名(path name)。,5.5 文件的逻辑组织与访问 5.5.
6、1 有结构文件与文件系统 有结构文件系统:文件系统直接支持控制管理有结构文件的文件系统,也称高级文件系统.,有结构文件中记录组织的原则:*有利于快速访问文件记录*易于修改*存储代价小*维护简单*可靠性高,根据有结构文件中的记录组织形式不同,可以将有结构文件分为:*堆文件*顺序文件*索引文件*索引顺序文件*索引文件*直接(哈希)文件,5.5.2 堆文件,5.5.3 顺序文件,5.5.4 索引顺序文件,索引顺序文件,5.5.5 索引文件,索引文件的组织,索引方式:*完备索引*部分索引,5.5.6 直接(哈希)文件 1.直接文件,对于直接文件,则可根据给定的记录键值,直接获得指定记录的物理地址。换言
7、之,记录键值本身就决定了记录的物理地址。这种由记录键值到记录物理地址的转换被称为键值转换(Key to address transformation)。组织直接文件的关键,在于用什么方法进行从记录值到物理地址的转换。,2.哈希(Hash)文件,Hash文件的逻辑结构,5.6 文件的物理组织-存储空间的管理 5.6.1 文件存储空间分配的有关问题 1.预分配与动态分配 预分配方式:要求文件创建时必须申 明需要的最大空间;动态分配方式:给文件分配的空间根 据文件的大小动态的变化.,2.分区大小 文件分区:将物理上连续的若干数据块组织在 一起,形成一个分区.文件分区大小与以下因素有关:*文件中的数据
8、相邻存储有利于提高性能;*若分区太小,文件分配到的分区数将会很多;*若分区大小固定,将会简化空间的分配和回 收;*若分区大小可变,或分区大小固定且较小,可以减少存储空间的浪费.,1.连续分配,磁盘空间的连续分配,5.6.2 文件存储空间的分配技术,连续分配的主要优点如下:顺序访问容易。(2)顺序访问速度快。,连续分配的主要缺点如下:要求有连续的存储空间。(2)必须事先知道文件的长度。,2.链接分配,磁盘空间的链接式分配,3.索引分配,*单级索引分配 链接分配方式虽然解决了连续分配方式所存在的问题,但又出现了另外两个问题,即:(1)不能支持高效的直接存取。要对一个较大的文件进行直接存取,须首先在
9、FAT中顺序地查找许多盘块号。(2)FAT需占用较大的内存空间。,索引分配方式,*多级索引分配,两级索引分配,索引分配的优点:,索引分配方法支持文件的直接存取;(2)索引分配能满足文件的动态增长;(3)利用多级索引可以支持大型文件的存取.,索引分配的不足:,对于文件过小,索引节点的利用率较低;(2)如果文件太大,建立多级索引会花费很长时间 而且需要海量存储.,5.6.3 空闲空间的管理 常用的空闲分区组织方式:*空闲分区表*空闲分区链*索引*位图,1.空闲分区表,空闲分区表方式的存储空间的分配与回收:空闲盘区的分配与内存的动态分配类似,同样是采用首次适应算法、循环首次适应算法等。系统在对用户所
10、释放的存储空间进行回收时,也采取类似于内存回收的方法,即要考虑回收区是否与空闲表中插入点的前区和后区相邻接,对相邻接者应予以合并。,空闲分区表方式的优点:*实现简单.空闲分区表方式的缺点:*当空闲分区分布较分散且数量多时,空闲分区表将会很大;*对于非连续存储的文件,如果空闲分区的操作并非必须,反而会影响效率.,2.空闲分区链表,空闲分区链表方式的优点:*节省了数据结构带来的额外空间开销;*分配和回收的操作速度很快.空闲分区链表方式的缺点:*可能出现太多的小分区,使文件分配到的存储空间过分分散;*删除一个由许多离散小分区构成的文件,其回收开销大;*在写入数据前进行的读空闲分区信息带来了开销.,3
11、.索引 将空闲分区看作文件,按文件存储空间分配方法为空闲分区建立索引.,4.位示图,位示图,位示图盘块的分配,(1)顺序扫描位示图,从中找出一个或一组其值为“0”的二进制位(“0”表示空闲时)。(2)将所找到的一个或一组二进制位,转换成与之相应的盘块号。假定找到的其值为“0”的二进制位,位于位示的第i行、第j列,则其相应的盘块号应按下式计算:b=n(i-1)+j式中,n代表每行的位数。(3)修改位示图,令mapi,j=1。,位示图盘块的回收,(1)将回收盘块的盘块号转换成位示图中的行号和列号。转换公式为:i=(b-1)DIV n+1 j=(b-1)MOD n+1(2)修改位示图。令map i,
12、j=1。,5.7 逻辑文件与物理数据块之间的转换 5.7.1 字节流,记录与数据块之间的转换*字节流和数据块之间的转换;*记录和数据块之间的转换.,5.7.2 记录如何组成数据块 记录组块方法:1)固定组块法 数据块由若干条固定长度的记录组成,一条记录必须完整地存储在一个数据块中.此种方法会出现内部碎片,从而浪费空间.,2)固定组块法 数据块允许被划分存储在不同数据块中.技术实现很难;读写访问效率降低;修改也非常困难.,3)可变长非跨块组块法 数据块由变长记录组成,不允许一条记录跨越两个数据块存储.但还是不可避免会存在内部碎片.,5.8 文件共享 文件共享:就是指多个用户(进程)访问同一个文件
13、.5.8.1 文件共享的控制 文件共享的有效控制包括两个方面:*同时存取*存取权限,为共享用户设置的存取权限包括一下几类:*无*探知*执行*读*追加*更新*更改权限*删除,注意:*以上各级存取权限具有层次结构,后一种权限包含前一种及前面各种存取权限;*文件主通常指创建文件的用户,文件主拥有以上所列的全部权限,并且对指定用户,用户组和该系统的所有用户赋予权限.,5.8.2 文件共享的实现 根据实现文件共享的方式不同可以分为:*利用链接目录项实现共享*利用基本文件目录实现文件共享*利用索引节点实现共享*利用URL实现文件共享,(1)利用链接目录项实现共享,(2)利用基本文件目录实现文件共享,(3)
14、利用索引节点实现共享 UNIX系统中,文件的目录结构由两部分构成:目录项和索引节点(也称i节点)。其中目录项由文件名和索引节点号组成。索引节点中包含文件属性,文件共享目录数,与时间有关的文件管理参数以及文件存放的物理地址的索引区等。,文件在创建时,系统在目录项中填入其文件名和分配相应的索引节点号。当某用户希望共享该文件时,则在某目录的一个目录项中填入该文件的别名,而索引节点仍然填写创建时的索引节点号。,(4)利用URL实现文件共享 URL:同一资源定位器是Internet上用来链接超文本文件的一种方法.可以链接本地文件,也可以链接Internet上任何主机上的远程文件.其实现方法是通过输入相同
15、的访问文件的URL地址来达到访问同一个文件的目的.,5.9 文件保护与安全 5.9.1 文件保护 影响文件安全性的主要因素是:*数据丢失*非法侵入 解决因数据丢失而导致文件系统不安全的主要解决方案由:*系统容错技术*系统备份,5.9.2 安全性管理 文件系统安全性管理的四个级别:*系统级安全管理*用户级安全管理*目录级安全管理*文件级安全管理,(1)系统级安全管理 系统级安全管理的主要任务:防止未授权用户进入系统,以保证系统资源不被非法使用.,(2)用户级安全管理 用户级安全管理是根据用户的性质,要求及访问的文件属性为用户分配“文件访问权限”.用户级安全管理包括两个方面:*对用户分类*为用户分
16、配文件访问权限,(3)目录级安全管理 目录级安全管理是系统保护各种目录,规定只有系统内核才有具有写目录的权利.目录的读权限指允许进程读目录;目录的写权限指允许进程请求系统为之建立新目录项或撤销已有的目录项;目录的执行权指允许进程访问目录,查找指定文件.,(4)文件级安全管理 文件级安全管理是通过系统管理员或文件主设置文件属性,控制用户对文件的访问.用户对文件的访问权由用户访问权与目录访问权及文件属性三者求交集而确定.,5.10 文件系统的可靠性 保护文件的方法:*定期备份文件*保护文件系统数据的一致性,5.10.1 系统备份,5.10.2 文件系统数据的一致性 文件系统数据的一致性检查分为两种:*磁盘块的一致性检查*文件的一致性检查,(1)磁盘块的一致性检查,(2)文件的一致性检查 文件的一致性检查还包括文件的一致性检查,通过检查目录系统的一致性来实现.通过建立一张文件计数表来实现.,本门课程到此结束 谢谢同学们对我的支持!,