当前位置:文档之家› 操作系统第6章概论

操作系统第6章概论


I/O控制层(设备驱动程序) ——启动I/O操作和对 设备发来的中断信号处理;
基本文件系统(物理I/O层) ——处理内存与磁盘 系统之间数据块的交换;
基本I/O管理程序(文件组织模块) ——完成与I/O 有关的大量事物:选择文件所在的设备、地址映 射、空闲盘块的管理、I/O缓冲的指定;
逻辑文件系统——处理文件和记录的相关操作;
另一类是有关目录的,如创建一个目录,删除一 个目录,改变当前目录和工作目录等;
用于实现文件共享的系统调用和用于对文件系统 进行操作的系统调用等。
文件的结构
(1)文件的逻辑结构 用户可以直接处理的数据及其结构,它独立于文 件的物理特性,又称为文件组织;
(2) 文件的物理结构 又称为文件的存储结构,是指文件在外存上的存 储组织形式;
其长度以字节为单位。对流式文件的访问,采用 读写指针来指出下一个要访问的字符。
在UNIX系统中,所有的文件都被看作是流式文 件,系统不对文件进行格式处理;
顺序文件逻辑记录的排序
第一种是串结构,各记录之间的顺序与关键字无 关,按存入时间的先后排列;
第二种情况是顺序结构,指文件中的所有记录按 关键字(词)排列。可以按关键词的长短从小到大排 序,也可以从大到小排序;或按其英文字母顺序 排序;
文件系统的接口
(1) 命令接口 (2) 程序接口
文件操作
创建文件——系统要为新文件分配必要的外存空 间,并在文件系统的目录中为之建一个目录项;
删除文件——系统应先从目录中找到要删除文件 的目录项,使之成为空项,然后回收该文件所占 用的存储空间;
读文件——须在系统调用中给出文件名和文件被 读入的内存目标地址;
文件“关闭”操作
如 果 用 户 不 再 需 要 对 该 文 件 实 施 相 应 的 操 作 时 , 可利用“关闭”(close)系统调用来关闭此文件, OS把该文件从打开文件表中的表目上删除掉。
其它文件操作
OS提供了有关文件操作的系统调用:
一类是有关对文件属性进行操作的,即允许用户 直接设置和获得文件的属性;
文件逻辑结构的类型
有结构文件 由一个以上的记录构成的文件; 无结构文件 由字符流构成的文件;
有结构文件
根据记录长度 (1)定长记录 (2)变长记录 根据用户和系统管理上的需要 (1)顺序文件 (2)索引文件 (3)索引顺序文件
无结构文件
无结构文件又称流式文件,构成文件的基本单位 是字符,文件是有逻辑意义的、无结构的一串字 符的集合。
在交互应用场合,用户要求查找或修改单个记 录,便要逐个地查找诸记录,性能就可能很差;
增加或删除一个记录,比较困难;
索引文件
为变长记录文件建立一张索引表,对主文件中 的每个记录,在索引表中设一个相应的表项,用 于记录该记录的长度L以及指向该记录的指针; 根据用户提供的关键字,利用折半查找法去检 索索引表,从中找到相应的表项; 利用该表项中给出的指针值,去访问所需的记 录;
找到该记录所在记录组中第一个记录的表项,从中得 到该记录组第一个记录在主文件中的位置;
再利用顺序查找法去查找主文件,从中找到所要求的 记录;
i0
R0 R1 R2 R3
Rptr Ri

0 L
L0
L L
R0
L
2L
L
3L
L1 R1
4L

Wptr
L
Li
L (i+1)L
Ri
0 L0
L0+1 L1
L0+L1+2iLeabharlann 1∑(L k+1)
K=0
Li i
∑(L
K=0
k
+1)


(a) 定长记录文件
(b)变长记录文件
定长和变长记录文件
最佳应用场合是在对诸记录进行批量存取时, 即每次要读或写一大批记录;
对象及其属性
文件管理系统管理的对象有:
文件——文件管理的直接对象;
目录——方便用户对文件检索和存取。包含文件 名和文件属性的说明;
磁盘存储空间——对文件和目录占用的外存空间 进行管理,可以提高外存利用率,加快文件的 检索速度。
这是文件管理系统的核心部分。主要功能包括: 对文件存储空间的管理; 对文件目录的管理; 将文件的逻辑地址转换为物理地址的机制; 对文件读和写的管理; 对文件的共享与保护等功能;
对顺序文件的读/写操作
对于定长记录文件,如果要查找第i个记录,第i 个记录相对于第一个记录首址的地址为:
Ai= i×L
对于变长度记录文件,要查找第i个记录,要顺 序地查找每个记录,获得相应记录的长度Li,然 后按下式计算出第i个记录的首址。假定在每个 记录前用一字节指明该记录的长度,则:
i 1
Ai Li i
写文件——须在系统调用中给出文件名和文件 在内存中的源地址;
截断文件——文件内容需要全部更新时,将原 文件的长度设置为0;
设置文件的读/写位置——用于设置文件读写指 针的位置,以便每次读写文件时,不是从其开始 端开始,而是从所设置的位置处开始;
文件的“打开”操作
系统将指名文件的属性从外存拷贝到内存打开文件 表的一个表目中,并将该表目的编号返回给用户。 用户再要求对该文件进行操作时,系统直接利用索 引号到打开文件表中去查找,从而避免了对文件的 再次检索。
索引号 长度m 指针ptr
0
m0
1
m1

i
mi

索引表


R0 R1
Ri
逻辑文件
索引顺序文件
是顺序文件和索引文件相结合的产物; 将顺序文件中的所有记录分为若干个组,为顺序 文件建立一张索引表; 在索引表中为每组中的第一个记录建立一个索引 项,含有该记录的键值和指向该记录的指针;
检索时,先利用用户提供的关键字,按某种查找算法去 检索索引表;
读写文件 普通文件
按组织形式和处理方式分类 目录文件 特殊文件
文件系统
文件系统是指操作系统中各类文件、管理文件的
软件,以及管理文件所涉及到的数据结构等信息
的集合。
用户(程序)
文件系统接口
逻辑文件系统
对对象操纵 和管理的软 基本I/O管理程序(文件组织模块)
件集合
基本文件系统(物理I/O层)
I/O控制层(设备驱动程序)
第六章
文件管理
文件
文件是指由创建者所定义的、具有文件名的一组 相关元素的集合。可分为有结构文件和无结构文 件两种。
文件
记录1
记录2

记录n
数据项1 数据项2 …
数据项n
文件类型
系统文件 按用途分类 用户文件
库文件 源文件
按数据形式分类 目标文件 可执行文件
只执行文件 按存取控制属性分类 只读文件
相关主题