计算机操作系统笔记(五)

第五章 文件管理

5-1 文件的概念

M 文件的概念
M 文件的命名
U 文件的分类
U 引入文件的优点

操作系统的两个重要概念:进程、文件

硬件资源管理:处理器、内存、外设

文件的概念:文件是具有符号名的,在逻辑上有完整意义的一组相关信息序列

文件的命名:文件名+扩展名
Windows中,.com可执行文件、.exe可执行浮动二进制文件、.lib库程序文件、
.bat批命令文件、.obj目标文件

文件分类
按用途、按保护级别、按信息时限

引入文件的优点:
1.用户使用方便,使用者无需记住信息存放的物理地址,
也无需考虑如何将信息存放到物理介质上,只需要知道文件名,
给出有关OS要求便可存取信息,实现了按名存取,这是计算机数据库管理的重大
进展。
2.文件安全可靠,防止破坏窃用
3.文件可备份
4.文件可共享

5-2 文件系统及其功能

文件系统是OS 中负责存取和管理信息的模块,它用统一的方式管理用户和系统信息的存储、检索、共享和保护,并为系统提供一整套的方便有效的文件使用和操作方法。

文件系统的文件:逻辑结构、物理结构
功能:文件的按名存取、文件的共享和保护、文件的操作和使用

Os为了实现以上功能需要考虑:
1.文件目录的建立和维护
2.存储空间的分配和回收
3.数据的保密和保护
4.监督用户存取和修改文件的权限

实现在不同存储介质上信息的表示方式,编址方法,存储次序,以及信息检索
问题

文件系统
文件组织->组织方法(逻辑结构:流式记录、物理结构:顺序连接,直接索引)
文件存取
文件的控制
文件的使用->文件操作( 系统调用,open,close,read,write,control)

5-3 文件的存储

U 卷和块
U 顺序存储设备的信息安排
U 直接存储设备的信息安排

文件存取介质:磁带,磁盘,光盘
卷是存储介质的物理单位,对应于一盘磁带,一块软盘,一个光盘,一个硬盘区
块是存储介质上连续信息所组成的一个区域,也叫做物理记录,是主存和辅存
信息交换的基本单位。

磁盘->直接存取存储设备
光盘、磁带->顺序存储设备

5-4 文件的逻辑结构

M 逻辑文件
M 流式文件
M 记录式文件
U FS与DBS的区别

逻辑文件:独立于物理环境,用户概念中抽象的信息组织方式,用户能观察到的,并加以处理的数据集合。

文件的逻辑结构的两种形式:流式文件、记录式文件

DBS也支持逻辑记录
DB中之间可以通过数据冗余构成某种联系,而OS中,文件系统的记录
式文件不支持这样的操作。

5-5 文件的物理结构

M 文件的物理结构
M 顺序文件
M 连接文件
M 直接文件
M 索引文件

文件的物理结构又称物理文件,是指文件在物理存储空间中的存放方法和组织关系。

文件的存储结构涉及块的划分、记录的排列、索引的组织、信息的搜索
等许多问题。

顺序文件:将文件中逻辑上连续的信息存放到存储介质依次相邻的块中便形成顺序结构,这类文件叫做顺序文件或连续文件

典型例子:磁带文件、光盘文件。

顺序文件的优点:顺序文件存取时速度较快(批处理文件、系统文件)
缺点:建立文件前需要能预先确定文件长度以便分配存储空间,修改
插入和增加文件记录有困难。

连接文件(串联文件):使用连接字来表示文件各个物理块的先后顺序。

第一块文件信息的物理地址由文件目录给出,而每一块
的连接字指出了文件的下一个物理块位置,连接字为0时,表示
文件至本块结束。
计算机操作系统笔记(五)_第1张图片

优点:易于增删改,易于动态增长记录,不必预先确知文件长度,存储
空间利用率高。

缺点:存放指针需要额外空间,这是一个巨大的弱点,如果要读第100个物理块
,就必须通过前99个物理块,因此仅适用于顺序存取。

直接文件(散列文件):它通过计算记录的关键字建立与物理存储地址
之间的对应关系。

