操作系统(Operating System)知识点复习——第十二章 文件管理

news2024/11/18 1:40:54

目录

0.前言

1.Overview

2.文件的组织方式

①The Sequential File 顺序文件

②The Pile堆

③The  Indexed Sequential File 索引顺序文件

④The Indexed File 索引文件

⑤The Direct or Hashed File 直接文件或者散列文件

3.文件目录

Structure 1:简单目录结构 Simple Structure for a Directory:目录项列表

Structure 2:两级目录 Two-level Scheme for a Directory

Structure  3:层次/树状结构目录 Hierarchical, or Tree-Structured Directory

4.文件共享

5.辅助存储管理

5.1 文件分配

①连续分配 Contiguous allocation

②链式分配 Chained allocation

③索引分配 Indexed allocation

5.2 空闲空间管理

①Bit tables 位表

②Chained free portions 链式空闲区

③Indexing 空闲索引表

④Free block list 空闲列表


0.前言

本系列文章旨在记录操作系统的知识点,可用于期末复习,笔者理解尚浅,文中不正之处静待批正。加粗高亮部分为重点。

1.Overview

文件系统的特性:

  • 长期存在
  • 进程共享
  • 结构化存储

File Management Systems 文件管理系统:用户和程序使用文件的唯一方式

2.文件的组织方式

文件组织评价标准:

  • 短的存取时间
  • 易于修改
  • 存储经济性
  • 维护简单
  • 可靠性

文件基础知识:

  • 文件操作:Create/Delete/Open/Close/Read/Write
  • 术语:Field (域) < Record (记录) < File (文件) < Database (数据库)
  • 文件的存储结构是指文件在外存上的组织方式

5种不同的组织方式:

①The Sequential File 顺序文件

  • 域都是相同的(长度,顺序)
  • 第一个域为关键域(key filed)
  • 新记录被放在日志文件(log file)事务文件(transaction file)
  • Batch update (成批更新):合并log file与主文件
  • 顺序文件多用于磁带
  • 顺序存储器(磁带)只能顺序查找
  • 直接存取存储器(磁盘)可以顺序查找,也可以分块查找二分查找

②The Pile堆

  • 到达时间存放
  • 域的长度不一定相同
  • 缺点:搜索不方便,只能穷举搜索(exhaustive search)无结构

③The  Indexed Sequential File 索引顺序文件

  • Sequential file + index + overflow file
  • 新纪录加入溢出文件中(overflow file)
  • 索引提供了快速查询的能力,索引查找关键字小于或者等于目标关键字的最大记录
  • 只有一个关键域
  • 采用batch update
  • Multiple level indexes 多级索引对于相同域可提高效率
  • 缺点:基于单个域

④The Indexed File 索引文件

  • 对于不同域用多级索引
  • 索引本身是顺序的,但记录非顺序
  • 索引查找记录
  • 可能包含完全索引exhaustive index部分索引partial index

⑤The Direct or Hashed File 直接文件或者散列文件
  • 每个记录均有一个关键域
  • 哈希函数基于关键域
  • 优点:文件可随机存放,不用排序;插入删除方便存取速度快不用索引区,节省存储空间
  • 缺点:不能进行顺序存取,只能按关键字随机存取

3.文件目录

目录:

  • 一个目录本身是一个文件
  • 提供文件名和文件之间的映射

结构:Directory entry 目录表项

操作:Search搜索、Create file创建、Delete file删除、List directory目录列表、Update directory更新目录

Structure 1:简单目录结构 Simple Structure for a Directory:目录项列表
  • 顺序文件代表目录,该目录下的文件名做该顺序文件的关键字
  • 文件不能重名

Structure 2:两级目录 Two-level Scheme for a Directory
  • master directory 主目录+One directory for each user 用户目录(简单列表)
  • 不能建子目录可重名

Structure  3:层次/树状结构目录 Hierarchical, or Tree-Structured Directory

  • 主目录下有用户目录
  • 每个文件均有路径名pathname,每个用户目录有子目录及可作为主目录的文件
  • 不同路径下文件可重名

文件系统挂载:启动时挂入根节点

4.文件共享

两个问题:存取权限同时存取控制

Access Rights:

  • None 无
  • Knowledge 知道
  • Execution 执行
  • Reading 读
  • Appending 追加
  • Updating 更新
  • Changing protection 更改保护
  • Deletion 删除
  • Owners 所有者(最大)

Simultaneous Access:更新时要上锁文件,更新中可锁定个人记录,需要考虑互斥与死锁

5.辅助存储管理

5.1 文件分配

portions 文件分区:

  • 一个分区对于一组连续的块,大小为block的倍数
  • 一个文件对应一个或多个分区
  • 文件分配表(FAT)来追踪文件分区

  • 预分配 Preallocation:需知道创建文件时的文件最大大小
  • 动态分配 Dynamic allocationallocation:当需要时再分配

分配策略:

