操作系统期末习题考试习题解答题目三

2023-11-08

操作系统期末习题考试习题解答题目三

目录

操作系统期末习题考试习题解答题目三

第八章

第九章


第八章

1.什么是文件、文件系统?文件系统有哪些功能? P198

答:在计算机系统中,文件被解释为一组赋名的相关字符流的集合,或者是相关纪录的集合。

文件系统是操作系统中与管理文件有关的软件和数据。

文件系统的功能是为用户建立文件、撤销、读写、修改和复制文件,以及完成对文件的按名存取和进行存取控制。

 

2、文件一般按什么分类?可以分为哪几类? P199

答:文件一般按性质、用途、组织形式、文件中的信息流向或文件的保护级别等分类。

按性质和用途可分为系统文件、库文件和用户文件。

按文件的组织形式可分为普通文件、目录文件和特殊文件。

按文件中的信息流向可分为输入文件、输出文件和输入/输出文件。

按文件的保护级别可分为只读文件、读写文件、可执行文件和不保护文件。

 

3、什么是文件的逻辑结构?什么是纪录?P200

答:文件的逻辑结构就是用户可见的结构,可分为字符流式的

无结构文件和记录式的有结构文件两大类。

记录是一个具有特定意义的信息单位,他由该纪录在文件中的逻辑地址(相对位置)与记录名所对应的一组关键字、属性及其属性值所组成。

 

7、文件的物理结构有哪几种?为什么说串联文件结构不适于随机存取?P205

答:文件的物理结构是指文件在存储设备上的存取方法。常用的文件的物理结构有连续文件、串联文件和索引文件三种。

串联文件结构用非连续的物理块来存取文件信息。这些非连续的物理块之间没有顺序关系,链接成一个串联队列。搜索时只能按队列中的串联指针顺序搜索,存取方法应该是顺序存取的。否则,为了读取某个信息块而造成的磁头大幅度移动将花去较多的时间。因此,串联文件结构不适于随机存取。

 

9、常用的文件存储设备的管理方法有哪些?试述主要优缺点。P209

答:文件存储设备的管理实质上是一个空闲块的组织和管理问题。有3种不同的空闲块管理方法,即空闲文件目录、空闲块链和位示图。

空闲文件目录管理方法就是把文件存储设备中的空闲块的块号统一放在一个称为空闲文件目录的物理块中,其中空闲文件目录的每个表项对应一个由多个空闲块构成的空闲区。该方法实现简单,适于连续文件结构的文件存储区的分配与回收。但是由于回收时不进行合并,所以使用该方法容易产生大量的小块空闲区。

空闲块链法把文件存储设备上的所有空闲块链接在一起,从链头分配空闲块,把回收的空闲块插入到链尾。该方法不占用额外的空间,但实现复杂。

位示图法是从内存中划出若干字节,每个比特位对应一个物理块的使用情况。如果该位为0表示对应的块是空闲的,为1表示对应的物理块已分配出去。位示图法在查找空闲块时无需启动外设,但要占用内存空间。

 

11、什么是文件目录?文件目录中包含哪些信息?P211

答:一个文件的文件名和对该文件实施控制管理的说明信息成为该文件的说明信息,又称为该文件的文件控制块(FCB)。把所有的FCB组织在一起,就构成了文件目录,即文件控制块的有序集合。

文件目录中包含文件名、与文件名相对应的文件内部标识以及文件信息在文件存储设备上的第一个物理块的地址等信息。另外还可能包含关于文件的逻辑结构、物理结构、存取控制信息和管理等信息。

 

13、文件存取控制方式有哪几种?试比较它们各自的优缺点。P216

答:文件存取控制方式一般有存取控制矩阵、存取控制表、口令和密码术4种方式。

存取控制矩阵方式以一个二维矩阵来进行存取控制。而且矩阵的一维是所有的用户。另一维是所有的文件。对应的矩阵元素则是用户对文件的存取控制权。存取控制矩阵的方法在概念上比较简单,但是当用户和文件较多时,存取控制矩阵将变得非常庞大,从而时间和空间的开销都很大。

存取控制表以文件为单位,把用户按某种关系划分为若干组,同时规定每组的存取限制。这样所有用户组对文件权限的集合就形成了该文件的存取控制表。存取控制表方法占用空间较小,搜索效率也较高,但要对用户分组,引入了额外的开销。

