您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 《操作系统设计与实现》第五章 文件管理
操作系统课程讲义《操作系统设计与实现》第五章文件管理主讲教师:史广顺gsshi@expervision.com.cngsshi@imi.nankai.edu.cn操作系统课程讲义2课堂考试DMA占用总线传输数据的三种方式是什么?请简要描述这三种方式的差异和优缺点课堂考试操作系统课程讲义3课后作业某DMA控制器具有四个通道,该控制器每100ns能够请求一个32位的字,响应要花费相等的时间长度。总线必须达到多快才能避免成为瓶颈?课后作业操作系统课程讲义4内容提要文件管理器(文件系统)概述文件系统设计原理文件结构定义磁盘空间管理文件系统服务功能文件系统管理实例剖析内容提要操作系统课程讲义5文件系统概述“文件”的基本概念“文件”的基本理解从人类文明的发展谈起“文件”的逻辑含义与物理体现“File”VS“Document”:概念背后的差别文件系统概述描述性定义:文件是辅助设备(磁盘驱动器)的基本抽象,用来永久保存数据和信息。操作系统课程讲义6文件系统概述计算机为什么需要文件?数量原因——内存无法保存大量信息时间原因——内存无法永久保存信息应用原因——内存无法方便实现共享文件系统的作用为应用程序提供逻辑抽象(虚拟机)为磁盘空间提供管理机制(资源管理器)文件系统概述操作系统课程讲义7文件系统概述文件系统概述文件系统服务器文件结构定义文件访问控制安全、保护磁盘空间分配磁盘数据存取磁盘设备防护数据文件磁盘空间映射应用层观点:逻辑抽象物理层观点:空间管理操作系统课程讲义8文件与文件系统文件的组成和作用由具有标识的、在逻辑上有完整意义的信息项的序列标识——文件名、信息项——文件体文件的逻辑含义:由文件的创建者和使用者进行定义和维护文件必须便于存储、检索、共享广义的“文件”概念:所有可存储、提供信息资源的设备均可称为文件文件系统的组成和概念操作系统中统一管理信息资源的软件模块,负责管理文件的存储、检索、更新,提供安全可靠的共享和保护手段,方便用户的使用文件系统需要同时管理文件的逻辑结构和物理结构广义的文件系统:与I/O设备管理相结合,将所有I/O设备当作文件文件系统概述操作系统课程讲义9文件的结构要点和分类文件的结构要点命名规则:用于定义文件的“逻辑化标识”文件格式:用于定义文件的“逻辑化结构”文件访问:用于定义使用文件的方法和接口文件的分类按照文件性质和用途划分:系统文件、用户文件、库文件按照信息保存的期限划分:临时文件、永久文件、档案文件按照文件的保护方式划分:只读文件、读写文件、可执行文件按照文件的逻辑结构划分:流式文件、记录式文件、结构化文件按照文件的物理结构划分:顺序文件、链接文件、索引文件Unix中的文件分类:普通文件、目录文件、特殊文件(设备文件)文件系统概述信息项0信息项1……...信息项k……...信息项n读写指针操作系统课程讲义10文件系统的功能目标文件系统功能目标概述用户观点:虚拟机的作用,如何用统一的形式展现各类文件?如何提供方便的文件操作接口?系统观点:如何与其他系统模块进行交互?如何实现并维护文件的逻辑体系和物理结构?如何设计并实现各种文件的操作接口?文件系统的功能目标统一管理文件的存储空间,实现存储空间的分配与回收提供方便的文件访问机制,实现对文件的按名存取向用户提供完整而方便的文件操作接口(如开/关、读/写、关闭等)提供对文件的安全保护和信息共享机制向下提供和I/O设备相一致的接口,向上提供用户需要的相关信息实现“合理”、“有效”的性能目标:文件系统的执行性能文件系统概述操作系统课程讲义11内容提要文件管理器(文件系统)概述文件系统设计原理文件结构定义磁盘空间管理文件系统服务功能文件系统管理实例剖析内容提要操作系统课程讲义12文件系统设计原理-基本概念文件命名名称.扩展名(为什么用这种格式呢?)文件类型——标识文件的作用正规文件、目录、字符设备文件、块设备文件文件结构——逻辑结构三种常见的文件结构文件格式——数据组织形式你了解常见的文件格式定义吗?文件属性及相关操作文件属性相关操作:生死、存取、变化、设置文件系统设计原理操作系统课程讲义13文件的逻辑结构逻辑结构与物理结构的差别逻辑结构:内容的组织形式物理结构:数据的存储形式逻辑结构1——字节流最简单、最原始的逻辑结构最大缺点:增删改查困难逻辑结构2——记录序列结构化的文件内容组织曾经流行一时,已经落伍逻辑结构3——树形组织最灵活的逻辑结构便于增量存储和各种操作文件系统设计原理操作系统课程讲义14文件的格式组成文件系统设计原理操作系统课程讲义15常见的文件属性及其含义保护:谁可以存取文件、以什么方式存取文件口令:存取文件需要的口令创建者:文件的创建者ID所有者:当前所有者只读标志:0表示读/写;1表示只读隐藏标志:0表示正常;1表示不在列表中显示系统标志:0表示普通文件;1表示系统文件存档标志:0表示已经备份;1表示需要备份ASCII/二进制标志:0表示ASCII文件;1表示二进制文件随机存取标志:0表示只允许顺序存取;1表示随机存取临时标志:0表示正常;1表示进程退出时删除文件加锁标志:0表示未加锁;1表示已加锁记录长度:1个记录中的字节数键的位置:每个记录中键的偏移量键的长度:键字段的字节数创建时间:文件创建的日期和时间最后一次存取时间:文件上一次存取的日期和时间最后一次修改时间:文件上一次修改的日期和时间当前大小:文件的字节数最大长度:文件可能增长到的字节数文件系统设计原理操作系统课程讲义16目录的概念与作用目录——特殊的文件为什么需要目录?目录的逻辑结构定义值型结构与址型结构层次化的目录结构目录结构的管理方法单一目录,用户共享一个用户一个目录一个用户一个目录树文件系统设计原理目录访问——路径相对路径与绝对路径为什么要用相对路径?workingfolder概念目录操作与文件非常类似差别:访问操作、管理操作操作系统课程讲义17目录的结构形式与组成文件系统设计原理操作系统课程讲义18文件系统的实现文件系统布局如何划分磁盘空间——磁盘分区文件系统的技术实现文件的实现•磁盘空间分配方案:连续、链接、索引目录的实现•如何有效的保存文件名、文件属性和物理地址文件共享的实现磁盘空间管理以块为单位使用磁盘空间——对比存储管理中的“分页式”空闲块记录与磁盘配额限制文件系统的可靠性与性能保证文件备份与文件系统一致性高速缓存、块提前读、减少磁盘臂运动文件系统设计原理操作系统课程讲义19文件的空间分配策略连续分配方式将文件存储在连续的磁盘块中优点:容易实现、便于访问缺点:适用性差、造成磁盘碎片链接表分配为文件建立块链接表优点:克服连续分配方式的缺点缺点:无法随机访问、造成性能下降索引链接表对块链接表建立索引,保存在内存中优点:克服链接表方式的缺点缺点:浪费内存I-Node方式为每个文件建立I-Node表,类似页表优点:提高访问性能、支持大容量文件缺点:如何保存I-Node?文件系统设计原理外存与内存管理的差别管理数据的大小对系统性能的影响系统服务对象的差别系统设计思考文件逻辑结构定义了功能文件物理结构决定了性能静态概念:程序——数据动态概念:进程——文件操作系统课程讲义20文件空间的连续分配方式文件系统设计原理操作系统课程讲义21连续空间分配的优缺点分析优点分析简单易用:技术机制非常简单,易于实现和维护读取速度快:连续空间分配使得文件读取时磁盘工作量大大降低缺点分析文件不能动态增长:类似于“多道固定分区”存储机制•如果分配硬盘空间时预留扩充空间则会造成浪费•如果不预留扩充空间又使得文件扩容时必须重新分配空间不利于文件的插入和删除:技术机制简单但是效率低下易造成磁盘空间的“外零头”•需要特定的程序负责“紧缩”磁盘空间何时使用连续空间分配?简单应用环境,已知文件数量和大小文件系统设计原理操作系统课程讲义22文件的链接表与索引链接表文件系统设计原理操作系统课程讲义23链接表方式的优缺点分析优点分析磁盘空间利用效率很高缺点分析不利于文件的“随机访问”,依然需要进行“顺序存取”使用指针的方式会造成很高的可靠性和安全性风险指针占用磁盘空间,造成文件存取不变•上层应用以“块”为单位读取内容,指针占用空间后导致一个逻辑块的内容无法被保存在一个磁盘块中链接表方式的改进内存保存链接表方式(FAT)缺点在于使用内存保存FAT时,会占用大量内存空间文件系统设计原理操作系统课程讲义24基于索引的文件内容分配方式文件系统设计原理操作系统课程讲义25索引表方式的优缺点分析索引表组织形式链接方式:用指针将多个保存索引表的磁盘块连在一起多级索引:采用两级或者三级索引机制,记录大文件的磁盘空间地址混合模式:I-Node方法,既适应小文件,也满足大文件需求优点分析充分吸收了连续分配和链表分配的优点,支持顺序存取和随机存取可以方便的实现文件的空间动态增长,插入删除的要求充分利用了外存空间,管理过程有很高的效率缺点分析当文件的物理空间分布过于分散时,文件读取消耗较长的时间索引表方式占用了较多的系统资源,包括磁盘和内存,同时对操作系统的设计要求也很高文件系统设计原理操作系统课程讲义26文件物理空间分配方式的总结文件系统设计原理连续分配链表方式索引方式存储介质磁带支持不支持不支持磁盘支持支持支持存取方式顺序+随机存取顺序顺序+随机存取空间利用效率较低,会产生外零头指针占用磁盘空间引起管理问题利用磁盘和内存,但效率很高应用环境分析最简单、最原始中间过渡阶段广泛应用操作系统课程讲义27目录的物理结构实现目录系统的主要功能从路径名到文件物理位置的转换文件各类属性的保存目录系统的概念理解表面概念:称为“目录”的特殊文件,一个名字而已深层概念:对目录内所有文件、子目录的集中管理目录系统的重要作用文件结构的容器磁盘空间管理的重要途径文件系统设计原理操作系统课程讲义28目录的物理结构实现目录表与目录项目录表:保存该目录下所有文件的属性信息目录项:保存一个特定文件的相关属性信息结构实现的策略非层次化目录:一维表层次化目录:索引式目录表目录实现机制的举例MSDos系统、Unix系统文件系统设计原理操作系统课程讲义29目录实现需要考虑的问题目录自身的结构组成目录是特定类型的文件,一个目录文件可包含多个目录项目录项格式:包含文件属性内容或者地址目录的使用:将目录放在内存中,便于实现快速文件检索目录实现所面对的问题目录自身的数据结构设计:静态(一维表)和动态(索引)文件名长度:固定长度(8.3,14.x)和可变长度目录结构的性能保证空间利用效率:用链接、索引的方式代替值存储,层次化信息管理存取访问效率:使用Hash技术、高速缓存等方式提高目录检索速度文件共享问题:使用符号连接方式实现方便的共享文件系统设计原理操作系统课程讲义30目录项的实例说明文件系统设计原理操作系统课程讲义31目录项的实例说明文件系统设计原理操作系统课程讲义32磁盘空间管理管理内容为文件提供磁盘空间资源,实现文件逻辑结构与物理结构的对应为目录建立磁盘空间结构,实现层次化目录对磁盘空间进行有效的分配、释放和维护关键设计问题磁盘空间的管理策略:如何分配磁盘?如何维护磁盘?文件与目录的实现机制:如何更好的支持上层应用?文件系统的可靠性和安全性:如何防止访问错误和数据丢失?系统设计与实现思路分析定义良好的底层机制,高效管理磁盘空间搭建稳定的应用体系,提供多样系统服务设计完善的防护策略,保证系统运行性能文件系统设计原理操作系统课程讲义33磁盘空间管理策略空间单位划分字节序列:对磁盘空间不进行划分,管理效率低下块定义:类似于内存管理中的分页模式
本文标题:《操作系统设计与实现》第五章 文件管理
链接地址:https://www.777doc.com/doc-3528908 .html