目录
一、相关概念
文件系统是一种用于持久性存储的系统抽象。硬盘属于持久性存储介质的一种。管理文件系统例如硬盘,需要管理文件块,哪一块属于哪一个文件;需要管理空闲空间和分配策略;为文件提供相应的保护,文件数据的存储需要可靠性持久性。文件的属性包含名称、文件类型(后缀)、位置、大小、读写权,创建者、创建时间,最近修改时间等 ; 文件头 保存了文件的控制信息。
文件描述符是操作系统为每个进程维护维护的一个打开文件表的索引。需要元数据来对文件进行有效的管理,元数据包括文件指针来记录最后一次读写位置,文件打开计数(文件是共享资源,允许多个进程打开同一个文件),文件磁盘位置(缓存数据的访问信息),访问权限等。在操作系统更上层的应用程序不需要关心文件在磁盘中的哪一个位置,只管对缓存区Buffer的读写就行。具体的逻辑内存和外存之间的映射关系由操作系统完成。内存的读写单位是页或者字节,而外存磁盘的读写是扇区。
当用户需要读取文件数据时,操作系统会获取用户需要访问的字节空间,进一步地操作系统会根据用户需要访问字节所在的扇区给取出来。
别名,及一个文件由多个名字。软连接生成出的文件,其内容是另一个文件的路径名(指针),通过访问这路径名可以间接的访问对应的文件,又称快捷方式。硬链接生成出的文件其文件项指向同一个文件的内容。对于硬链接,有种特殊的数据结构记录了文件被引用的计数。删除硬链接对应的文件,