口令方式有两种。一种是当用户进入系统时,为建立终端进程时获得系统使用权的口令。另一种方式是,每个用户在创建文件时,为每个创建的文件设置一个口令,且将其置于文件说明中。当任一用户想使用该文件时,都必须首先提供口令。口令方式比较简单,占用的内存单元以及验证口令所费时间都非常少。不过,相对来说,口令方式保密性能比较差。

密码术方式在用户创建源文件并写入存储设备时对文件进行编码加密,在读出文件时对文件进行译码解密。加密方式具有保密性强的优点。但是,由于加密解密工作要耗费大量的处理时间,因此,加密技术是以牺牲系统开销为代价的。

 

第九章

1. 设备管理的目标和功能是什么?
答:设备管理的目标是:
(1) 选择和分配输入/输出设备以便进行数据传输操作;
(2) 控制输入/输出设备和CPU(或内存)之间交换数据;
(3) 为用户提供一个友好的透明接口;
(4) 提高设备和设备之间、CPU和设备之间,以及进程和进程之间的并行操作,以使操作系统获得最佳效率。

设备管理的功能是:
(1) 提供和进程管理系统的接口;
(2) 进行设备分配;
(3) 实现设备和设备、设备和CPU等之间的并行操作;
(4) 进行缓冲区管理。    
2.数据传送控制方式有哪几种?试比较它们各自的优缺点。
答:数据传送控制方式有程序直接控制方式、中断控制方式、DMA方式和通道方式4种。程序直接控制方式就是由用户进程来直接控制内存或CPU和外围设备之间的数据传送。它的优点是控制简单,也不需要多少硬件支持。它的缺点是CPU和外围设备只能串行工作;设备之间只能串行工作,无法发现和处理由于设备或其他硬件所产生的错误。
中断控制方式是利用向CPU发送中断的方式控制外围设备和CPU之间的数据传送。它的优点是大大提高了CPU的利用率且能支持多道程序和设备的并行操作。它的缺点是由于数据缓冲寄存器比较小,如果中断次数较多,仍然占用了大量CPU时间;在外围设备较多时,由于中断次数的急剧增加,可能造成CPU无法响应中断而出现中断丢失的现象;如果外围设备速度比较快,可能会出现CPU来不及从数据缓冲寄存器中取走数据而丢失数据的情况。
DMA方式是在外围设备和内存之间开辟直接的数据交换通路进行数据传送。它的优点是除了在数据块传送开始时需要CPU的启动指令,在整个数据块传送结束时需要发中断通知CPU进行中断处理之外,不需要CPU的频繁干涉。它的缺点是在外围设备越来越  多的情况下,多个DMA控制器的同时使用,会引起内存地址的冲突并使得控制过程进一步复杂化。
通道方式是使用通道来控制内存或CPU和外围设备之间的数据传送。通道是一个独立与CPU的专管输入/输出控制的机构,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些指令受CPU启动,并在操作结束时向CPU发中断信号。该方式的优点是进一步减轻了CPU的工作负担,增加了计算机系统的并行工作程度。缺点是增加了额外的硬件,造价昂贵。    
3.什么是通道?试画出通道控制方式时的CPU、通道和设备的工作流程图。
答:通道是一个独立与CPU的专管输入/输出控制的机构,它控制设备与内存直接进行数据交换。它有自己的通道指令,这些指令受CPU启动,并在操作结束时向CPU发中断信号。
 
