第四章 文件管理 三、文件目录

目录

一、文件控制块

1、定义:

2、要进行哪些操作

(1)搜索:

(2)创建文件:

(3)删除文件:

(4)显示目录:

(5)修改目录:

二、目录结构

1、单级目录结构

2、两级目录结构

3、多级目录结构

4、无环图目录结构

三、索引结点

四、总结


一、文件控制块

1、定义:

第四章 文件管理 三、文件目录_第1张图片

2、要进行哪些操作

(1)搜索:

当用户要使用一个文件时,系统要根据文件名搜索目录,找到该文件对应的目录项

(2)创建文件:

创建一个新文件时,需要在其所属的目录中增加一个目录项

(3)删除文件:

当删除一个文件时,需要在目录中删除相应的目录项

(4)显示目录:

用户可以请求显示目录的内容,如显示该目录中的所有文件及相应属性

(5)修改目录:

某些文件属性保存在目录中,因此这些属性变化时需要修改相应的目录项(如:文件重命名)

二、目录结构

1、单级目录结构

第四章 文件管理 三、文件目录_第2张图片

2、两级目录结构

第四章 文件管理 三、文件目录_第3张图片

3、多级目录结构

第四章 文件管理 三、文件目录_第4张图片

  1. 用户(或用户进程)要访问某个文件时要用文件路径名标识文件,文件路径名是个字符串
  2. 各级目录之间用“/”隔开。从根目录出发的路径称为绝对路径
  3. 例如:自拍.jpg的绝对路径是“/照片/2015-08/自拍.jpg”
  4. 系统根据绝对路径一层一层地找到下一级目录。刚开始从外存读入根目录的目录表;找到“照片”目录的存放位置后,从外存读入对应的目录表;再找到“2015-08”目录的存放位置,再从外存读入对应目录表;最后才找到文件“自拍.jpg”的存放位置。整个过程需要3次读磁盘I/O操作。
  5. 很多时候,用户会连续访问同一目录内的多个文件(比如:接连查看“2015-08"目录内的多个照片文件),显然,每次都从根目录开始查找,是很低效的。因此可以设置一个当前目录
  6. 例如,此时已经打开了“照片”的目录文件,也就是说,这张目录表已调入内存,那么可以把它设置为“当前目录”。
  7. 当用户想要访问某个文件时,可以使用从当前目录出发的“相对路径”
  8. 在Linux中,“.”表示当前目录,因此如果“照片”是当前目录,则"自拍.jpg”的相对路径为:“./2015-08/自拍.jpg”。
  9. 从当前路径出发,只需要查询内存中的“照片”目录表,即可知道"2015-08"目录表的存放位置,从外存调入该目录,即可知道“自拍.jpg”存放的位置了。
  10. 可见,引入“当前目录”和“相对路径”后,磁盘I/O的次数减少了。这就提升了访问文件的效率

注意:

树形目录结构可以很方便地对文件进行分类,层次结构清晰,也能够更有效地进行文件的管理和保护。但是,树形结构不便于实现文件的共享。为此,提出了“无环图目录结构”。

4、无环图目录结构

第四章 文件管理 三、文件目录_第5张图片

三、索引结点

第四章 文件管理 三、文件目录_第6张图片

四、总结

第四章 文件管理 三、文件目录_第7张图片

你可能感兴趣的:(操作系统学习,linux,运维,服务器)