408强化(番外)文件管理

有点看不下去书,408,哎好久没看了,死磕数学时完全不想看其他科目,数学分数也尚未质变。

突然想到一个好点子,只看大纲尝试回忆一下这章的内容。

文件就是为了方便用户使用,按名访问而提出的,从组成上来看,是一系列的数据元素构成的,就是各种记录的集合吧,反正是组织一些数据。

文件管理主要是聚焦物理结构,用户关心的是逻辑结构,操作系统要做的是逻辑结构转换为物理结构和物理结构怎样安排。

先看逻辑结构,无结构文件又称流式文件,是一类相同的记录构成的,比如一堆二进制代码和文本文件,读取就是挨个读,可以说是集合这种逻辑结构。有结构文件的逻辑结构就不再是集合这种没有关系的结构了,记录定长与非定长,顺序存储还是链式存储,记录本身顺序还是无序,一共八种组合,链式存储都无法随机存取,非定长的要知道前面每个记录的长度才能计算给定记录的存储位置,顺序文件在408中默认是顺序存储的顺序文件,可以支持随机存取和折半查找。然后就是索引文件,一个索引表项对应一个记录。索引顺序文件是一个索引表项对应一组记录,索引顺序文件和分块查找是类似的,可以大大简化查找记录的查找次数。还有哈希文件,按内容访问。

文件管理更重要的是物理结构,大题也全部都是考的是物理结构,一种是Unix使用的索引结点的模型,一种是使用文件分配表FAT的模型。先看物理结构都分为什么,顺序结构,某文件的数据块在外存中必须连续存储,这种方式方便访问但是不易扩容。链式结构,一种就是普通的在一个数据块中分出几字节链接到下一个数据块,这种就不支持随机访问了,必须一个一个全部给我调入内存,还有一种链式结构就是使用FAT,开机后在内存中打开一个文件分配表FAT,根据FAT就能找到所有数据块的位置,它使用的是静态数组,就是单链表用数组实现的那种方式,这个印象很深,有一年的真题第一题就是考这个,第一次做是知道的,第二次模拟时忘了这种方式了,死活不知道那个表到底表示什么意思。此外树的双亲表示法也是用的这个数据结构,还有并查集,扯远了。FAT查找想访问数据块的地址因为是在内存中实现的,耗时几乎可以忽略。此外就是索引分配方式,提到这里不由吐槽,把物理结构和逻辑结构起的名字搞这么像干嘛,像就算了,课后题一堆错题垃圾题,混着考你。索引分配就是把一个外存块作为一个索引块,每个索引表项能表示一个外存块的地址,这样能大大提高可寻址的数据块的多少,应该是支持随机访问的把,读索引块的表项就能知道想访问的逻辑块号在哪一个外存块。此外还有二级乃至多级索引。这里又想到了王道课后题的几个错题,问多级索引能表示的数据块多少,它的答案不能超过一个索引表项位数能表示的数据块的多少,真题考过好几次这种,但都没有超过,出题老头应该是设计好的。然后就是混合索引分配,这就引出了大题最爱考的Unix的那个结构,10个直接地址索引,一个一级索引,一个二级,一个三级。物理结构应该就这么点内容,剩下的都是小题内容。

一个文件对应一个PCB,一个PCB就是一个目录项,多个目录项组成目录文件,也是一种文件。文件分为三种:普通文件,目录文件,特殊也就是I/O文件。查找文件是只需读名字,把PCB中的其他信息一块读出来浪费开销,于是引入了索引结点,只保留名字,然后指向一个什么什么区,固定位置,你去那找全部的目录信息然后再读数据块。文件的操作没啥好说的,主要是读和写文件之前要先打开文件,整个系统有一张打开文件表,每个进程维护各自的打开文件表,打开文件就是把对应的索引项的信息读入内容,然后对应于进程打开文件表中的一项,这个项有个什么什么编号,Open操作就是访问整个编号。文件的保护,记得课后题有几个说法一直记不清,文件的属性和用户的访问权限好像是最重要的。访问矩阵的每一个比特表示某用户针对某功能是否有权限。

目录,根目录文件很重要,开机时好像就到内存中了,目录的结构记不清怎么分的了,一开始是不允许重名,然后是根目录下不同用户才允许重名,也就是树形结构,最后还有个图型结构应该不考。目录的操作有啥啊,这个是真不知道了,更改还是添加目录或是添加普通文件把。软链接就是快捷方式,不会改变计数指针,硬链接当计数指针为0时才能删除。

外存空闲空间的管理方法就是用数组存储,用链表存储,还有位示图法,这个真题爱考,行列代表什么有点不清楚了,最后有个超级块,基本方式是什么,然后临界情况,一轮的时候清楚了,现在肯定是说不清了,有点复杂的一个过程,感觉不如多级反馈队列好记。剩下的内容就是新大纲的考点了,其中还包括操作系统引导吧,这个是考过的。剩下的真的是太抽象了,连背题都不好背,这个再过一遍基础课视频吧,11月再看吧,不然还要忘。

更正及补充:目录项仅有文件名和索引结点指针的对应,索引结点是在外存中Inode区中,固定区域。打开操作返回的那个编号是文件描述符,fd。 

不是有序的那个叫串结构。索引文件的提出是为了针对可变长记录不能随机存取。链式分配那个叫隐式链接和显式链接FAT。

单机目录结构,两级目录结构,树形目录结构:绝对路径和相对路径。软链接速度更慢。

口令保护不安全,加密保护安全性高。

位示图法是用一个二进制位表示一个盘块,0表示空闲。成组链接法是使用超级块,第一行是显示下一块的空闲盘块数,然后各行是空闲块号。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据Flink(七十八):SQL 的水印操作(Watermark)

文章目录 SQL 的水印操作(Watermark) 一、为什么要有 WaterMark

总结 - 组件通用封装思路(组件封装)

组件封装: 1. 不变; 2. 变:①prop ②slot插槽 详细总结在文末。 --------------------------------------------------------------------------------------------------- 问题:结构相似,内容不同 --》 可以用组…

Python中进行特征重要性分析的9个常用方法

特征重要性分析用于了解每个特征(变量或输入)对于做出预测的有用性或价值。目标是确定对模型输出影响最大的最重要的特征,它是机器学习中经常使用的一种方法。 为什么特征重要性分析很重要? 如果有一个包含数十个甚至数百个特征的数据集,每个特征都可能…

R语言用逻辑回归预测BRFSS中风数据、方差分析anova、ROC曲线AUC、可视化探索

全文链接:https://tecdat.cn/?p33659 行为风险因素监测系统(BRFSS)是一项年度电话调查。BRFSS旨在确定成年人口中的风险因素并报告新兴趋势(点击文末“阅读原文”获取完整代码数据)。 相关视频 例如,调查对…

数据分析工具有哪些,哪个好学?

Tableau、帆软BI、思迈特BI、SpeedBI数据分析云……这些都是比较常见的BI数据分析工具。从学习成本、操作难度以及数据可视化分析效果来看,SpeedBI数据分析云都表现地可圈可点。 1、不需下载安装、学习成本低 SpeedBI数据分析云是一款SaaS BI数据分析工具&#xf…

工程内分子目录存放源代码的处理(linux cmake)

1.子目录的CMakeLists文件 注意其中的三个要点,特别注意那个set ....PARENT_SCOPE 那条语句才把子目录里定义的对象让上层目录可见。 #这是子目录的CMakefile, 编译过程中的提示信息 message(STATUS "Enter mqtt dir...")#要点1:这个MODULE_MQTT需要在…

轻量级的Python IDE —— Thonny

现在的开发工具太多了,而且每个开发工具都致力于做成最好用最智能的工具,所以功能越堆越多,越怼越智能。安装这些开发工具比较烧脑,经常需要经过许多配置步骤。作为一个 Python 开发者来说,好多人光是这些配置都要弄半…

数学实验-迭代(二)-分形(Mathematica实现)

一、实验环境:Mathematica 10.3软件 二、实验目的:以迭代的观点介绍分形的基本特性以及生成分形图形的基本方法,使我们在欣赏美丽的分形图形的同时对分形几何这门学科有一个直观的了解。 三、实验内容和步骤以及结果分析 实验2.1&#xff…

