操作系统原理第八章 文件系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第六章文件系统

6.1 知识点汇总

1、文件、文件系统的概念

⑴文件:是被命名的数据的集合体。

⑵文件系统:就是操作系统中负责操纵和管理文件的一整套设施,它实现文件的共享和保护,方便用户“按名存取”。

2、外存管理和文件系统概述

(1)、外存是负责长期保存数据的所有存储部件的总称,如磁盘,磁带,光盘等。

操作系统的外存管理功能是操作系统中负责管理外存使用的那些功能的总称,负责管理和顽尘国外存使用中所有硬件相关和应用无关的工作,为用户使用外存提供方便服务,高校和安全管理。

(2)、外存硬件接口特性

外存的作用:

✧用来永久或长期存放数据。

✧作为盘交换区——作为内存后备存放当前运行程序和数据。

外存的种类:

✧联机外存:硬盘

✧脱机外存:光盘,软盘,磁带,U盘

外存的主要涉及标准和性能指标:密度,速度,容量,体积,成本,便携性,可重写性和可重用性等。

存储容量分为非格式化容量和格式化容量。一般格式化容量是非格式化容量的80%

格式化分为:高级格式化(仅删除数据),低级格式化。

✧高级格式化,清除硬盘上的数据、生成引导区信息、初始化FAT表、标注逻辑坏

道等

✧低级格式化,就是将空白的磁盘划分出柱面和磁道,再将磁道划分为若干个扇区,

每个扇区又划分出标识部分ID、间隔区GAP和数据区DATA等。硬盘的低级格式

化是高级格式化之前的一件工作,目前所有硬盘厂商在产品出厂前,已经对硬盘进

行了低格化的处理,因此我们新购买的硬盘在装系统时只需要进行高级格化的过程,来初始化FAT表,进行分区操作。硬盘的低级格式化过程是一种损耗性操作,对

硬盘的使用寿命会产生一定的负面作用。

外存设备都由驱动控制部分和存储介质两部分组成。

✧存储介质与驱动器都固定:硬盘

✧驱动器固定但存储介质不固定:光盘,软盘

✧驱动器和存储介质都不固定:移动硬盘,U盘等

大多数系统将设备驱动控制部件中的大部分电子控制部分分离出来构成设备控制器,而设备驱动器只剩下机械驱动部分和简单的电子控制电路。

设备控制器决定设备与计算机间的逻辑联系,一个设备控制其可以同时控制多个设备驱动器。

硬盘的结构

硬盘内由设备驱动器及存储介质组成。其存储介质是磁盘。

磁盘表面被划分为若干个同心圆,每个同心圆成为一个磁道。每一磁道划分为几个扇区(通常每个扇区存放512B)。每个扇区间都留出一定的空间用来记录扇区标记。用扇区作为最小寻址单位和存取单位。

寻址时磁盘转动,磁头移动到目标磁道,磁头通过读取并判断扇区标记,来确定和等待指定扇区,当目标扇区从磁头下顺序经过,读取相应扇区内的内容。

通过增加磁盘数,及每个磁盘都正反两面都涂以磁性材料,来增加容量。

所有盘面中处于同一磁道号上的所有磁道组成一个柱面。读写同一个柱面的数据,不需要移动磁头,故通常将同一文件内容分配在同一柱面上,以节省访盘时间。

对主机提供的接口是:“读/写,磁盘地址(设备号,柱面号,磁面号,扇区号),内存地址”。

当接收到一个访盘请求时,由以下三个步骤:

✧寻道,磁头移动到指定磁道(寻道时间)

✧等待扇区从磁头下经过(延迟时间)

✧数据在磁盘与内存间传送(传送时间)

访盘时间=寻道时间+延迟时间+大胆地

硬盘分为固定磁头和移动磁头两种。固定磁头同一盘面上每个磁道设置一个磁头,所以节省了寻道时间,但成本昂贵。移动磁头,每个盘面仅一个磁头,成本低。

(3)用户对外存的使用要求

✧在存取外存上的数据是,不希望解除和涉及外存物理空间地址和存取单位,外存设备接

口地址,等物理硬件细节。而是采用符合用户习惯的逻辑地址于逻辑操作。

✧外存上存放的信息安全可靠,防止来自硬件的故障和来自他人的侵权。

✧可以方便地共享,动态伸缩,拆卸携带,了解存取请款共和使用情况等。

✧以最小代价完成上述任务。

(4 )文件定义及文件系统的工作界面

文件系统提供了:文件子系统,目录,文件,文件内字节,这4个层次上的操作。

文件是操作系统提供的,是用户观点中期内容具有连续顺序关系的最大外存逻辑数据空间。

3、文件系统用户界面

(1)文件级界面:文件属性和文件操作

每个文件都拥有文件名。操作系统为每个文件名与该文件在外存中存放位置间建立对应关系。在多用户环境下,操作系统还需为每个文件建立和维护文件主和访问权限等信息。

文件属性信息包括文件名,文件主,访问权限以及文件类型,文件长度等。这些信息不属于文件本身的内容,但是用户需要由操作系统来保存这些属性。并提供查询这些属性的操作。

对文件本身内容的读写。操作系统在操作级和编程级都提供了相应的操作。

编程级:提供读写文件的系统调用,内存映像文件方式的读写操作。

文件的打开:

int open( const char * pathname, int flags);

参数pathname 指向欲打开的文件路径字符串。

参数flags 所使用的用宏定义的值:

O_RDONL Y 以只读方式打开文件

O_WRONL Y 以只写方式打开文件

O_RDWR 以可读写方式打开文件

上述三种是互斥的,也就是不可同时使用,下列的可以利用OR(|)运算符组合

O_CREAT 若欲打开的文件不存在则自动建立该文件。

O_EXCL 如果O_CREAT 也被设置,此指令会去检查文件是否存在。文件若不存在则建立该文件,否则将导致打开文件错误。此外,若O_CREAT与O_EXCL同时设置,并且欲打开的文件为符号连接,则会打开文件失败。

O_NOCTTY 如果欲打开的文件为终端机设备时,则不会将该终端机当成进程控制终端机。O_TRUNC 若文件存在并且以可写的方式打开时,令文件长度清为0,而原来存于该文件的资料也会消失。

O_APPEND 当读写文件时会从文件尾开始移动,也就是所写入的数据会以附加的方式加入到文件后面。

相关文档
最新文档