零、写在前面
长期存储的三个基本要求:
- 能够存储大量信息
- 实用信息的进程终止时,信息仍旧存在(持久化)
- 必须能使多个进程并发访问有关信息
文件是进程创建的信息逻辑单元。将每个文件堪称一个地址空间,可以更好地理解文件地本质。
操作系统中处理文件地部分称为文件系统
一、 文件
如何使用文件?文件有哪些特性?
1、 文件命名
文件是一种抽象机制,它提供了一种在磁盘上保存信息而且方便以后读取地方法。
有些文件系统不区分大小写字母,有些区分(如:UNIX区分,MS-DOS不区分)
关于文件拓展名:
有的操作系统地文件系统只是一个约定,操作系统并不怎么约束,也不管(如:UNIX)
有的操作系统相反,关注且赋予了含义(如:Windows)
2、 文件结构
主流有三种:
- 字节序列:操作系统所见就是字节,文件内容含义由用户程序解释(如:Linux, OS X,Windows)
- 记录序列:文件具有固定长度记录的序列,每个记录都有其内部结构
- 树:文件在此结构中由一棵记录树构成,记录的固定位置有一个 “ 键 ”(主要用于处理商业数据的大型计算机)
3、文件类型
很多操作系统支持多种文件类型。
常见的分为 普通文件 和 目录(UNIX、Win)
UNIX还有字符特殊文件和块特殊文件。
-
普通文件:包含有用户信息的文件
-
目录:管理文件系统结构的系统文件
-
字符特殊文件:和I/O有关,用于串行I/O类设备(终端、打印机、网络等)
-
块特殊文件:用于磁盘类设备
ASCII文件相比较二进制文件最大的优势是可以现实和打印,甚至用任何文本编辑器进行编辑。
4、文件访问
- 早期操作系统只支持 顺序访问。
- 当用磁盘来存储文件时,支持不按顺序的肚脐文件中的字节或记录,即 随机访问文件
5、文件属性
文件创建的时间、大小等属性,也称为元数据
6、文件操作
见书,此处不罗列 P152
7、使用文件系统调用的一个示例程序
看书 P152
二、目录
本节讨论目录、目录的组成、目录的特性和可以对目录进行的操作。
1、一级目录系统
根目录:有些操作系统只有一个目录,包含了所有的文件,此目录称为根目录 单层目录系统设计简单,能快速定位文件,常用于简单的嵌入式装置中(电话、相机等)
2、层次目录系统
单层目录文件都放在一个目录中,查找麻烦,诞生了层次目录
3、路径名
指明文件名的方法:
- 绝对路径名
- 相对路径名