导航菜单
首页 >  操作系统概论自考真题百度网盘  > 自考 02326 操作系统 简答题、综合题分类汇总解析

自考 02326 操作系统 简答题、综合题分类汇总解析

以下是博主个人整理的从2018年到2020年的新版操作系统大题,如果有纰漏请您指正,如果转载请指明出处,如果对您有帮助请点赞支持。

第一类【知识点】磁盘高速缓存-记录的成组

201804T35

假定某系统中,磁带的记录密度为每英寸800个字符,每个逻辑记录长为160个字符,块与块之间的间隙为0.5英寸。现有600个逻辑记录需要存储到磁带上,请问:

(1)如果不采用成组操作,磁带空间的利用率是多少?

(2)在采用6个逻辑记录为一组的成组操作时,磁带空间的利用率是多少?

【答案】

(1)不采用成组操作,每个逻辑记录需要占用的磁带长度=160/800=0.2英寸,块与块之间的间隙为0.5英寸。故磁带空间的利用率为0.2/(0.2+0.5)=28.57%

(2)采用成组操作时,6个记录的长度是160×6=960,所占磁带长度=960/800=1.2英寸,磁带空间的利用率=1.2/(1.2+0.5)=70.59%。

【解析】

记录的成组是把若干个逻辑记录合成一组存储到一个物理块的工作,称为记录的成组。记录的分解是从一组记录中把一个逻辑记录分离出来的操作,称为记录的分解。

记录的成组其优点是:提高了磁盘利用率,减少了启动磁盘的次数,提高系统工作效率。

在本题中,磁带空间的利用率和存储的密度及块与块之间的间隙相关,记录不成组时,存储的密度小,磁带利用率低,记录成组时,存储的密度大,磁带利用率高。利用率跟存储多少记录无关,比如存600个记录,计算时不需要使用。

201810T35

假定某系统中,磁带的记录密度为每英寸1200个字符,每个逻辑记录长为200个字符,块与块之间的间隙为0.5英寸。请问,为了使磁带空间利用率达到70%,采 用记录成组操作时的块因子应为多少?

【答案】

设块因子为 x。

每条记录所占磁带空间为 200/1200 = 1/6 英寸 , 则 (x * 1/6)/ (x*1/6 + 0.5) = 0.7  解方程可得 x = 7

所以,成组操作时,块因子应该为 7。

【解析】

没什么好说的,上一题的逆过程。

第二类 【知识点】磁盘调度策略-信息的优化分布

201810T39

假定某磁盘的旋转速度是每圈48ms,格式化后每个盘面被分成8个扇区,现有8 个逻辑记录存储在同一磁道上,安排如下所示:

处理程序要顺序处理以上记录,每读出一个记录后要花12ms的时间进行处理,然后再顺序读下一个记录并进行处理。请问:

(1)顺序处理完这8个记录总共花费了多少时间?

(2)现对记录进行优化分布,使处理程序能在最短时间内处理完这10个记录。请给出记录优化分布的示意图,并计算所需时间。

【答案】

(1)(6+12)*8 + 36*7 = 396ms

(2)记录优化分布如下(或画示意图):

所需要时间为:8*(6+12)=144ms 。

【解析】

由转盘转速可知,读一个记录需要花48/8=6ms的时间,当花了6ms的时间读出第一个记录,并花费12ms时间进行处理后,第4个记录的位置已经旋转到读写磁头下面。为了顺序处理第2个记录,必须等待磁盘把第2个记录旋转到读写磁头位置下面,即要(8-2)*6=36ms的延迟时间,除去第1个记录,其他的都遵循此规律,故处理这8个记录所花时间为(6+12)*8 + 36*7 = 396ms。

优化后,当读出一个记录并对之处理完毕后,读写磁头正好处于需要独处的下一个记录位置上,这样可以立即读出该记录而没有延迟时间,故优化后所花费的时间为8*(6+12)=144ms 。

第三类【知识点】UNIX的三级索引结构

201904T39