4. 什么是中断?什么叫中断处理?什么叫中断响应?
答: 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被中断处继续执行的过程。
CPU转去执行相应的事件处理程序的过程称为中断处理。
CPU收到中断请求后转到相应的事件处理程序称为中断响应。
5.什么叫关中断?什么叫开中断?什么叫中断屏蔽?
答:把CPU内部的处理机状态字PSW的中断允许位清除从而不允许CPU响应中断叫做关中断。
设置CPU内部的处理机状态字PSW的中断允许位从而允许CPU响应中断叫做开中断。
中断屏蔽是指在中断请求产生之后,系统用软件方式有选择地封锁部分中断而允许其余部分的中断仍能得到响应。
6.什么是陷阱?什么是软中断?试述中断、陷阱和软中断之间异同。
答:陷阱指处理机和内存内部产生的中断,它包括程序运算引起的各种错误,如地址非法、校验错、页面失效。存取访问控制错、从用户态到核心态的切换等都是陷阱的例子。软中断是通信进程之间用来模拟硬中断的一种信号通信方式。
8.什么是缓冲?为什么要引入缓冲?                                      
答:缓冲即是使用专用硬件缓冲器或在内存中划出一个区域用来暂时存放输入输出数据的器件。引入缓冲是为了匹配外设和CPU之间的处理速度,减少中断次数和CPU的中断处理时间,同时解决DMA或通道方式时的数据传输瓶颈问题。
13.什么是I/O控制?它的主要任务是什么?
答:I/O控制是指从用户进程的输入输出请求开始,给用户进程分配设备和启动有关设备进行I/O操作,并在I/O操作完成之后响应中断,直至善后处理为止的整个系统控制过程。
15.设备驱动程序是什么?为什么要有设备驱动程序?用户进程怎样使用驱动程序?
答:设备驱动程序是驱动外部物理设备和相应DMA控制器或I/O控制器等器件,使之可以直接和内存进行I/O操作的子程序的集合。它们负责设置相应设备有关寄存器的值,启动设备进行I/O操作,指定操作的类型和数据流向等。设备驱动程序屏蔽了直接对硬件操作的细节,为编程者提供操纵设备的友好接口。用户进程通过调用设备驱动程序提供的接口来使用设备驱动程序。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

操作系统期末习题考试习题解答题目三 的相关文章

  • GPU架构中的半精度fp16与单精度fp32计算

    GPU架构中的半精度与单精度计算 由于项目原因 我们需要对darknet中卷积层进行优化 然而对于像caffe或者darknet这类深度学习框架来说 都已经将卷积运算转换成了矩阵乘法 从而可以方便调用cublas 库函数和cudnn里til
  • linux日志查看命令

    1 查看日志常用命令 tail n 是显示行号 相当于nl命令 例子如下 tail 100f test log 实时监控100行日志 tail n 10 test log 查询日志尾部最后10行的日志 tail n 10 test log
  • gravatar配置和使用【让你的网站使用全球通用头像】

    前言 我们在很多博客或者网站留言 评论的时候会看到有的人头像很酷很个性化 但是这个博客和网站本身并没有提供设置头像的功能 感觉有点神奇 那么是怎么做到的呢 其实这是使用了Gravatar Gravatar是Globally Recogniz
  • hibernate无法找到实体类

    找不到持久化类 第一次编写博客 我的博客是用来记录编程出现过的错误 org hibernate UnknownEntityTypeException Unable to locate persister 翻译 未知实体类型异常 找不到持久化
  • TortoiseSVN设置忽略文件和目录文件夹

    参看 https blog csdn net bbj12345678 article details 80949556
  • sql server 查询表是否被哪些存储过程和视图引用

    select name from sysobjects as s inner join syscomments as o on s id o id where text like N 表名
  • GFS 阅读笔记

    这篇博客是我阅读著名的 GFS 论文 The Google File System 所总结的笔记以及自己一些的思考 这篇论文是一篇非常经典的论文 尤其对于想要了解分布式或者刚刚开始研究分布式的人来说 是一篇非常好的读物 它里面提到了许多分布
  • 使用python代码绘制一个会动的爱心

    你可以使用 matplotlib 库来绘制一个会动的爱心 下面是一个简单的代码示例 import matplotlib pyplot as plt import numpy asnp x np linspace np pi np pi 25
  • Apache Beam中的有状态计算

    Beam帮助我们处理流式 乱序 大规模的数据 并且提供了高度的抽象机制Pipeline 统一了流式和批量数据处理 从功能上流处理可以分为无状态 stateless 的和有状态 stateful 两种 在流处理的框架里引入状态管理大大提升了系
  • mysql怎么打开表ddl_MySQL数据表操作(DDL)

    一 创建数据表 语法 create table 表名称 字段 字段类型 约束 字段 字段类型 约束 表选项 约束 primary key not null auto increment等 表选项 数据表的属性 一般包括engine char
  • linux常用命令及解释大全(三)

    目录 前言 一 字符设置和文件格式转换 二 文件系统分析 三 初始化一个文件系统 四 备份 五 光盘 六 网络 总结 前言 本篇文章继续介绍了一部分linux常用命令 包括字符设置和文件格式转换 文件系统分析 初始化一个文件系统 备份 光盘
  • 模板类,模板类函数特例化,模板类特例化

    今天在看某c 框架源码时 发现模板类里的部分函数可以特例化 感觉很神奇便尝试了下 发现很多平时不会注意的c 细节及知识 写下来分享给大家 以便大家遇到相似问题时可以少踩点坑 模板类会出现链接问题 编译不通过 如果模板类 h文件和 cpp文件
  • matlab_一组数据元素随机排列

    如何生成一组数据元素随机排列 随机打乱顺序 产生新的排列 1 使用的matlab函数 randperm 1 语法格式 R randperm n 2 函数功能 将数字1 n进行随机排列 排列结果存储在行向量内 3 EX 输入 randperm
  • 网页端扫码通过公众号实现微信授权登录

    1 参考开发文档 https developers weixin qq com doc offiaccount OA Web Apps Wechat webpage authorization html 0 2 先调起微信授权页面 获取co
  • Java学习心得2——构造函数

    1 什么是构造函数 构造函数顾名思义 就是对象被构造的时候就会被调用的函数 例如当你new一个Cat对象的时候 Cat对象的构造函数就会被调用 public static void main String args Cat c new Ca
  • (如何读写文件)流-------输入流

    流 流是一组有序的数据序列 通过流来读写文件 流从方向分输入 输出流 流从单位份字节 字符流 字节输入流 InputStream 抽象父类 基类 常用方法 read 几个重载方法作用不同 int read 输入流一个字节一个字节的读 返回的
  • U3D中对象的自动销毁

    很多游戏中都会重用同一个游戏对象 比如说Dota 一波兵一波兵的被对方消灭 如果尸体不会自动销毁 恐怕地图中的尸体堆积如山不说 配置再厉害的电脑也架不住 这样游戏的性能太低了 需要自动销毁的情形有 游戏对象已经并且永远消失在视野中了 天空中
  • Java基础篇——集合

    活动地址 CSDN21天学习挑战赛 1 为什么使用集合 集合与数组类似 都是容器 我们为什么不用数组而还要使用集合呢 数组的特点 数组定义完成并启动后 类型确定 长度固定 不适合元素的个数和类型不确定的业务场景 更不适合做需要增删的操作 数
  • 如何在手机上运行c语言,各位前辈这两个程序怎么在手机上运行

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 made by ebhrz include include include include include include include global define int cfd 文件描述符

