文件系统课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文件系统
序号 1 2 3 4
第 一 空 闲 盘 块 号 2 9 1 5 —
空 闲 盘 块 数 4 3 5 —
图6-21 空闲盘块表
文件系统
2) 存储空间的分配与回收 空闲盘区的分配与内存的动态分配类似,同样是采用首 次适应算法、循环首次适应算法等。例如,在系统为某新创 建的文件分配空闲盘块时,先顺序地检索空闲表的各表项, 直至找到第一个其大小能满足要求的空闲区,再将该盘区分 配给用户(进程),同时修改空闲表。系统在对用户所释放的 存储空间进行回收时,也采取类似于内存回收的方法,即要 考虑回收区是否与空闲表中插入点的前区和后区相邻接,对 相邻接者应予以合并。
读缓冲区相应字节到目标地址m
读22#扇区在FAT表中对应行得到下 一个扇区号(55#)
读55#扇区入内存 缓冲区
读22#扇区入内存 缓冲区
读缓冲区相应字节到目标地址m+? 成功返回
文件系统
• MS-DOS系统只有一张文件分配表FAT16, 在FAT的每个表项中存放下一个盘块号。对 于1.2M的软盘,假设盘块的大小为512字节, 则FAT表的容量为____。
文件系统
FCB中存放的内容称为文件的属性,属性可以包括:
(1) 文件类型。可以从不同的角度来规定文件的类型,如 源文件、目标文件及可执行文件等。
(2) 文件长度。文件长度指文件的当前长度,长度的单位 可以是字节、字或块,也可能是最大允许的长度。
(3) 文件的物理位置。该项属性通常是用于指示文件在哪 一个设备上及在该设备的哪个位置的指针。
文件系统
硬 链 接
ln file4 file5
文件系统
符号链接
• ln –s /user/f1 /zll/f2 • f2文件中的内容为/user/f1
文件系统
硬链接与软链接特点
• 硬链接的优点:实现简单、访问速度快 使用限制:
– 只允许文件链接 – 只允许在同一文件系统内进行 – 文件主删除限制 – 不合理的记帐规则
– 目录文件是存放文件属性信息的文件
• 目录也可以是磁盘上某个特定的区域(根 目录)
– 存放文件属性信息的数据结构(在磁盘上的)
• 目录树
– 属性分级存放
文件系统
• 目录分级好处
– 不同目录下可以同名 – 可以快速检索 – 利于保护和共享
文件系统
用户名 指向子目录指针 Wang Zhang Gao
– 一组操作
• 文件系统的功能
从用户角度看 —— 文件系统实现了“按名存取”的功能
从系统角度看 —— ➢ 构造文件结构 ➢ 提供文件共享功能 辅存空间管理
➢ 提供存取文件的方法 ➢ 文件保护 ➢ 提供一组文件操作命令
文件系统
5
图6-2 文件系统模型
文件系统
文件系统
• 文件系统 • 文件子系统
– 一个文件系统可以管理几个文件子系统 – 磁盘分区,每个分区上安装一个文件子系统 – 文件子系统在格式化的时候建立
文件系统
索引文件的的代表
Ext3文件系统
文件系统
不连续存放之索引分配
随机访问 文件的物理结构为索引结构
文件系统

主索引 360 740
1125
第二级索引 360 105 106 254
740 356 357


磁盘空间 0 1 2
105 106
254




1125 356 357
985 985
– 该文件系统可以管理的最大文件有多少字节? – 一个20MB的文件占用多少个数据盘块和索引
盘块(指存放索引表的块)?
文件系统
ext磁盘划分
至少4个部分,其中引导块永远是介质上的第一个纪录,超 级块永远是介质上的第二个纪录。其它部分的大小取决于 磁盘大小等参数,这些参数存在超级块中。
文件系统
EXT文件系统格式
7899