某UNIX操作系统釆用i结点管理文件的存储空间,假设磁盘块大小为2048字节,每个地址占64位(8个字节),i结点包括13个地址项,其中10个地址用来存直接地址,一个地址项存一次间接地址,一个地址项存二次间接地址,一个地址项存三次间接地址。请问,系统能管理的单个文件最大长度是多少?

【答案】

10 个直接地址表示的文件大小为:10 × 2KB = 20KB

一个一次间接地址,每个盘块大小为 2048B,每个地址项占 8 个字节,所以每个硬盘块中可以存放 2048 / 8= 256 个盘块号(或叫簇),所以能存放的文件大小为:256×2KB = 512KB

一个二次间接地址,共能存放 256×256 个盘块号,能存放的文件大小为:256×256×2KB = 128MB

一个三次间接地址,共能存放256×256个盘块号,能存放的文件大小为:256×256×256×2KB = 32GB

所以一个文件的最大长度 = 20KB + 512KB + 128MB + 32GB

【解析】

参考图如下

201910T39

某UNIX操作系统采用i结点管理文件的存储空间,假设i结点包括13个地址项,其中10个地址用来存直接地址,一个地址项存一重间接地址,一个地址项存二重间接地址,一个地址项存三重间接地址。每个磁盘块地址占64位(8个字节),磁盘块大小为2048字节,如果要存取某文件的字节偏移量是1260000,请问,需要读取几次硬盘?请写出中间过程。

【答案】

1260000 / 2048 = 615.234 因此地址在第 615 个盘块中。

去掉 10 个直接地址 615 – 10 = 605

一个一重间接地址,每个盘块大小为 2048 字节,每个地址项占 8 个字节,所以每个簇中可以存放 256 个盘块号,605 – 256 = 349

一个二重间接地址,能存放 256 个一重间接地址,第一个一重间接地址,放 256 个盘块号,所以是放在第二个一重间接地址中。

所以,需要先读取该文件的 i 结点的盘块,访问一次一重间接地址的盘块,访问一次二 重间接地址的盘块,再访问 1260000 地址的盘块,所以,共需要访问磁盘 4 次。

【解析】

同上

第四类【知识点】虚拟页式存储地址转换过程-转换检测缓冲区(TLB)

202008T38

在虚拟页式存储系统中,其页表(单级页表)存放在内存中。 (1)如果一次物理内存访问需要150ns,试问实现一次页面访问至少需要的存取时间是多少?

(2)如果系统有快表(TLB),快表的命中率为90%,查询一次快表的时问为30ns,试问此时实现一次页面访问平均存取时间为多少?

(3)采用快表后的平均存取时间比没有采用快表时下降了百分之几?

【答案】

(1)150 * 2 = 300ns

(2)( 150 + 30 )* 90% + ( 150 + 150 ) * 10% = 192 ns (此处是采取教材上默认的情况:TLB查找与内存查找并行,实际考试中请自己辨别,目前这个解法是和答案一致的)

(3)( 300 - 192 ) / 300 * 100% = 36%

【解析】

①明确访存过程

通常访问内存的过程分为两步,

第一步:访问内存,查找页表及其对应框,形成物理地址 第二步:访问内存,根据物理地址,计算实现对内存单元的访问,读写数据或指令

②理解快表快在哪里

快表:为提高CPU访存速度,用来存放最近被访问过的页表项(类似浏览器的经常访问网页记录)

因此免除了从头到尾挨个访问内存的过程,只在快表中查找即可,访存速度大大提高 也就是针对上述第一步访问内存,查找页表的效率进行了提升

③进行有无快表访存速度的比较

无快表:两次访问内存

有快表 (命中率为N且访问TLB与访问内存并行) :{ ( 两次访问内存 ) × ( 1-N ) + (一次访问内存 + 一次访问快表) × N }

有快表 (命中率为N且访问TLB失败后才访问内存) :{ ( 两次访问内存 + 一次访问快表 ) × ( 1-N ) + ( 一次访问内存 + 一次访问快表 ) × N }

相关推荐: