计算机操作系统第四版第七章文件管理—课后习题答案

news2024/10/7 12:20:07

4f4178b4317040d7a37bd244742da4da.png

db94548d413e4d20b12b6420fa6aeb4b.png

c2a4645019504c65b753cfdc6026c4f7.png 

 

1.何谓数据项、记录和文件?

数据项:是最低级的数据组织形式,可以分为两种类型:基本数据项和组合数据项。基本数据项是用于描述一个对象的某种属性的字符集,是数据组织中可以命名的最小逻辑数据单位,又称为字段。组合数据项是由若干个基本数据项组成的,简称组项。
记录:记录是一组相关数据项的集合,用于描述一个对象在某方面的属性。
文件:文件是指由创建者所定义的、具有文件名的一组相关元素的集合。

2.文件系统的模型可分为三层,试说明其每一层所包含的基本内容。

第一层:对象及其属性说明(文件、目录、硬盘或磁带存储空间);

第二层:对对象操纵和管理的软件集合(​I/O 控制层即设备驱动程序、基本文件系统即物理I/O 层、基本​I/O   管理程序或文件组织模块层、逻辑文件系统层)

第三层:文件系统接口(命令接口​/图形化用户接口与程序接口)。

3.与文件系统有关的软件可分为那几个层次?

I/O控制层、基本文件系统层、基本I/O管理程序、逻辑文件系统。

4.试说明用户可以对文件施加的主要操作有哪些?

(1 )基本文件操作:创建、删除、读、写、设置读​/写位置等;
(2 )文件打开和关闭操作:​第一步通过检索文件目录找到指定文件属性及其在外存上位置;第二步对文件实施读写等相应操作。
(3 )其他文件操作:一是文件属性操作;二是目录操作;三是文件共享与文件系统操作的系统调用实现等。

5.为什么在大多数OS中都引入了“打开”这一文件系统调用?打开的含义是什么?

当用户要求对一个文件实施多次读/写或其他操作时,每次都要从检索目录开始。为了避免多次重复地检索目录,在大多数OS中都引入了“打开”这一文件系统调用。
所谓“打开”,是指系统将指名文件的属性(包括该文件在外存上的物理位置),从外存拷贝到内存打开文件表的一个表目中,并将该表目的编号(或称为索引号)返回给用户。换而言之,“打开”就是在用户和指定文件之间建立起一个链接。此后,用户可通过该链接直接得到文件信息,从而避免了再次通过目录检索文件,即当用户再次向系统发出文件操作请求时,系统根据用户提供的索引号可以直接在打开文件中查找到文件信息。

6.何谓文件的逻辑结构?何谓文件的物理结构?

文件的逻辑结构:这是从用户观点出发所观察到的文件组织形式,即文件是由一系列的逻辑记录组成的,是用户可以直接处理的数据及其结构,它独立于文件的物理特性,又称为文件组织。
文件的物理结构:又称为存储结构。这是指系统将文件存储在外存上所形成的一种存储组织形式,是用户不能看见的。

7.按文件的组织形式可将文件分为哪几种类型?

顺序文件、索引文件、索引顺序文件。

8.如何提高对变长记录顺序文件的检索速度?


为变长记录文件建立一张索引表,为主文件中的每个记录在索引表中分别设置一个表项,记录指向记录的指针(即记录在逻辑地址空间的首址)以及记录的长度L,索引表按关键字排序,因此其本身也是一个定长记录的顺序文件,这样就把对变长记录顺序文件的顺序检索转变为对定长记录索引文件的随机检索,从而加快对记录检索的速度,实现直接存取。

9.通过哪两种方式来对固定长记录实现随机访问?

隐式寻址方式和显示寻址方式。

10.可以采取什么方法来实现对变长记录文件进行随机检索?

为变长记录文件建立一张索引表,索引表中记录每一个变长记录项的地址。因为检索索引表是对定长文件进行检索,就可以实现随机检索。

11.试说明索引顺序文件的几个主要特征。

(1)记录是按关键字的顺序组织起来的;
(2)引入了文件索引表,通过该表可以实现对索引顺序文件的随机访问;
(3)增加了溢出文件,用它来记录新增加的、删除的和修改的记录。

12.试说明对索引文件和索引顺序文件的检索方法。