优点:快速定位,随机访问数据,这种变换方法通常采用散列法(Hash法)

索引文件:为每个文件建立了一张索引表,每个表目包含一个记录和键
及存储地址。
优点:这是连接结构的扩展,除了具备连接文件的特点外,还客服了它只能顺序存取的
缺点,具有直接读写任意一个记录的能力,便于文件的增删改。

缺点:增加了索引表的空间开销和查找时间。

索引表的组织:一级索引、二级索引、三级索引
计算机操作系统笔记(五)_第2张图片

5-7 文件的目录结构

M 文件目录的概念
M 一级文件目录
M 二级文件目录
M 树形文件目录

文件目录:
文件目录是实现文件按名存取的关键数据结构,文件系统的基本功能之一就是
负责文件目录的建立和维护、检索,要求编排的目录便于查找,防止冲突

文件目录需永久保存,因此也组织成文件存放磁盘上,称目录文件。

一级目录结构:在OS中构造一张线性表,与每个文件相关属性占用一个目录项
,构成了一级目录结构
由于用户与文件众多,容易重名,不利于记忆。

二级目录结构:第一级为主文件目录,它用于管理所有用户文件目录,
它的目录项登记了系统接受的用户的名字,及该用户文件目录的地址,
第二级文件的目录,它为用户的每个问津保存一个等级栏,其内容与一级
目录项相同。

每一用户只允许查看自己的文件目录。
计算机操作系统笔记(五)_第3张图片
树形目录结构
每一级目录可以登记下一级目录,也可以登记文件,从而形成了层次文件目录
结构。

层次文件目录结构通常用树形目录结构,它是一颗倒向的有根树,
树根是根目录,从根向下,每一个树分叉是一个子目录,而树叶是文件。

树形目录结构的特点:
不同文件可以重名,只要它们不位于同一末端的子目录中,
易于规定不同层次或子树中文件的不同存取权限,便于文件的保护,保密和共享

树形目录结构中的文件定位
一个文件的全名包括从根目录开始到文件名为止

5-8 文件目录的管理

M 目录查找的方法
M 活动文件表

文件查找:是文件目录管理的重要操作,“按名存取”文件就是系统根据用户
提供的文件路径名来搜索各级文件目录,找到该文件可以从根目录起(
Relative Path),用表示当前目录表示文件目录

目录项查找
文件目录处理

活动文件处理
系统可以为每个用户进程建立一张活动文件表,当用户使用每一个文件之前,
先通过“打开”操作,把该文件有关目录信息复制到指定主存区域,有关信息
填入活动文件表,以建立用户进程和该文件索引的联系,当不在使用
该文件时,使用“关闭”操作切断用户进程和这个文件的联系,同时,若该
目录已被修改过,则更新辅存中对应的文件目录。

5-9 文件的安全和保密

U 文件安全与保密机制
M 文件的共享
M 文件的保密

文件共享 是指不同用户使用某些文件
文件保护是为了方式文件被破坏
文件保密是为了防止文件及其内容被其他用户窃取

文件共享的并发控制:在允许文件共享的系统中,OS应提供手段实现对文件的同
步控制,多个进程可能同时存取一个文件,如果它们同时进行读操作,OS
应对文件进行公用控制。

文件的保密措施
隐藏文件目录,设置口令,使用密码。

5-10 文件的保护

M 文件保护的概念
U 文件副本技术
U 文件存取控制矩阵
U 文件存取控制表
M 文件属性

文件保护是指防止文件被破坏
保护方法:文件副本,文件存取矩阵与文件存取表、文件属性

文件副本:动态多副本技术、转存、备份、恢复

动态多副本:在多个介质上维持同一内容的文件,并且在更新内容时同时进行。
这种方法需增加设备费用和系统负载,一般适用于容量较小
且较为重要的文件,例如不需更新的系统文件和专用文件。

文件转存:定时把文件复制转存到其他介质上,当某介质上出现故障时,
复原转存文件。

