操作系统中的目录详解

首先要搞清楚一些基本的问题

1.文件就是一些数据的集合,计算机的信息都是通过

文件来保存

2.windows下的文件夹与linux下的目录是同一个东西

3.目录是一种文件,一种特殊的文件,有时候也被称为目录文件

4.文件目录也叫文件控制块,一般存储文件名,文件的逻辑结构,物理结构

存储控制信息类等。

5.目录文件由一个或多个文件目录组成

6.文件路径:由目录与分隔符以及文件名组成

7.计算机里只有绝对路径和相对路径两种形式

绝对路径是以根目录为基准的

相对路径是以当前目录为基准的

简单来说,一个目录就是一张索引表,这张索引表的每一行对应一个文件目录:

记载文件名到物理地址的映射以及一些其他信息

正题

在没有接触操作系统时候,我们通常对与文件夹的理解是这样的:

文件夹就像一个袋子将里面的文件或者文件夹装起来,我们进入到

文件夹里会看到很多文件,然后就可以进行一系列操作。这是因为

操作系统高度的封装性,让我们产生这一错觉。

实际上,我们进入文件夹看到的只是文件夹这张索引表的一些内容,

当我们想查看该文件夹下的某一文件时,操作系统是通过这张表找到

文件的物理位置,然后在开始读取数据。

操作系统中的目录详解

从上图可以看出来,在linux中所有的文件夹都显示为4096Byte大小,这与我们想象的不一样,因为这些文件夹里包含着很多其他文件,不应该

这么小啊,这是因为在当前目录这张索引表上,只会记录一层的映射关系,当前目录下的文件夹里有什么系统并不关心,而在linux下目录文件就

是4096Byte大小,如果想要知道文件夹下所有文件的大小之和,需要按着目录进行搜索。

基本的文件操作:

创建文件:需要给新文件分配必要的外存空间,并且在文件目录中为其建立一个目录项

简单来说就是在说索引表上,添加一行信息

删除文件:从目录中找到要删除的目录项,然后再回收该文件占用的空间

读文件:通过用户名去目录中查找,从而得到被读文件在外存中的位置,再进行写操作

写文件:同上,再进行写操作

相关推荐