Linux网络编程|TCP编程

一.网络基础 1.1网络发展史 Internet-“冷战”的产物 1957年10月和11月,前苏联先后有两颗“Sputnik”卫星上天 1958年美国总统艾森豪威尔向美国国会提出建立DARPA (Defense Advanced Research Project Agency),即国防部高级研究计划署&#…

Java异常处理(详解)

Java异常处理 前言一、异常与异常类1.异常的概念2.异常类Error类Exception类(1)非检查异常(2)检查异常 二、异常处理1.异常的抛出与捕获2.try-catch-finally语句3.声明方法抛出异常3.用throw 语句抛出异常 三、自定义异常类 前言 …

npm 清缓存(重新安装node-modules)

安装node依赖包的会出现失败的情况,如下图所示: 此时 提示有些依赖树有冲突,根据提示 “ this command with --force or --legacy-peer-deps” 执行命令即可。 具体步骤如下: 1、先删除本地node-modules包 2、删掉page-loacl…

驱动开发,IO多路复用实现过程,epoll方式

1.框架图 被称为当前时代最好用的io多路复用方式; 核心操作:一棵树(红黑树)、一张表(内核链表)以及三个接口; 思想:(fd代表文件描述符) epoll要把检测的事件…

哨兵1号(Sentinel-1)SAR卫星介绍

1. 哥白尼计划 说起欧空局的哨兵1号,就不得不先说一下欧空局的“哥白尼计划”。 欧空局的哥白尼计划(Copernicus Programme)是欧空局与欧盟合作的一项极其重要的地球观测计划。该计划旨在提供免费开放的、可持续的地球观测数据&#xff0c…

【计算机视觉 | 目标检测】arxiv 计算机视觉关于目标检测的学术速递(9 月 15 日论文合集)

文章目录 一、检测相关(6篇)1.1 ALWOD: Active Learning for Weakly-Supervised Object Detection1.2 mEBAL2 Database and Benchmark: Image-based Multispectral Eyeblink Detection1.3 Co-Salient Object Detection with Semantic-Level Consensus Extraction and Dispersio…

如何实现 pdf 转 word

前言:最直接的方式 wps 充会员可以直接转,但是单纯为了 使用这个功能有没啥必要 pdf转word方法 在线转换wps转换其他收费转换方式 在线转换 介绍在线转换,虽然样式简陋但是可以转换成功,转换以后也没有失真 http://ssyr.mynatap…

【无公网IP内网穿透】 搭建Emby媒体库服务器并远程访问「家庭私人影院」

目录 1.前言 2. Emby网站搭建 2.1. Emby下载和安装 2.2 Emby网页测试 3. 本地网页发布 3.1 注册并安装cpolar内网穿透 3.2 Cpolar云端设置 3.3 Cpolar内网穿透本地设置 4.公网访问测试 5.结语 1.前言 在现代五花八门的网络应用场景中,观看视频绝对是主力…

Jenkins 页面部分显示Http状态403 被禁止

前言 生产环境Jenkins部署了一段时间了,结果今天在流水线配置中,部分页面显示Jenkins 页面部分显示Http状态403 被禁止,修改配置点击保存之后偶尔也会出现这个。 问题 以下是问题图片 解决 在全局安全配置里面,勾选上启用代…

使用ExcelJS快速处理Node.js爬虫数据

什么是ExcelJS ExcelJS是一个用于处理Excel文件的JavaScript库。它可以让你使用JavaScript创建、读取和修改Excel文件。 以下是ExcelJS的一些主要特点: 支持xlsx、xlsm、xlsb、xls格式的Excel文件。可以创建和修改工作表、单元格、行和列。可以设置单元格样式、字…

C++之operator=与operator==用法区别(二百一十八)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生…

常见开源协议详解及应用案例

文章目录 0. 引言软件开源概述开源协议的重要性 1. 开源协议的几个关键概念1. 引用(Linking)2. 修改(Modification)3. 衍生品(Derivative works)4. 获取源码的权力(Right to access source code…