对索引文件进行检索时,可以根据用户(程序)提供的关键字利用折半查找法去检索索引表,从中找到相应的表项。再利用该表项中给出的指向记录的指针去访问所需的记录。
对索引顺序文件进行检索时,首先也是利用用户(程序)所提供的关键字以及某种查找算法去检索索引表,找到该记录所在记录组中第一个记录的表项,从中得到该记录组第一个记录在主文件中的位置。然后,再利用顺序查找法去查找主文件,从中找到所要求的记录。

13.试从检索速度和存储费用两方面来比较两级索引文件和索引顺序文件。

两级索引文件:存储费用高,检索速度较快。
索引顺序文件:存储费用不高,检索速度快。

14.对目录管理的主要要求是什么?

(1)实现“按名存取”;(2)提高对目录的检索速度;(3)文件共享;(4)允许文件重名。

15.采用单级目录能否满足对目录管理的主要要求?为什么?

它只能满足按名存取。
(1)查找速度慢。(2)不允许重名。(3)不便于实现文件共享。

16.目前广泛采用的目录结构形式是哪种?它有什么优点?

树形结构目录。明显提高了对目录的检索速度和文件系统的性能。

17.何谓路径名和当前目录?

路径名:在树形结构目录中,从根目录到任何数据文件都只有一条唯一的通路。在该路径上,从树的根(即主目录)开始,把全部目录文件名与数据文件名依次地用“/”连接起来,即构成该数据文件唯一的路径名。
当前目录:当一个文件系统有多级时,每访问一个文件,都要使用从树根开始,直到数据文件为止,是相当麻烦的事,可为每个进程设置一个“当前目录“,又称“工作目录“。
假设用户B的当前目录是F,则此时文件J的相对路径名仅是J本身。

18.Hash检索法有何优点?又有何局限性?

优点:显著提高检索速度。
局限:对于使用了通配符的文件名,此时系统便无法利用Hash法检索目录,还是需要利用线性查找法查找目录。

19.在Hash检索法中,如何解决“冲突”问题?

(1)在利用Hash法索引查找目录时,如果目录表中相应的目录项是空的,则表示系统中并无指定文件。
(2)如果目录项中的文件名与指定文件名相匹配,则表示该目录项正是所要寻找的文件所对应的目录项,故而可从中找到该文件所在的物理地址。
(3)如果在目录表的相应目录项中的文件名与指定文件名并不匹配,则表示发生了“冲突”,此时须将其Hash值再加上一个常数(该常数与目录的长度值互质),形成新的索引值,再返回到第一步重新开始寻找。

20.试说明在树形目录结构中线性检索法的检索过程,并给出相应的流程图。

9ae5afb4ca8042b38ea1f9e988f02f6a.png 

21.基于索引结点的文件共享方式有何优点?

优点是建立新的共享链接时,不改变文件拥有者关系,仅把索引结点共享计数器加1,系统可获悉了由多少个目录项指向该文件。缺点是拥有者不能删除自己的文件否则会出错。

22.什么是主父目录和链接父目录?如何利用符号链实现共享?

利用符号链接实现文件共享的基本思想,是允许一个文件或子目录有多个父目录,但其中仅有一个作为主父目录,其他的几个父目录都是通过符号链接方式与之相链接的(简称链接父目录)。
P243

23.基于符号链的文件共享方式有何优点?

在利用符号链方式实现文件共享时,只是文件主才拥有指向其索引结点的指针;而共享该文件的其他用户则只有该文件的路径名,并不拥有指向其索引结点的指针。这样,就不会发生在文件主删除一共享文件后留下一悬空指针的情况。

24.什么是保护域?进程与保护域之间存在着的动态联系是什么?

进程对一组对象访问权的集合,进程只能在指定区域内执行操作,域也就规定了进程所能访问的对象和能执行的操作。
进程和域之间,可以是一对多的关系,即一个进程可以联系着多个域。在此情况下,可将进程的运行分为若干个阶段,其每个阶段联系着一个域,这样便可根据运行的实际需要来规定在进程运行的每个阶段中所能访问的对象。

25.试举例说明具有域切换权的访问控制矩阵。

答:在访问矩阵中增加几个对象,分别作为访问矩阵中的几个域,当且仅当switch包含在access(i,j)时,才允许进程从域i切换到域j。例如在下图中,域D1和D2对应的项目中有S,故允许域D1中的进程切换到域D2中,在域D2和D3中也有S,表示D2域中进行的进程可切换到域D3中,但不允许该进程再从域D3返回到域D1。