201
301
7801
图6-23 空闲盘块的成组链接法
文件系统
7999 7901
参看下图,现有某一进程的文件要释放三个物理 块,其块号为150#,152#,160#,试给出其释放 过程和释放后的卷资源表filsys的状况。其后,又 有一个文件要求分配4个空闲块,试给出其分配 过程和分配后的filsys状况:
FAT文件系统
文件系统
不连续存放之链接定位
文件的物理结构为链接文文件件系统
只能顺序访问
FAT模式数据结构总图
文件系统
DOS FAT表
文件系统
FAT模式下的读文件过程
Fd=Open()
读文件 (fd,500,100,m)
根据fd读f1的内存文件描述符得 到f1的起始扇区号(22#)
根据要读的起止位置,算出 逻辑扇区号(1,2)
(4) 文件的建立时间。这是指文件最后一次的修改时间等。 (5) 文件长度,指以字节为单位的文件长度。 (6) 文件连接计数,表明在本文件系统中所有指向该(文件 的)文件名的指针计数。 (7) 文件存取时间,指本文件最近被进程存取的时间、最 近被修改的时间及索引结点最近被修改的时间。
文件系统
目录
• FCB存放在目录里 • 目录可以是一个文件(目录文件)
• 软链接的优点:适用范围和灵活性大
– 允许目录链接 – 允许在不同文件系统间进行 – 文件主自由删除 – 合理的记帐规则 文件系统
例题
• 设文件索引节点中有7个地址项,其中4个地址项为直接地 址索引,2个地址项是一级间接地址索引,1个地址项是二 级间接地址索引,每个地址项大小为4字节,若磁盘索引 块和磁盘数据块大小均为256字节,则可表示的单个文件 的最大长度是( )
64 grants 496
92 books
51 jim
60 mbox
26 ast
81 minik
45 bal
17 src
图6-20 查找/usr/ast/mbox的步骤
文件系统
加快检索的办法
文件系统
目录分离前后的比较
假如一个FCB为64 B,盘块大小为1 KB,则每个盘块中只 能存放16个FCB;若一个文件目录中共有640个FCB,需 占用40个盘块,故平均查找一个文件需启动磁盘20次。
文件系统
2
5
……..
2
7
19
10
15
2
空闲链表法
文件系统
…….
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 11100011100 10 01 10 20001111110 00 01 11 31110001111 11 00 00 4
16
图6-22 位示图
文件系统
d ata d ata d ata
d ata d ata d ata
图6-14 混合索引方式
文件系统



d ata d ata
d ata d ata
• 某文件系统采用索引定位,使用“直接指 针+可变重数的多重索引”模式,索引结构 中可以存放8个直接地址,一、二重间接地 址各一个,盘块长度为4KB,盘块地址 32bit。
s-nfree:98
s-nfree:99
s-nfree:100
[0] 120
[0] 120
[0] 120
[1] 121 ……
[1] 121 ……
[1] 121 ……
[96] 145
[96] 145
[96] 145
[97] 210 ……
卷资源表filsys
[97] 210
[98] 150 ……
[97] 210 [98] 150 [99] 152 ……
文件系统
文件
• 文件
– 是指由创建者所定义的、具有文件名的一组相 关元素的集合,可分为有结构文件和无结构文 件两种
– 现在流行无结构文件(流式文件) – 描述文件的数据结构
• 文件描述符(文件控制块FCB)
文件系统
文 件 名
扩属 展 名性
备 用
时 间
日 期
第 一 块 号
盘 块 数
图6-15 MS-DOS的文件控制块
Wang用 户 目 录 Alpha Test
Alpha Test
Zhang用 户 目 录 Report Test
Report Test
Gao用 户 目 录 Beta Device Misx
图6-18 两级目录结构
文件系统
Beta
Device Misx
1A B C
2A B D
67 5A C
3F E D
4G A 89
10 11
a
12 J N K 13 J M K
15 16
b 17
18 19
14 A H F 20 21
图6-19 多级目录结构
文件系统
文件系统
• 什么是文件系统 文件系统是操作系统中负责管理和存取文件信息的软件机构。
– 管理文件所需的数据结构 (如目录表、文件控制块、存储分配表) – 管理程序
超级块:根目录的位置、i节点的位置、空白区链头等 信息
文件系统

目录
• 如何加快文件检索
– 树型目录 – 当前目录
• 如何实现不同的文件路劲名访问同一个文 件?
• 目录中的FCB分开存放
文件系统
• 目录检索
– 线性检索 – Hash方法
• 地址=hash(文件名)
文件系统
根目录
结 点 6是 /usr的 目 录
文件系统
随机访问
不连续存放之链接定位
文件的物理结构为链接文文件件系统
只能顺序访问
不连续存放之索引分配
随机访问 文件的物理结构为索引结构
文件系统
• 为了快速访问,又易于更新,当数据为以 下形式时,你选用何种文件组织方式。
• (1) 不经常更新,经常随机访问; • (2) 经常更新,经常按一定顺序访问; • (3) 经常更新,经常随机访问;
如何使用磁盘存取数据
文件系统
写盘的过程
文件路径名 工作区
1、哪几个 磁盘块分 给它?
2、在目 录里面登 记
写磁盘的某柱 面、某磁道、 某扇区
缓冲区
文件系统
读盘的过程
文件路径名
磁盘块
访问磁盘的某 柱面、某磁道、 某扇区
工作区
缓冲区
文件系统
几个概念
• 文件路径名有啥含义?
– d:/program
• 文件 • 目录 • 文件系统
文件系统
• 假设一个文件在磁盘占3个磁盘块,讨论3 种文件结构读文件最后一块的访问磁盘的 次数
文件系统
文件的结构
•逻辑结构 •记录式
R0 R1 R2 R3 R4 R5
•流式
•物理组织
•连续(顺序)文件
•随机文件(索引文件)
•串联(链接)文件
•文件存取方法
•顺序存取
•直接(随机)存取
文件系统
链接文件的代表
A:33kb B:519kb C:1057kb D:16513kb • 31、设置当前工作目录的主要目的是( ) • A:节省外存空间 • B:节省内容空间 • C:加快文件的检索速度 • D:加快文件的读写速度
文件系统
文件存储空间的管理
• 空闲表法 • 空闲链表法
– 空闲盘块链 – 空闲盘区链
• 位示图法 • 成组链接法
• 每个文件子系统管理的方式不一样
– FAT32 – NTFS – ext3
文件系统
• 文件操作
– Open – Read – Write – Close
• 目录操作
用户接口
文件系统
外存分配方式
• 文件在磁盘上存放的方式
– 必须连续存放 – 不必连续存放
文件系统
连续分配策略
文件的物理结构为连续文件
1
·
1 ··
4 bin
7 dev
132
14 lib
9
etc
6
u sr
8 tmp
在 结 点 6中 查 找 usr字 段
132号 盘 块 是 结 点 26是
496号 盘 块 是
/usr的 目 录 /usr/ast的 目 录 /usr/ast的 目 录
6
·
26 ·
1 ··
6 ··
19 dick 30 erik
文件系统
图6-13 两级索引分配

mode owners (2) time stamps (3)
size block count i.addr (0) i.addr (1) direct blocks
single indirect double indirect triple indirect
… …
• 某操作系统的磁盘文件空间共有500块, 试画出相应的位示图,并给出申请/归还一 块的工作流程。
文件系统
磁盘的分配与回收 ——位示图
• 顺序扫描位示图,从 中找出一个或一组其 值为“0”的二进制位 (“0”表示空闲时)。
• 将所找到的一个或一 组二进制位转换成与 之相应的盘块号。
• 修改位示图
UNIX系统中一个目录仅占16个字节,其中14个字节是文 件名,2个字节为i结点指针。在1 KB的盘块中可做64个目 录项,这样,为找到一个文件,可使平均启动磁盘次数减 少到原来的1/4,大大节省了系统开销。
文件系统
如何实现不同文件路径名访问同一个文件? • 链接
– 硬链接 – 软连接(快捷方式、符号链接)
• 将回收盘块的盘块号 转换成位示图中的行 号和列号
• 修改位示图。令 map[i,j] =0
文件系统
空闲盘 块号栈
S.free 100 0 300 1 299
98 202 99 201
… … … … …
100 400 399
301 300
299
100
99 0 7999

7901
400
7900

399
相关文档
最新文档