①连续分配 Contiguous allocation
  • 文件创建时分配一组连续的块(预分配适用)
  • 文件分配表中只有一个项:起始块及文件长度
  • 优点:支持顺序访问直接访问(随机访问)
  • 缺点:会产生外部碎片(利用压缩),不便于扩展

②链式分配 Chained allocation
  • 基于单个块进行分配
  • 每个块都包含指向链中下一个块的指针
  • 文件分配表中只有一个项:起始块及文件长度
  • 优点:无外部碎片,适合顺序文件
  • 缺点:不支持随机访问,会破坏局部性查找效率低

③索引分配 Indexed allocation
  • 每个文件在文件分配表中有一个一级索引
  • 文件分配表指向该文件在磁盘上的索引块
  • 分配给文件的每个分区都在索引中都有一个表项
  • 优点:可顺序访问,也可直接访问

变长索引分配:

多层索引

混合索引

5.2 空闲空间管理
①Bit tables 位表

使用一个包含磁盘上每个块一个比特的向量(vetcor)

②Chained free portions 链式空闲区

通过在每个空闲部分中使用指针和长度值(pointer and length),可将空闲部分串联起来

③Indexing 空闲索引表

使用index table

④Free block list 空闲列表

Maintain the list of the numbers of all free blocks

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1629962.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在ubuntu上搭建nexus私有仓库(指定版本以及jdk!)

前言 本来以为搭建一个nexus随随便便就好了&#xff0c;但是遇到了最新版本根本没办法在jdk17下面正常运行—起码我调了一下不知道怎么运行&#xff0c;我才知道。。。不升级版本其实是很有道理的。 这一篇是最新版本的尝试&#xff1a; 在ubuntu上搭建nexus私有仓库[失败草稿…

红米K40手机刷机详解

了解什么是卡刷、什么是线刷 卡刷&#xff0c;就是把系统包放到你手机的SD卡&#xff0c;这一步&#xff0c;不用手机解BL锁&#xff0c;不用root&#xff0c;直接小米助手下载就可以刷。线刷就是用数据线连接电脑&#xff0c;通过XiaoMiFlash直接刷到手机&#xff0c;这一步权…

精酿啤酒:酿造工艺中的数据监测与智能化决策

在啤酒酿造工艺中&#xff0c;数据监测与智能化决策是提高生产效率和产品质量的关键因素。Fendi Club啤酒深知这一点&#xff0c;因此在其酿造过程中广泛应用数据监测技术和智能化决策系统&#xff0c;以实现精细化管理和持续改进。 Fendi Club啤酒通过数据监测技术对生产过程中…

对抗攻击新手实战

实战核心思想&#xff1a; 训练x(输入&#xff09;&#xff0c;让第一次训练好的&#xff0c;正确的y去和我们想要误导机器去识别的类别的那个y做一个损失函数【loss torch.mean(y[:, 248])】&#xff0c;不同的是&#xff0c;我们其实希望是一个梯度上升&#xff0c;给图片加…

redission原理笔记

加锁成功的线程&#xff0c;将UUID和线程id和key绑定&#xff0c; 加锁成功后&#xff0c;内部有一个看门狗机制&#xff0c;每隔十秒看下当前线程是否还持有锁&#xff0c;延长生存时间。 没有获取锁的就一直自旋等待&#xff0c;直到超时。 如果redis是主从同步的&#xff0…

呆马科技——智慧应急执法监管平台

在当今社会&#xff0c;安全生产的重要性日益凸显。对于各级政府和企事业单位&#xff0c;当务之急是如何高效地对突发事件进行执法管理。平台应运而生&#xff0c;旨在通过信息化、智能化技术&#xff0c;提升安全管理的效率与准确性。 一、平台特点 整合各类平台的信息资源&…

B+tree - B+树深度解析+C语言实现+opencv绘图助解

Btree - B树深度解析C语言实现opencv绘图助解 1. 概述2. Btree介绍3. Btree算法实现3.1 插入分裂 3.2 删除向右借位&#xff08;左旋&#xff09;向左借位&#xff08;右旋&#xff09;合并 3.3 查询和遍历3.3.1 查询3.3.2 遍历 3.4 优化优化1(匀key)优化2(升级key)优化3(拓展兄…

VC2022 + protobuf

google这是有私心啊&#xff0c;protobuf从某个版本开始&#xff0c;依赖了一个google自己推出的大型组件集&#xff0c;Abseil&#xff0c;有点类似于Boost了&#xff0c;业内用的人&#xff0c;从个人狭窄的圈子来说&#xff0c;应该是不多的&#xff0c;据说google的众贤用的…

远程连接docker,实现本地发布版本到服务器

最近在学jenkins的时候&#xff0c;发现涉及到了docker的远程发布调用。后续应该还要自己搭建一个docker的本地仓库。 简单描述一下具体是如何实现的&#xff1a; 1、将docker的服务器开启2375端口&#xff08;注意&#xff0c;这里的开启是将端口直接暴露出去&#xff0c;不用…

