操作系统第21讲

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
盘块的使用情况。当其值为“0”时,表示对应的盘
块空闲;为“1”时,表示已分配。有的系统把“0”
作为盘块已分配的标志,把“1”作为空闲标志。磁
盘上的所有盘块都有一个二进制位与之对应,这样,
由所有盘块所对应的位构成一个集合,称为位示图。
24
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理

1 2 3 4
27
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.5.3
成组链接法
100 400 399 100 99 0 7999 … 301 7901
1.空闲盘块的组织
空闲盘 块号栈
S.free 0 1
100 300 299
300
400 …
7900

98 99 202 201 299 399 201
21
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2) 存储空间的分配与回收
空闲盘区的分配与内存的动态分配类似,同样是采 用首次适应算法、循环首次适应算法等。例如,在系统 为某新创建的文件分配空闲盘块时,先顺序地检索空闲 表的各表项,直至找到第一个其大小能满足要求的空闲 区,再将该盘区分配给用户(进程),同时修改空闲表。 系统在对用户所释放的存储空间进行回收时,也采取类 似于内存回收的方法,即要考虑回收区是否与空闲表中 插入点的前区和后区相邻接,对相邻接者应予以合并。
17
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.4.3
目录查询技术
1.线性检索法
线性检索法又称为顺序检索法。在单级目录中,
利用用户提供的文件名,用顺序查找法直接从文件 目录中找到指名文件的目录项。在树型目录中,用 户提供的文件名是由多个文件分量名组成的路径名, 此时须对多级目录进行查找。假定用户给定的文件 路径名是/usr/ast/mbox,则查找/usr/ast/mbox文件 的过程如图6-20所示。
在文件控制块中,通常应含有三类信息,即基本信
息、存取控制信息及使用信息。
5
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
1) 基本信息类
基本信息类包括: ① 文件名,指用于标识一个文件 的符号名。在每个系统中,每一个文件都必须有惟一的 名字,用户利用该名字进行存取。② 文件物理位置, 指文件在外存上的存储位置,它包括存放文件的设备名、
(2) 状态,指示i结点是否上锁或被修改。
(3) 访问计数,每当有一进程要访问此i结点时,将 该访问计数加1,访问完再减1。
(4) 文件所属文件系统的逻辑设备号。
(5) 链接指针。设置有分别指向空闲链表和散列队 列的指针。
13
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.4.2
目录结构
存取控制信息类包括:文件主的存取权限、核
准用户的存取权限以及一般用户的存取权限。
3) 使用信息类
使用信息类包括: 文件的建立日期和时间、文
件上一次修改的日期和时间及当前使用信息(这项信 息包括当前已打开该文件的进程数、是否被其它进 程锁住、 在内存中是否已被修改但尚未拷贝到盘 上 )。
7
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
第二十一讲
文件管理(三)
第六章 文件管理
本次课程主要内容

目录管理

文件控制块和索引节点


目录结构
目录查询技术 空闲表法和空闲链表发 位示图法、成组链接
文件存储空间的管理


文件共享与文件保护 数据一致性控制
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.4 目 录 管 理
3
F
E
D
4
G 8
A 9
16
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2) 路径名
在图6-19 中用户B为访问文件J,应使用其路径
名/B/F/J来访问。
3) 当前目录(Current Directory) 如用户B的当前目录是F,则此时文件J的相对 路径名仅是J本身。这样,把从当前目录开始直到 数据文件为止所构成的路径名,称为相对路径名 (relative path name);而把从树根开始的路径名称 为绝对路径名(absolute path name)。
2.盘块的分配
(1) 顺序扫描位示图,从中找出一个或一组其值为 “0”的二进制位(“0”表示空闲时)。 (2) 将所找到的一个或一组二进制位转换成与之相 应的盘块号。假定找到的其值为“0”的二进制位位于位 示图的第i行、第j列,则其相应的盘块号应按下式计算:
b = n(i - 1) + j
式中,n代表每行的位数。
(3) 修改位示图,令map[i,j]=1。
26
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
3.盘块的回收
盘块的回收分两步:
(1) 将回收盘块的盘块号转换成位示图中的行号
和列号。转换公式为:
i = (b - 1)DIV n + 1
j = (b - 1)MOD n + 1
(2) 修改位示图。令map[i,j] =0。
1 1 0 1
2 1 0 1
3 0 0 1
4 0 1 0
5 0 1 0
6 1 1 0
7 1 1 1
8 1 1 1
9 0 1 1
10 0 0 1
11 1 0 1
12 0 0 1
13 0 0 0
14 1 1 0
15 1 1 0
16 0 1 0
16
25
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
(2) 文件类型,包括正规文件、目录文件或特别文件。
(3) 文件存取权限,指各类用户对该文件的存取权限。 (4) 文件物理地址,每一个索引结点中含有13个地址项,
即iaddr(0)~iaddr(12),它们以直接或间接方式给出数据文
件所在盘块的编号。
11
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
1.单级目录结构
文件名 文件名 1 文件名 2 „ 物理地址 文件说明 状态位
目录项中含文件名、文件扩展名、文件长度、 文件类型、文件物理地址以及其它文件属性。此外, 为表明每个目录项是否空闲,又设置了一个状态位。
14
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2.两级目录
W ang用 户目 录 用户名 Wang Zhang Gao Zhang用 户目 录 Report Test Gao用 户目 录 Beta Device Misx
15
Alpha Test
指向子目录指针
Alpha Test
Report Test
Beta Device Misx
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
3.多级目录结构
1) 目录结构
2 A B 6 5 10 A 11 12 15 J 16 N K b 13 17 J M 18 K 19 14 A 20 H 21 F C a D 7 1 A B C
UNIX系统,采用了把文件名与文件描述信息分开
的办法,亦即,使文件描述信息单独形成一个称为索引 结点的数据结构,简称为i结点。在文件目录中的每个 目录项仅由文件名和指向该文件所对应的i结点的指针 所构成。
9
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
在UNIX系统中一个目录仅占16个字节,其中14个
28
7899
7999

