当前位置:网站首页>文件管理:目录管理
文件管理:目录管理
2022-07-31 08:25:00 【Uncertainty!!】
文件管理:目录管理
1.文件管理:目录管理
1.1 文件控制块(实现目录的数据结构)
目录文件中的一条记录就是一个文件控制块(FCB)
FCB实现了文件名和文件之间的映射,实现了“按名存取”
一个文件对应一个FCB
一个FCB就是一个目录项
多个FCB组成文件目录
下图为某个磁盘的目录文件
1.2 目录结构
1.2.1 单级目录结构
下图来自程序员cxuan
下图来自王道考研操作系统
单级目录不允许出现重名,由此引出两级目录
1.2.2 两级目录结构
下图来自王道考研操作系统
两级目录无法实现文件分类,比如某个目录下既有照片又有文档,由于只有两级目录但无法再次建立目录,所以无法实现二级目录下文件的分类,由此引出多级目录结构
1.2.3 多级目录结构(树形目录结构)
下图来自程序员cxuan
下图来自王道考研操作系统
绝对路径:从根目录出发的路径
若要访问某个目录下的某个文件,系统从外存读入根目录表,找到下一级目录的存放位置后,从外存读入此级目录表,直到某文件的所在目录
相对路径:从当前目录出发的路径
若要访问某个目录下的某个文件,系统从外存读入当前目录表,找到下一级目录的存放位置后,从外存读入第二级目录表直到某文件的所在目录。这样就节省了读入根目录表和当前目录表直接的很多表,减少了磁盘IO的次数
由于树形目录结构不便于实现不同目录下的文件共享,由此引出无环图目录结构
1.2.4 无环图目录结构
下图来自王道考研操作系统
由于文件被不同目录所共享,故在删除这个共享文件时,不能简单的将其删除。需要引入一个共享计数器,只有当此共享计数器的值为0时,才可以删除该共享文件
1.3 索引结点(对文件控制块的优化)
在查找各级目录的过程中,只需要用到“文件名”,只有文件名匹配完后,才需要读出文件的其他信息。故前期可以只从外存读入文件名,其他信息不用读出,以此来减少读出的数据量从而提高效率



边栏推荐
猜你喜欢
Hematemesis summarizes thirteen experiences to help you create more suitable MySQL indexes

PowerCLi 通过自建PXE Server一键esxi7下批量部署常规New-VM

【MySQL功法】第2话 · 数据库与数据表的基本操作

免安装版的Mysql安装与配置——详细教程

Vue项目通过node连接MySQL数据库并实现增删改查操作

C语言三子棋(井字棋)小游戏

科目三:前方路口直行

高并发高可用高性能的解决方案

How to restore data using mysql binlog

MySQL 5.7详细下载安装配置教程
随机推荐
刷题《剑指Offer》day05
C# 正则表达式汇总
35-Jenkins-共享库应用
sqlmap使用教程大全命令大全(图文)
jupyter notebook初使用
如何使用mysql binlog 恢复数据
循环结构--for循环
【问题记录】TypeError: eval() arg 1 must be a string, bytes or code object
如何在一台机器上(windows)安装两个MYSQL数据库
数组every和some方法的区别?
高并发-高可用-高性能
SSM框架讲解(史上最详细的文章)
【云原生&微服务五】Ribbon负载均衡策略之随机ThreadLocalRandom
Cloud server deployment web project
XSS详解
【Unity】编辑器扩展-02-拓展Hierarchy视图
【pytorch记录】pytorch的分布式 torch.distributed.launch 命令在做什么呢
Modular specifications
云服务器部署 Web 项目
重装系统后,hosts文件配置后不生效