第七章 文件管理

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Ai Li i
i 0
记录寻址
(2)利用关键字 用户必须指定一个字段作为关键字,通过指定的关键字 来查找记录。
系统将利用该关键字顺序地从第一个记录开始,与每一 个记录的关键字进行比较,直到找到匹配的记录。
索引文件
※ 为变长记录文件建立一张索引表,对主文件中每个记 录,在索引表中设有一个相应的表项,用于记录该记 录的长度L及指向该记录的指针(该记录在逻辑地址空 间的首址),索引表本身是定长记录的顺序文件。
文件、记录和数据项
3.文件
文件是指由创建者所定义的、具有文件名的一组相关元 素的集合。
从文件的逻辑结构可分为有结构文件和无结构文件两种
无结构文件可以看成是一个字节流,其文件元素为一个 “字符”或“字节”,有时又称为字节流文件,或流文件。
有结构文件的文件元素是一条记录,文件有若干相关记录 组成;根据记录的组织方式不同,可以分为堆文件、顺序 文件、索引顺序文件、索引文件和直接(哈希)文件 。
(1) 定长记录的顺序文件 如果已知当前记录的逻辑地址,便很容易确定下一个记 录的逻辑地址。 在读一个文件时,可设置一个读指针Rptr。令它指向下 一个记录的首地址,每当读完一个记录时,便执行: Rptr:=Rptr+L (L为记录长度)
记录寻址
(2)变长记录的顺序文件 在每次读或写完一个记录后,须将读或写指针加上Li Wptr:=Wptr+Li (Li 是刚读或刚写完的记录的长度)
顺序文件
※ 用户和系统在管理上的目标和需求不同,产生了多种 组织方式,从而形成了多种逻辑结构的文件。其中最 常见的就是顺序文件。
※ 顺序文件的排列方式
文件中的记录排列可归纳为以下两种情况: (1)串结构。各记录之间的顺序与关键字无关。通常的办法 是由时间来决定,即按存入时间的先后排列。检索文件时,每 次都从头开始,逐个记录查找,直到找到或查找完所有记录。 (2)顺序结构。指文件中的所有记录按关键字排列。可采用 折半、插值、跳步查找法查找,提高效率。
文件标识:文件名、内部名、别名。
文件属性:文件类型、长度、物理地址(用一维块号、或簇表 示)、建立时间等。
文件名和文件类型
※ 文件名和扩展名
(1)文件名:一个文件必须要有一个文件名, 它通常是由一 串ASCII码或(和)汉字构成,名字的长度因系统不同而异。如在 有的系统中把名字规定为8个字符,而在有的系统中又规定可 用14个字符。 (2)文件扩展名:文件扩展表示了文件的使用特征;
文件逻辑结构的类型
※ 按文件的组织方式分类
根据文件的组织方式,可把有结构文件分为三类 (1 )顺序文件
文件体是按某种顺序排列的记录序列,可以是定长也可 以是变长记录。
(2)索引文件 当记录为可变长度时,通常为之建立一张索引表。 (3)索引顺序文件
它为文件建立一张索引表,为每一组记录中的第一个记 录设置一个表项。
R1的逻辑地址为: 4+ L0
R2 的逻辑地址为: 6+ L0+L1
索引文件
记录号 0 1 2 ….
记录长度 逻辑地址
m0 m1 m2 ….
R0 R1 R2 …
主文件 ( 变长记录)
索引表 ( 按记录号索引)
姓名(键) An qi Bao luo Da yu ….
逻辑地址
Bao luo … An qi Da yu
文件名和文件类型
※ 文件类型
按用途分:系统文件、用户文件、库文件。 按数据形式分:源文件、目标文件、可执行文件。
按存取权限分:只执行文件、只读文件、读写文件。
按组织形式和处理方式分类:普通文件、目录文件、特殊 文件。
文件系统模型
※ 文件系统的模型可分为三个层次:最底层是对象及其 属性,中间层是对对象进行操纵和管理的软件集合, 最高层是文件系统提供给用户的接口。
顺序文件
※ 顺序文件的优缺点
优点:
① 对顺序文件的存取效率是所有逻辑文件中最高的。
② 只有顺序文件才能存储在磁带上,并能有效地工作。
缺点 :
① 在交互应用的场合,如果用户(程序)要求查找或修改单个记 录,为此系统便要去逐个地查找诸记录。 ② 如果想增加或删除一个记录,都比较困难。
顺序文件
文件、记录和数据项
文件
记录1
记录2