适用于芯片行业的开发及管理工具:版本控制、持续集成、代码分析及项目管理工具介绍

3月28日-29日&#xff0c;2024国际集成电路展览会暨研讨会&#xff08;IIC Shanghai&#xff09;在上海成功举行。此次盛会汇聚了集成电路产业的众多领军企业&#xff0c;共同探寻和把握集成电路产业的发展脉络。 龙智携芯片研发及管理解决方案亮相展会&#xff0c;展示如何通…

竞品分析:密雪冰城

​蜜雪冰城&#xff0c;是张红超于1997年在郑州成立的冰淇淋与茶饮的品牌。主要从事现制饮品、现制冰淇淋及其核心食材的研发、生产、销售以及品牌运营管理。 2022年营收超60亿元&#xff0c;海外门店接近3000家&#xff0c;全球门店总计突破25000家。 Part.1定位 当时不少奶…

Node.JS安装及配置教程(Windows)【安装】

文章目录 一、 Node.JS 下载1. 官网下载&#xff08;1&#xff09;国内地址&#xff08;2&#xff09;国外地址 2. 其它渠道 二、 Node.JS 安装三、 Node.JS验证四、 Node.JS 配置&#xff08;可选&#xff09;1. 配置全局模块安装路径方法一方法二2. 配置国内镜像 五、 yarn 安…

黑盒优化系列(一):自动化提示词优化【一、绪论】

大语言模型的提示词 随着ChatGPT等大语言模型的问世&#xff0c;我们获取知识的方式从单一的搜索引擎如Google转变为类似ChatGPT这种通过 Q & A 方式提供的方法。 我们尝试对比一下不同提示词&#xff0c;对应的模型输出 ChatGPT无提示词 API&#xff1a; ChatGPT 3.5 …

深入理解Python协程:从基础到实战

title: 深入理解Python协程&#xff1a;从基础到实战 date: 2024/4/27 16:48:43 updated: 2024/4/27 16:48:43 categories: 后端开发 tags: 协程异步IO并发编程Pythonaiohttpasyncio网络爬虫 第1章&#xff1a;协程基础 1.1 协程概念介绍 协程&#xff08;Coroutines&…

以生命健康为中心的物联网旅居养老运营平台

随着科技的飞速发展和人口老龄化的日益加剧&#xff0c;养老问题逐渐成为社会关注的焦点。传统的养老模式已经难以满足现代老年人的多元化需求&#xff0c;因此&#xff0c;构建一个以生命健康为中心的物联网旅居养老运营平台显得尤为重要。 以生命健康为中心的物联网旅居养老运…

敷尔佳2023年报前瞻:“医美面膜第一股”的护城河及2024展望

查理芒格曾说&#xff1a;“要去鱼多的地方打渔”。历数长线牛股辈出的领域&#xff0c;消费行业无疑是大赢家。此中&#xff0c;美业又是消费行业最好的细分赛道之一。 4月26日&#xff0c;A股“医美面膜第一股”–敷尔佳(SZ:301371)将发布2023年财报&#xff0c;按惯例对本季…

2024最新智慧医疗智慧医院大数据展示,医院数据采集概况、医院指标分析、医院就诊趋势分析等。源代码免费下载。

系列文章目录 【复制就能用1】2分钟玩转轮播图,unslider的详细用法 【复制就能用2】css实现转动的大风车&#xff0c;效果很不错。 【复制就能用3】2分钟自己写小游戏&#xff1a;剪刀石头布小游戏、扫雷游戏、五子棋小游戏 【复制就能用4】2024最新智慧医疗智慧医院大数据…

2024年Q1季度干衣机家电线上市场数据分析

春季阴雨绵绵&#xff0c;空气湿度增加&#xff0c;为晾晒衣物带来不便。与此同时&#xff0c;新消费主义的崛起也促使消费者更加注重时间效率和生活品质&#xff0c;寻求能够快速、方便地处理衣物的解决方案。借此&#xff0c;干衣机的需求量有所上涨。 根据鲸参谋数据显示&a…

【HCIP学习】BGP基础

一、BGP产生背景 BGP&#xff08;Border Gateway Protocol&#xff0c;边界网关协议&#xff09;是一种用于自治系统间的动态路由协议&#xff0c;是一种外部网关协议。 自治系统AS&#xff1a;一组同一个管理机构进行管理&#xff0c;对外呈现统一选路策略的路由器的集合。 …

解锁大模型高效推理:将 LlamaIndex 与抽象链集成

在语言理解领域&#xff0c;对忠实推理的追求促使研究人员探索各种途径。 大型语言模型&#xff08;LLMs&#xff09;在解释和执行指令方面取得了显著进展&#xff0c;但在准确回忆和组合现实世界知识方面仍然面临挑战。 为了解决这个问题&#xff0c;将外部工具集成到LLMs的…