第四章 文件系统
作者:互联网
所有计算机程序都需要存储和检索信息。
直接在进程的虚拟地址空间保存信息会遇到几个问题
1. 虚拟地址空间容量小 |
---|
2. 虚拟空间信息不能长期保存 |
3. 不能多个进程同时访问同一信息 |
因此长期存储信息需要满足三个基本要求:
- 能够存储大量信息
- 信息能够长期(几天甚至几年)保存
- 能使多个进程能够共享信息
磁盘天然适合用作长期存储大量数据(近年来有被固态硬盘代替的趋势)。 此处先把磁盘当做一个大数组,有如下两个基本操作:
- 读块K
- 写块K
文件系统是操作系统中负责文件的构造,访问, 保护,实现的内容。本章前两节介绍文件的逻辑结构, 后面介绍文件的物理结构。
4.1 文件
4.1.1 文件命名
任何一种抽象机制最重要的特性就是对管理对象的命名方式。
文件的具体命名规则在不同的操作系统中的实现是不同的。
- Unix操作系统区分大小写,而MS_DOS操作系统不区分.
- Unix操作系统扩展名宽松,但MS-DOS关注扩展名
4.1.2 文件结构
文件系统可分为三种构造方式:字节序列,记录序列,树。
- 字节序列。(Unix和Windows)(灵活) 操作系统不关心也不知道文件内容是什么, 所看到的就是字节。其文件内容的含义只在用户程序中解释。
- 记录序列。(早期大型计算机)文件由一组有结构的相同长度的记录组成。
- 树。(现代大型数据计算机) 文件由一组不同长度的记录组成的树组成。记录的固定部分有一个键字段。
4.1.3 文件类型
UNIX支持包括普通文件(包含用户信息), 目录(管理文件系统结构), 字符特殊文件(串行I/O类设备), 块特殊文件(磁盘)在内的多种文件类型。
普通文件又被分为
- ASCII文件。 可以显示和打印,用文本编辑器编辑
- 二进制文件。 难以理解,只有特殊的程序了解其内部结构。例如可执行二进制文件。
4.1.4 文件访问
- 顺序访问(早期只有这一种)
- 随机访问
4.1.5 文件属性
文件除文件名还有文件数据以外还有文件属性。
与文件保护有关的:
- 保护。 谁可以访问文件,以什么方式访问文件
- 口令。 访问文件需要的口令
- 创建者。 创建文件的用户ID
- 所有者。 当前所有者
控制或启用某些特殊属性: - 只读标志
- 隐藏标志
- 系统标志
- 存档标志
等等
4.1.6 文件操作
- create:创建不包含任何数据的文件,并设置文件属性。
- delete: 释放文件磁盘空间
- open: 把文件属性和磁盘地址表装入内存以方便后续操作
- close: 删除内存中的文件属性和磁盘地址表
- read:(指明数据大小和读入内存地址)
- write: 从文件当前位置写入数据
- append:在文件尾写入数据
- seek: 设置文件位置指针
- rename:重命名文件
4.2 目录
文件系统提供目录记录文件的位置。
目录按结构可分为:
- 一级目录结构:(早期计算机,嵌入式)(寻找文件困难)
- 层次目录结构
目录操作
- create: 创建目录结构
- delete: 删除目录,只有空目录可被删除
- opendir : 相当于打开文件
- closedir: 关闭目录释放用户表空间
- link: (硬链接)指定路径名和文件名,创建一个链接
- unlink: 考虑硬链接的删除(硬链接更有效, 软连接更灵活)
标签:文件,4.1,操作系统,文件属性,文件系统,访问,目录,第四章 来源: https://www.cnblogs.com/tianle1998/p/15452013.html