记录n
数据项1
数据项2

数据项n
文件、 记录和数据项之间的层次关系
文件、记录和数据项
数据项
学号 姓名 张三 李四 性别 男 男 年龄 班级 JSJ04-5 JSJ04-5
01 02
20 20
文件
记录
40
王五

20
JSJ04-5
文件、记录和数据项
文件包括两部分: ( 1 )文件体:文件本身信息。 ( 2 )文件说明:文件存储和管理信息
文件系统概述
2、文件的组成部分
文件体:文件本身的信息 文件说明:文件存储和管理信息
• 文件名称
sort.c
• 文件内部标识符
• 文件类型 •文件存储位置 •文件大小 • 访问权限 • 时间、日期、用户标识 ……
文件属性 文件控制块 (FCB) 目录项
文件系统概述
3、文件系统
操作系统中负责存取和管理文件信息的模块称为文件系 统。它负责管理文件的存储、检索、更新、共享和保护,并为 用户提供一整套方便有效的文件使用和操作方法。
② 程序接口
文件操作
※ 用户通过文件系统提供的系统调用实施对文件的操作。 1.最基本的文件操作有:
创建文件(分配外存,建立目录项)、 删除文件(置空目录项)、 读文件、
写文件、
截断文件(原有文件长度置0) 设置文件的读/写位置(改变始终从始端开始读/写操作)。
文件操作
2.文件的“打开”和“关闭”操作:
① 对文件存储空间的管理;
② 对文件目录的管理; ③ 用于将文件的逻辑地址转换为物理地址的机制;
④ 对文件读和写的管理;
⑤ 对文件的共享与保护等功能。
文件系统模型
文件系统的接口 方便用户的使用,文件系统以接口的形式提供了一组对文件和 记录操作的方法和手段。通常是下面两种类型的接口:
① 命令接口
例:描述一个学生的基本属性包括以下数据项:
姓名 学号 出生日期 性别 专业 班级
年 月 日 组合数据项
文件、记录和数据项
2.记录
记录是一组相关数据项的集合,用于描述一个对象在某 方面的属性。一个记录应包含哪些数据项,取决于需要描述对 象的哪个方面。由于对象所处的环境不同可把他作为不同的对 象。 在诸多记录中,为了能唯一的标识一个记录,必须在一个 记录的各个数据项中确定出一个或几个数据项,把它们的集合 称为关键字。 关键字是唯一能标识一个记录的数据项。
顺序文件
0 R0 R1 R2 R3
L
L L L
L 2L 3L
L0 R0 L1 R1
0
L0
L0+1
L1
4L
iL (i+1)L
L0+L1+2
Ri
L
Ri
(a) 定长记录文件
(b) 变长记录文件
记录寻址
※ 显式寻址方式
(1) 通过文件中记录的位置 对于定长记录文件,如果要查找第i个记录,可直接根 据下式计算来获得第i个记录相对于第一个记录首址的地址: Ai=i×L 然而,对于可变长度记录的文件,要查找其第i个记录 时,须首先计算出该记录的首地址。为此,须顺序地查找每个 记录,从中获得相应记录的长度Li,然后才能按下式计算出第i 个记录的首址。假定在每个记录前用一个字节指明该记录的长 i 1 度,则
例:主文件逻辑结构
定长记录 R0 0 R1 1L
L
R2 2L R3 3L R4 4L
(按记录号排序)
……
逻辑地址
L
定长记录 Rk1 0 Rk2 1L Rk3 2L Rk4 3L
(按主键 k 排序)
Rk5 4L
……
逻辑地址
L:单条记录的长度(length)
R:单条记录的内容(record)
记录寻址
※ 隐式寻址方式
第七章 文件管理
本章学习目标
了解文件系统、文件、记录、数据项的概念;
了解文件的几种分类方式,了解文件系统的层次结构;
掌握文件的打开和关闭操作的含义,了解文件的基本操作; 了解文件的逻辑结构,理解有结构文件(记录式文件)的类别;
掌握三种外存分配方式,理解连续分配、链接分配和索引分配之间的优缺点,会用这三种
文件组织的两种观点
顺序文件由一系列将记录按某种顺序排列 所组成的文件。 索引文件建立一张索引表,每一记录设置 一表项,加快对记录检索速度的文件。 索引顺序文件为文件建立一张索引表,为 每一组记录中的第一个记录设置一个表项。
文 件 的 逻 辑 结 构
有结构文件 定长记录 变长记录
无结构文件又称为流式文件,源程序、可执行文件、 库函数等都采用无结构的文件形式。
OS所提供的大多数对文件的操作,其过程大致为以下两步:
第一步是通过检索文件目录来找到指定文件的属性及其在外存 上的位置; 第二步是对文件实施相应的操作,如读文件或写文件等。
“打开”(open),是指系统将指名文件的属性(包括该文件 在外存上的物理位置)从外存拷贝到内存打开文件表的一 个表目中,并将该表目的编号(或称为索引)返回给用户。 “关闭”(close)系统调用来关闭此文件,OS将会把该文 件从打开文件表中的表目上删除掉。
文件操作
3.其它文件操作:
对文件属性的操作,改变文件名、改变文件的拥有者, 查询文件的状态等。
02
文件的逻辑结构
文件组织的两种观点
※ 文件的逻辑结构:这是从用户角度出发所观察到的文 件组织形式,是用户可以直接处理的数据及其结构, 它独立于文件的物理特性。 ※ 文件的物理结构:又称文件的存储结构。是指文件在 外存上的存储组织形式,这不仅与存储介质的存储性 能有关,而且与所采用的外存分配方式有关。
1 文件和文件系统
目录
Contents
2 文件的逻辑结构 3 文件目录 4 文件共享 5 文件保护
01
文件和文件系统
文件系统概述
1、文件
磁带
磁盘
光盘
优盘
定义:是记录在外存上的,具有符号名的,在逻辑上具有完整 意义的一组相关信息项的集合。
信息项:是构成文件内容的基本单位,可以是一个字符, 也可以是一个记录。
其他属性 …. 其他属性 其他属性
文件逻辑结构的类型
※ 按文件是否有结构分类
(1)有结构文件:是指由一个以上的记录构成的文件,故又 把它称为记录式文件;
Baidu Nhomakorabea
(2)无结构文件:是指由字符流构成的文件,故又称为流式 文件。无结构的文件形式,即流式文件,其长度以字节为单位 在UNIX系统中,用读、写指针指出下一个要访问的字符。所有 的文件都被看作是流式文件。
• 基本目标:实现“按名存取”; • 提供方便的操作和统一的调用接 口,屏蔽底层细节。 文件系统 用户
系统
• 组织、分配、回收文件的存储 空间; • 负责文件的存储、检索、共 享 和保护。 • 重要目标:提高文件存取速度
文件系统概述
4、文件系统的功能
① 有效的管理文件的存储空间 ② 管理文件目录
③ 完成文件的读/写操作
④ 实现文件共享与保护 ⑤ 为用户提供交互式命令接口和程序调用接口
文件、记录和数据项
1. 数据项
在文件系统中,数据项是最低级的数据组织形式,可把 它分成以下两种类型:
基本数据项:描述一个对象的某种属性的字符集,是数据 组织中可以命名的最小逻辑单位, 即原子数据,又称为数 据元素或字段,命名与属性有关。 组合数据项:由若干个基本数据项组成,简称组项。
用户(程序)
文件系统接口 对对象操纵和 管理的软件集合 对象及其属性
文件系统模型
对象及其属性 文件管理系统管理的对象如下:
① 文件。
② 目录。
③ 磁盘(磁带)存储空间。
文件系统模型
对对象操纵和管理的软件集合 该层是文件管理系统的核心部分。文件系统的功能大多是在这 一层实现的,其中包括有:
优点:检索速度较快,用于对信息处理的及时性要求较高 的场合,如:飞机订票系统。
缺点:除主文件外,还须配置一张索引表,每个记录有一 个索引项,增加存储费用。
索引文件
Li:指示Ri的长度(设:占2个字节) 变长记录 L0
R0
L0
L1
R1 L1
L2
R2 L2
L3
………
要读Ri记录,必须将 Ri-1个记录的信息读 出来
分配方式寻找、删除、插入、移动数据块;
掌握混合索引结构的分配方式,以UNIX的索引节点为例,会计算混合索引结构所能访问到 的外存空间的容量; 了解几种目录结构,掌握多级目录结构(树型目录结构)的访问方式;
理解文件存储管理中的空闲表、空闲链表法、位示图法和成组链接法;
了解文件保护的方法,了解文件共享的动机、方式和语义,理解文件共享的几种方法; 了解文件系统的实现
相关文档
最新文档