b8fdc1b5292d4317919ee4bfee5b612d.png

 

26.如何利用拷贝权来扩散某种访问权?

答:如果域i 具有对象j 的某访问权acess(i,j)的拷贝权,则运行在域i 的进程可将其访问权acess(i,j)扩展到访问矩阵同一列中的其它域,即为运行在其它域的进程也赋予关于同一对象的同样访问(acess(i,j))。

27.如何利用拥有权来增、删某种访问权?

如果域i 具有关于对象j 的所有权,则运行在域i 的进程可以增删在j 列的任何项中的任何访问权。或该进程可以增删在任何其它域中运行的进程关于对象j的任何访问权。

28.增加控制权的主要目的是什么?试举例说明控制权的应用。

用于改变在不同域中运行的进程对同一对象的访问权的。

29.什么是访问控制表?什么是访问权限表?

访问控制表是指对访问矩阵按列划分,为每一列建立一张访问控制表ACL。
访问权限表是如果把访问矩阵按行(即域)划分,便可由每一行构成一张访问权限表。这是由一个域对每一个对象可以执行的一组操作所构成的表,表中的每一项权限即为该域对某对象的访问权限。

30.系统如何利用访问控制表和访问权限表来实现对文件的保护?

当进程第一次试图访问一个对象时,必须先检查访问控制表,查看是否有权访问该对象。
如果无则拒绝访问,并构成一个例外异常事件;否则便允许访问,并为之建立访问权限,以便快速验证其访问的合法性。当进程不再访问该对象时便撤销该访问权限。

 

 

 

 

 

 

 

 

 

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

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

相关文章

使用volta对node版本进行控制