301


7801
东北大学秦皇岛分校计算机与通信工程学院

7901

第六章 文件管理
6.6 文件共享与文件保护
6.6.1 基于索引结点的共享方式
根目录 A A B B ?
29
B B B C C C C
C C C C
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
Wang 用户文件目录
Test r
索引结点
Lee 用户文件目录
count= 2 文件物理地址
Test
Test r
30
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
C的目录 B的目录 C的目录 B的目录
owner= c count= 1
owner= c count= 2
owner= c count= 1
链接前
建立链接后
文件在外存上的起始盘块号、指示文件所占用的盘块数
或字节数的文件长度。③ 文件逻辑结构,指示文件是 流式文件还是记录式文件、记录数;文件是定长记录还
是变长记录等。④ 文件的物理结构,指示文件是顺序
文件,还是链接式文件或索引文件。
6来自百度文库
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2) 存取控制信息类
3
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
对目录管理的要求如下:
(1) 实现“按名存取”
(2) 提高对目录的检索速度。
(3) 文件共享。
(4) 允许文件重名。
4
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.4.1
文件控制块和索引结点
1.文件控制块
为了能对系统中的大量文件施以有效的管理,
根目录 1 1 4 7 14 9 6 8 · · · bin dev lib etc usr tmp
在结点 6中查找 usr字段
19
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2.Hash方法
如果我们建立了一张Hash索引文件目录,便可利用
Hash方法进行查询,即系统利用用户提供的文件名
字节是文件名,2个字节为i结点指针。在1 KB的盘
块中可做64个目录项,这样,为找到一个文件,可
使平均启动磁盘次数减少到原来的1/4,大大节省了
系统开销。
文件名 文件名 1 文件名 2 „
10
索引结点编号

东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2) 磁盘索引结点
这是存放在磁盘上的索引结点。每个文件有惟一的一个 磁盘索引结点,它主要包括以下内容: (1) 文件主标识符,即拥有该文件的个人或小组的标识 符。
第六章 文件管理
FCB的长度为32个字节,对于360 KB的软盘,总共
可包含112个FCB,共占3.5KB的存储空间
第 一 块 号
文 件 名
扩 展 名
属 性
备 用
时 间
日 期
盘 块 数
8
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2.索引结点
假如一个FCB为64 B,盘块大小为1 KB,则每个盘 块中只能存放16个FCB;若一个文件目录中共有640个 FCB,需占用40个盘块,故平均查找一个文件需启动磁 盘20次。
拥有者删除文件后
31
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.6.2 利用符号链实现文件共享
为使B能共享C的一个文件F,可以由系统创建一个 LINK类型的新文件,也取名为F,并将F写入B的目录 中,以实现B的目录与文件F的链接。在新文件中只包 含被链接文件F的路径名。这样的链接方法被称为符号
22
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
2.空闲链表法
空闲链表法是将所有空闲盘区拉成一条空闲链。
根据构成链所用基本元素的不同,可把链表分成两
种形式:空闲盘块链和空闲盘区链。
23
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.5.2
位示图法
1.位示图
位示图是利用二进制的一位来表示磁盘中一个
(5) 文件长度,指以字节为单位的文件长度。
(6) 文件连接计数,表明在本文件系统中所有指
向该(文件的)文件名的指针计数。
(7) 文件存取时间,指本文件最近被进程存取的
时间、最近被修改的时间及索引结点最近被修改的
时间。
12
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
3) 内存索引结点
这是存放在内存中的索引结点。当文件被打开时, 要将磁盘索引结点拷贝到内存的索引结点中,便于以后 使用。在内存索引结点中又增加了以下内容: (1) 索引结点编号,用于标识内存索引结点。
并将它变换为文件目录的索引值,再利用该索引值
到目录中去查找,这将显著地提高检索速度。
20
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
6.5 文件存储空间的管理
6.5.1 空闲表法和空闲链表法
1.空闲表法
1) 空闲表
序 1 2 3 4 号 第一空闲盘块号 2 9 15 — 空闲盘块数 4 3 5 —
链接(Symbolic Linking)。新文件中的路径名则只被看
作是符号链(Symbolic Link),当B要访问被链接的文件F 且正要读LINK类新文件时,此要求将被OS截获,OS 根据新文件中的路径名去读该文件,于是就实现了用户 B对文件F的共享。
18
东北大学秦皇岛分校计算机与通信工程学院
第六章 文件管理
结点 6是 /usr的目录 132号盘块是 /usr的目录 6 1 19 132 30 51 26 45 erik jim ast bal · · · dick 496 92 60 81 17 books mbox minik src 结点 26是 /usr/ast的目录 496号盘块是 /usr/ast的目录 26 6 64 · · · grants
相关文档
最新文档