两种方式的比较:在一定时间间隔或一个单位处理结束时系统自动复写更新
过的文件和数据;
而是每天或每周把文件信息全部复写以便,需要时通过装入转存文件来恢复系统

文件的存取控制矩阵
系统为每个用户设置访问每个文件的存取属性,系统对全部
用户对全部文件的存取属性组成yield二维矩阵

存取控制表
每行包括:用户、文件、存取属性
仅登记那些对文件拥有存取属性的部分,不需访问就不需出现在表中

基于存取控制表的文件保护
1.存取属性:访问、读写、执行、创建、删除、授权
2.系统通过查表核对用户文件的存取权限
3.文件属性树妖使用GRANT、revoke等命令授权
4.系统管理用户等目录文件属性主权限,并获得对系统文件的授权,访问权限

文件属性
存取控制表的一种简化方法是用户分类,在针对于每类用户规定文件属性
用户分类:属主、合作者、其他
文件属性:读写、执行…
文件属性可以放在目录项中,管理极为简化

5-11 文件的存取方法

M 顺序存取
M 直接存取
M 索引存取

文件的存取方法是OS为用户程序提供的使用文件的技术和手段,在某种
程度上依赖于物理结构

顺序存取:按记录顺序进行读写操作的存取方法,利用读指针和写指针
直接存取:快速地以任意次序直接读写某个记录
索引存取:基于索引文件的索引存取方法,对于这种文件,信息块的地址都可以
通过查找记录键而算出。除可采用按键存取外,也可采用顺序存取或直接存取。

实际OS中,大都采用多级索引,以加速记录查找过程。

5-12 文件的使用

M 文件的使用
U 文件的建立与撤销、打开与关闭、读写与定位

文件的使用:用户通过两类接口文件系统联系,第一类是与文件有关的操作命令,例如
UNIX中的cat、cd、cp、find、mv、rm、mkdir、rmdir等等,第二类是提供给用户程序使用的文件类系统调用,基本文件类系统调用有:建立、打开、读、写、定位、关闭、撤销

建立文件
所需参数:文件名、设备类(号)、文件属性及存取控制信息
处理流程:在相应设备上建立一个文件目录项,为文件分配第一个物理块,在活动文件表中申请一个项,登记有关目录信息,并返回一个文件句柄。

撤销文件
所需参数:文件名、设备类(号)
处理流程:若文件没有关闭,先关闭文件;若为共享文件则进行联访处理;在目录文件中删去相应目录项;释放文件占用的文件存储空间

打开文件
用于建立起文件和用户进程之间的使用联系
所需参数:文件名、设备类(号)、打开方式
处理流程:查文件目录,在主存活动文件表中申请一个项,返回一个文件句柄,根据文件名查找目录文件,把目录信息复制到活动文件表相应栏,按存储区控制说明检查访问的合法性;若打卡的是共享文件,则应有相应处理。

关闭文件:结束文件的读写
所需参数:文件句柄
处理流程:将活动文件表中该文件的当前使用用户数减一,若只有一个进程使用该文件,则从活动文件表收回此文件,完成“推迟写”

读写文件
所需参数:文件句柄、用户数据区地址、读写的记录或字节个数
处理流程:按文件句柄从活动文件表中找到该文件信息,根据目录项指出该文件的逻辑和物理组织方式,把相关逻辑记录转换成物理块。

定位文件:用于移位读写指针。

5-13 辅存空间管理

U 辅存空间管理
M 常用方法

用户进程运行期间常常要建立和删除文件,OS应能自动管理和控制辅存空间。

随着用户文件不断建立和撤销,文件存储空间常常会出现许多碎片,OS解决碎片的方式是整理碎片,在整理过程中,往往会对文件重新组织,让其存放在连续存储空间中。

辅存空间的分配方式:连续分配、非连续分配
连续分配:顺序访问,速度快,管理简单,定时碎片整理
非连续分配:有效利用辅存空间,便于文件动态增长和收缩

空闲块管理:位示图
1表示已占用,0表示未占用

5-14 文件系统的实现层次

计算机操作系统笔记(五)_第4张图片

你可能感兴趣的:(MOOC南大COS,NOTE)