随机推荐

  • Python mailmerge库

    Python mailmerge库 本文使用环境 win10 python3 7 office2016 第0步 按装mailmerge pip install mailmerge 第1步 引用库 from mailmerge import
  • 测试用例设计(增量测试)

    增量测试 在执行模块测试过程中 我们主要有两点考虑 第一 如何设计一个有效的测试用例集 第二 将模块组装成工作程序的方式 第二点考虑很重要 因为它涉及模块测试用例编写的形式 可能用到的测试工具类型 模块编码和测试的顺序 生成测试用例的成本以
  • Markdown的十个常用标志符号

    Markdown 是一种轻量级的 标记语言 它的优点很多 目前也被越来越多的写作爱好者 撰稿者广泛使用 看到这里请不要被 标记 语言 所迷惑 Markdown 的语法十分简单 常用的标记符号也不超过十个 这种相对于更为复杂的HTML 标记语
  • Flutter开发之数据存储-2-文件存储(33)

    数据存储部分在移动开发中是非常重要的部分 无论是一些轻量级的数据 如用户信息 APP配置信息等 还是把需要长期存储的数据写入本地文件或者Sqlite3 都离不开数据存储 上一篇SharedPreferences的使用 今天就练习一下文件存储
  • python求平均数、方差、中位数

    CalStatistics py def getNum 获取用户不定长度的输入 nums iNumStr input 请输入数字 回车退出 while iNumStr nums append eval iNumStr iNumStr inp
  • java mysql差异导出_java 如何从零实现一个数据库差异对比工具?

    对比数据的痛苦 不知道你是否也像我一样 在快乐编写代码的时候 必须进行一些数据库的数据对比工作 诚然 一般的数据差异 比如是每一行的内容不同 市场上有比较成熟的 compare2 等对比工具 但是如果是对比数据的每一列是否相同 这个就会变得
  • 机器人教育和编程教育,家长纠结发问:该选哪一个?

    机器人教育和编程教育 家长纠结发问 该选哪一个 很多家长对于机器人教育和编程教育二者之间的关系都不太懂 究竟二者有何不同 学机器人和学编程有冲突吗 孩子要如何选择呢 我们来一一剖析 1机器人教育与编程教育的区别 涵盖范围不一 机器人教育 机
  • eclipse创建webapp 类型的maven项目

    Eclipse配置maven 配置maven的安装目录 打开Eclipse属性设置面板 Window gt Preferences gt Maven 展开Maven配置界面 选择Installations 如下图 add已经下载好的mave
  • 虚拟机配置之系统网络及防火墙配置

    1 查看网络IP和网关 一般不用修改 在此不作说明 2 配置网络IP地址 1 修改IP地址 root hadoop102 vim etc sysconfig network scripts ifcfg eth0 修改并添加为 3 配置主机名
  • C#中的数据库配置

    初用C 做项目的时候将数据库连接字符串放在注册表中 并且专门写一个窗体让用户能够修改 因为用户不可能自己到注册表中去设置 现在想来 其实没必要 在工程中添加新项 选择 应用程序配置文件 默认名是App config 里面的代码如下
  • PAT-1059 C语言竞赛

    1059 C语言竞赛 20 分 C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛 既然竞赛主旨是为了好玩 颁奖规则也就制定得很滑稽 0 冠军将赢得一份 神秘大奖 比如很巨大的一本学生研究论文集 1 排名为素数的学生将赢得最好的奖品 小黄
  • ECCV22 最新论文汇总(目标检测、图像分割、监督学习、GAN等)

    强烈感谢极市平台提供的论文资源 ECCV 2022 已经放榜 共有1629篇论文中选 录用率还不到20 为了让大家更快地获取和学习到计算机视觉前沿技术 作者对ECCV2022最新论文进行追踪 包括分研究方向的论文及代码汇总 本次更新的 EC
  • springboot在集成多数据源+mybatis-plus无法进行分页的BUG

    springboot在集成多数据源 mysql psql 解决多数据源mybatis plus无法进行分页的BUG 1 springboot在集成多数据源 1 1引入依赖 1 2配置yml文件 1 3创建config包 这个只要让Sprin
  • py 语法操作小计

    list只能加 a b set 只能减 a b parser 传参数 test py import argparse parser argparse ArgumentParser description Training GNN on Pa
  • Linux系统编程-终端、进程组、会话

    一 终端的概念 在UNIX系统中 用户通过终端登录系统后得到一个Shell进程 这个终端成为Shell进程的控制终端 Controlling Terminal 进程中 控制终端是保存在PCB中的信息 而fork会复制PCB中的信息 因此由S
  • 百度地图根据经纬度获取实际地理位置Api接口

    1 接口URL http api map baidu com reverse geocoding v3 ak 密钥 output json coordtype bd09ll location 33 35194364323275 117 39
  • 【附源码】单点登录的两种实现方式

    概念 单点登录 Single Sign On SSO 是一种身份验证服务 允许用户使用单个标识来登录多个应用程序或系统 如下图所示 用户只需要用户名 密码登陆一次就可以访问系统A 系统B和系统C 在传统的登录方式中 用户必须为每个应用程序或
  • 目录扫描,请求重发,漏洞扫描等工具的使用

    本专栏是笔者的网络安全学习笔记 一面分享 同时作为笔记 工欲善其事必先利其器 本篇讲解一些常用工具的使用 前文链接 WAMP DVWA sqli labs 搭建 burpsuite工具抓包及Intruder暴力破解的使用 用到的工具 bur
  • 7天学完Spring:AOP实战,SpringMVC统一处理

    目录 前言 一丶用户登录权限效验 lt 1 gt 最初用户登录验证 lt 2 gt Spring AOP 用户统一登录验证的问题 lt 3 gt 拦截器 拦截功能演示 lt 4 gt 拦截器原理 lt 5 gt 统一访问前缀添加 二丶统一异
  • 操作系统期末习题考试习题解答题目三

    操作系统期末习题考试习题解答题目三 目录 操作系统期末习题考试习题解答题目三 第八章 第九章 第八章 1 什么是文件 文件系统 文件系统有哪些功能 P198 答 在计算机系统中 文件被解释为一组赋名的相关字符流的集合 或者是相关纪录的集合