安装volta 首先下载volta 下载完成之后在电脑上使用命令行工具查看是否安装成功 volta -v 使用 volta -h 命令可以查看volta的一些用法 安装全局的node版本,可以有三种,第一种是安装最新的,第二种是安装某一个大版本下的,第三种是安装指定的node版本(安装的时候需要等待一段时…

Rest风格复习

Rest风格复习 简介三种注解的风格快速开发 简介 通过一段路径和访问方式来确定访问资源的行为方式 使用POST方式 // value定义 路径 method定义访问的方式RequestMapping(value "/users",method RequestMethod.POST)ResponseBodypublic String save(){System.out.…

Andrew Ng和OpenAI教你写prompt

课程地址: https://learn.deeplearning.ai/chatgpt-prompt-engb站搬运: https://www.bilibili.com/video/BV1No4y1t7Zn 教学人员:Lsa Fulford, Andrew NG LLM的两种样式 Base LLM:基于文本训练数据预测下一个词的概率&#xff0…

制作Alpine Linux镜像报错errors: 15 distinct packages available

1.执行报错 执行docker build -t 镜像:版本 -f Dockerfile . 报错: 2.查看网上的解决思路 网上文档解决思路: 这边我做了一下改变把这些写入了dockerfile 加了几个RUN RUN rm -rf /var/cache/apk RUN mkdir -p /var/cache/apk RUN apk update -v 发现还…

Java基本数据类型详解及应用示例

Java作为一门强类型语言,基本数据类型是非常重要的概念。Java中基本数据类型分为四种类别:整数类型、浮点数类型、字符类型和布尔类型。其中,每一种数据类型都有着不同的占用字节数和表示范围,合理使用选择不同的数据类型可以提高…

数组低效的“插入”和“删除”

插入操作 假设数组的长度为 n,现在,如果我们需要将一个数据插入到数组中的第 k 个位置。为了把第 k 个位置腾出来,给新来的数据,我们需要将第 k~n 这部分的元素都顺序地往后挪一位。那插入操作的时间复杂度是多少呢&a…

ChatGPT 中文指令指南,教会你如何使用chatgpt实现中文你想要的答案

🧠 ChatGPT 中文指令指南,教会你如何使用chatgpt实现中文你想要的答案 1.学习英语–替代词典 App 场景例子Prompts解释中文英文意思,并解释单词的词根词缀。可以替代词典。告诉我 Egocentric 的词性和音标,并使用中文和英文解释…

OpenAI开源语音识别模型Whisper在Windows系统的安装详细过程

1、安装Python Python的安装很简单,点击这里进行下载。 安装完成之后,输入python -V可以看到版本信息,说明已经安装成功了。 如果输入python -V命令没有看到上面的这样的信息,要么是安装失败,要么是安装好之后没有自…

【自然语言处理】【大模型】CodeGen:一个用于多轮程序合成的代码大语言模型

CodeGen:一个用于多轮程序合成的代码大语言模型 《Code Gen: An Open Large Language Model For Code with Multi-Turn Program Synthesis》 论文地址:https://arxiv.org/pdf/2203.13474.pdf?trkpublic_post_comment-text 相关博客 【自然语言处理】【大…

【EasyPoi实战系列】Spring Boot使用EasyPoi实现一对多的导出 - 第469篇

​ 历史文章(文章累计460) 《国内最全的Spring Boot系列之一》 《国内最全的Spring Boot系列之二》 《国内最全的Spring Boot系列之三》 《国内最全的Spring Boot系列之四》 《国内最全的Spring Boot系列之五》 《国内最全的Spring Boot系列之六》…

Exams/2012 q1g

module top_module (input [4:1] x,output f ); assign f ~x[2]&~x[4] | ~x[1]&x[3] | x[2] & x[3] & x[4]; endmodule

4-Tr0ll-1百个靶机渗透(精写-思路为主)

文章目录 目录 文章目录 前言 一、信息收集 二、提权 1.提权方法1 2.提权方法2 3.提权方法3 4.提权方法4 5.root免密登录的方法 总结 前言 思路清晰: 1.信息收集,寻找内网靶机,得到可以利用的ftp、ssh和web站点的常规端口。 2.因为这个靶机…

Visual Studio 2019离线安装包获取和安装教程

摘要 介绍Visual Studio 2019离线安装方法和配置及注意事项 关键词 VS2019 离线安装 Visual Studio 2019版本与以往的2015、2013、2012版本不同,采用了新的模块化安装方法。微软官方也并未提供ISO镜像,根据官方提供的离线下载方案(docs.mic…

「AI 孙燕姿」翻唱华语乐坛歌曲爆红全网,AI 翻唱将带来哪些影响?是否会有版权等问题?

在某视频平台上,“AI孙燕姿”成了新网红,它翻唱过周杰伦的《发如雪》、翻唱过郭顶的《水星记》、翻唱过赵雷的《我记得》,受到了网友的追捧,甚至有网友宣布“这是2023年最火的声音”。 网上除了AI孙燕姿,还有AI周杰伦…

AOP、spring事务管理

目录 AOP简介 AOP入门案例 AOP配置管理 AOP通知类型 业务层接口执行效率 AOP通知获取数据 百度网盘密码数据兼容处理 AOP事务管理 AOP简介 什么是AOP? AOP(Aspect Oriented Programming)面向切面编程,一种编程范式,指导开发者如何组织程序结…

HTML <area> 标签

实例 带有可点击区域的图像映射: <img src="planets.jpg" border="0" usemap="#planetmap" alt="Planets" /><map name="planetmap" id="planetmap"><area shape="circle" coords=&q…

AHUT周赛2

1.A - Mahmoud and Ehab and the MEX Problem - A - Codeforces 核心在于x之前的数肯定是有的&#xff0c;x是没有的 所以从0开始一直到x&#xff0c;如果哪个数没有就加上哪个数(操作数1)&#xff0c;如果有x就删去x(操作数1) AC代码&#xff1a; #include<iostream>…

【UML】

文章目录 1.uml图2.类图3.类合类之间关系&#xff1a;泛化关系4.类合类之间关系&#xff1a;实现关系5.类合类之间关系&#xff1a;关联关系6. 聚合关系 组合关系 依赖关系6.1聚合关系6.2 组合关系6.3 依赖关系 7.用例图8.时序图9.状态图10.活动图 1.uml图 2.类图 新建类图 新…

【超全解决方法】关于anaconda navigator启动时一直卡在 loading applications 的问题

问题描述 点开 anaconda navigator 一直处于以下页面&#xff0c;且过了很长时间都加载不出来。 &#xff08;至于为什么会出现这样的问题&#xff0c;原因是我更新了anaconda navigator 之后就出现一大堆问题&#xff0c;最终点开anaconda navigator却一直开在下面的页面&am…

【sop】基于灵敏度分析的有源配电网智能软开关优化配置(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…