【操作系统不挂科】操作系统期末考试卷<3>(单选题&简答题&计算与分析题&应用题)

前言

大家好吖,欢迎来到 YY 滴 操作系统不挂科 系列 ,热烈欢迎! 本章主要内容面向接触过C++的老铁

目录

  • 一、单项选择题(每空2分,共40分)
    • [1.操作系统是提供了处理机管理、内存管理、( )管理和设备管理的软件。](#1.操作系统是提供了处理机管理、内存管理、( )管理和设备管理的软件。)
    • [2.多道程序设计技术是指( )。](#2.多道程序设计技术是指( )。)
    • [3.( )不是设计实时操作系统主要追求的目标。](#3.( )不是设计实时操作系统主要追求的目标。)
    • [4.操作系统的不确定性是指( )。](#4.操作系统的不确定性是指( )。)
    • [5. 下列选项中,在用户态执行的是( )](#5. 下列选项中,在用户态执行的是( ))
    • [6. 以下不属于衡量操作系统性能指标的是( )。](#6. 以下不属于衡量操作系统性能指标的是( )。)
    • [7. 以下关于父进程和子进程的叙述中,正确的是( )。](#7. 以下关于父进程和子进程的叙述中,正确的是( )。)
    • [8. 若信号量 S 的初值为 3,当前值为-1,则表示有( )等待进程。](#8. 若信号量 S 的初值为 3,当前值为-1,则表示有( )等待进程。)
    • [9. 在 Linux 系统中,若新建文件 A,随后文件 B 和 C 分别硬链和软链接到 A,A 文件的在 inode 节点中的计数是( )。](#9. 在 Linux 系统中,若新建文件 A,随后文件 B 和 C 分别硬链和软链接到 A,A 文件的在 inode 节点中的计数是( )。)
    • [10. 为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用( )技术。](#10. 为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用( )技术。)
    • [11. 把一个分区的存储管理技术用于系统时,可采用( )让多用户进程轮流进入主存储器执行。](#11. 把一个分区的存储管理技术用于系统时,可采用( )让多用户进程轮流进入主存储器执行。)
    • [12. 采用分段存储管理的系统中,若地址用 24 位表示,其中 8 位表示段号,则允许每段的最大长度是( )。](#12. 采用分段存储管理的系统中,若地址用 24 位表示,其中 8 位表示段号,则允许每段的最大长度是( )。)
    • [13. 在请求页式存储管理中,页表项中使用修改位的目的是( )。](#13. 在请求页式存储管理中,页表项中使用修改位的目的是( )。)
    • [14. 某计算机主存地址空间大小为 256MB,按字节编址。虚拟地址空间大小为 4GB,采用页式存储管理,页面大小为 4KB,TLB(快表)有 4 个页表项,内容如下表示。则对虚拟地址 03FF F180H 进行虚实地址变换的结果是( )。](#14. 某计算机主存地址空间大小为 256MB,按字节编址。虚拟地址空间大小为 4GB,采用页式存储管理,页面大小为 4KB,TLB(快表)有 4 个页表项,内容如下表示。则对虚拟地址 03FF F180H 进行虚实地址变换的结果是( )。)
    • [15. 用户程序发出磁盘 I/O 请求后,系统的正确处理流程是( )。](#15. 用户程序发出磁盘 I/O 请求后,系统的正确处理流程是( )。)
    • [16. 操作系统中的 SPOOLing 技术,实质是将( )转化为共享设备的技术。](#16. 操作系统中的 SPOOLing 技术,实质是将( )转化为共享设备的技术。)
    • [17. 在同一个进程的多个线程之间,下例哪项是不会被共享的?( )](#17. 在同一个进程的多个线程之间,下例哪项是不会被共享的?( ))
    • [18. 一组合作进程,执行顺序如图所示。若用信号量上的P、V操作算法实现进程间的同步操作,则最少需要( )信号量。](#18. 一组合作进程,执行顺序如图所示。若用信号量上的P、V操作算法实现进程间的同步操作,则最少需要( )信号量。)
    • [19. 某计算机系统中有10台打印机,由K个进程竞争使用,每个进程最多需要3台打印机,该系统不可能会发生死锁的K的最大值是( )。](#19. 某计算机系统中有10台打印机,由K个进程竞争使用,每个进程最多需要3台打印机,该系统不可能会发生死锁的K的最大值是( )。)
    • [20. 假设一个Linux系统已经在/path路径下挂载了一个文件系统。那么一个应用程序为了读取/path/to/file的第一个字节,必须额外访问( )个磁盘块。](#20. 假设一个Linux系统已经在/path路径下挂载了一个文件系统。那么一个应用程序为了读取/path/to/file的第一个字节,必须额外访问( )个磁盘块。)
  • 二、简答题(每小题4分,共12分)
  • [三、计算与分析题(1-3 每题 4 分,4-5 每题 3 分,共 18 分)](#三、计算与分析题(1-3 每题 4 分,4-5 每题 3 分,共 18 分))
    • [1、当前磁盘读写位于柱面号 10,初始向小磁道方向移动。此时有多个磁盘请求以下列柱面号顺序送至磁盘控制器:2、12、11、18、14、4、1、6。在寻道时,移动一个柱面需要3ms,按 LOOK 磁头臂调度算法,指出寻道次序并计算所需总的寻道时间。](#1、当前磁盘读写位于柱面号 10,初始向小磁道方向移动。此时有多个磁盘请求以下列柱面号顺序送至磁盘控制器:2、12、11、18、14、4、1、6。在寻道时,移动一个柱面需要3ms,按 LOOK 磁头臂调度算法,指出寻道次序并计算所需总的寻道时间。)
    • [2、从磁盘将一块数据传送到缓冲区所用时间为 120us,将缓冲区中数据传送到用户区所用时间为 50us,CPU 处理一块数据所用时间为 10us。如果有多块数据需要处理,并分别采用单缓冲区和双缓冲区结构传送某磁盘数据,则处理一块数据平均各需多少时间?给出计算过程。](#2、从磁盘将一块数据传送到缓冲区所用时间为 120us,将缓冲区中数据传送到用户区所用时间为 50us,CPU 处理一块数据所用时间为 10us。如果有多块数据需要处理,并分别采用单缓冲区和双缓冲区结构传送某磁盘数据,则处理一块数据平均各需多少时间?给出计算过程。)
    • [3、假定有 2 个进程,每个进程花费 80%的时间进行 I/O,20%的时间使用 CPU,每个进程启动时间和其需要进行计算的分钟数如下,不考虑进程切换时间,在多线程/进程环境下,系统的总响应时间是多少?给出求解过程。](#3、假定有 2 个进程,每个进程花费 80%的时间进行 I/O,20%的时间使用 CPU,每个进程启动时间和其需要进行计算的分钟数如下,不考虑进程切换时间,在多线程/进程环境下,系统的总响应时间是多少?给出求解过程。)
    • [4、FAT 文件系统的中有两个文件 FILE1 和 FILE2。首块编号和 FAT 表如下所示。回答下列问题:1)假定磁盘块的大小是 4KB,则两个文件最大是多少?2)FILE1 最小是多少字节?](#4、FAT 文件系统的中有两个文件 FILE1 和 FILE2。首块编号和 FAT 表如下所示。回答下列问题:1)假定磁盘块的大小是 4KB,则两个文件最大是多少?2)FILE1 最小是多少字节?)
    • [5、在 UNIX 操作系统中,给文件分配磁盘块采用的是混合索引分配方式。文件的索引结点(i-node)中具有 12 个直接块地址(每个直接块地址都直接指向一个数据块),以及一级、二级和三级间接索引。每个索引块和数据块的大小均为 8KB,块地址长度为 4 个字节。请回答:1)文件的大小是多大时,可以只用到索引结点的直接块?2)若一个文件大小为 100KB,不计目录项,请问该文件占用多大的磁盘空间?](#5、在 UNIX 操作系统中,给文件分配磁盘块采用的是混合索引分配方式。文件的索引结点(i-node)中具有 12 个直接块地址(每个直接块地址都直接指向一个数据块),以及一级、二级和三级间接索引。每个索引块和数据块的大小均为 8KB,块地址长度为 4 个字节。请回答:1)文件的大小是多大时,可以只用到索引结点的直接块?2)若一个文件大小为 100KB,不计目录项,请问该文件占用多大的磁盘空间?)
  • [四、程序分析题(每小题 2 分,共 10 分)](#四、程序分析题(每小题 2 分,共 10 分))
  • [五、综合应用题(每小题 6 分,共 18 分)](#五、综合应用题(每小题 6 分,共 18 分))
    • [1、有如下一组进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、CPU 执行时间如下表所示。若分别采用先来先服务、短作业优先和轮转(时间片=1)调度算法,画出各自的 Gantt图,回答每种调度算法的平均周转时间和平均等待时间。](#1、有如下一组进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、CPU 执行时间如下表所示。若分别采用先来先服务、短作业优先和轮转(时间片=1)调度算法,画出各自的 Gantt图,回答每种调度算法的平均周转时间和平均等待时间。)
    • [2、某请求页式存储管理允许用户空间为 32 个页面(每页 1KB),物理内存为 16KB,如有一个用户程序有 10 页长,且某时刻该用户进程的页表如下所示(其中"not valid"指该页不在物理内存中,数值均按十进制提供)。回答下列问题:1)指定页需要多少位?物理内存有多少块?2)如果程序执行时遇到以下两个虚拟地址(十六进制):0AC5H、1AC5H,试计算它们对应的物理地址。3)页表存放在内存中,对内存的一次存取需要 1.5us,对 TLB 的查找时间忽略。试问上题中的两个地址访问共耗费多少时间?](#2、某请求页式存储管理允许用户空间为 32 个页面(每页 1KB),物理内存为 16KB,如有一个用户程序有 10 页长,且某时刻该用户进程的页表如下所示(其中“not valid”指该页不在物理内存中,数值均按十进制提供)。回答下列问题:1)指定页需要多少位?物理内存有多少块?2)如果程序执行时遇到以下两个虚拟地址(十六进制):0AC5H、1AC5H,试计算它们对应的物理地址。3)页表存放在内存中,对内存的一次存取需要 1.5us,对 TLB 的查找时间忽略。试问上题中的两个地址访问共耗费多少时间?)
    • [3、考虑下面的页面引用串:3、2、3、1、4、3、5、4、2、3、4、3假设使用 3 个帧的请求调页,分别采用先进先出(FIFO)、最近最少使用(LRU)、时钟(CLOCK)三种页面置换算法,在下表中填写各算法物理帧的内容,回答缺页次数并计算缺页率。](#3、考虑下面的页面引用串:3、2、3、1、4、3、5、4、2、3、4、3假设使用 3 个帧的请求调页,分别采用先进先出(FIFO)、最近最少使用(LRU)、时钟(CLOCK)三种页面置换算法,在下表中填写各算法物理帧的内容,回答缺页次数并计算缺页率。)

一、单项选择题(每空2分,共40分)

1.操作系统是提供了处理机管理、内存管理、( )管理和设备管理的软件。

A. 用户

B. 软件

C. 数据

D. 文件

  • D

2.多道程序设计技术是指( )。

A. 在实时系统中并发运行多个程序

B. 在分布系统中同一时刻运行多个程序

C. 在一台处理机上同一时刻运行多个程序

D. 在一台处理机上并发运行多个程序

  • D

3.( )不是设计实时操作系统主要追求的目标。

A. 安全可靠

B. 及时响应

C. 资源利用率

D. 快速处理

  • C

4.操作系统的不确定性是指( )。

A. 程序运行结果的不确定性

B. 程序运行次序的不确定性

C. 程序中线程个数的不确定性

D. 都不对

  • B

5. 下列选项中,在用户态执行的是( )

A. 进程调度程序

B. 缺页中断程序

C. Shell(如 Bash)

D. 定时器

  • C

6. 以下不属于衡量操作系统性能指标的是( )。

A. 作业的大小

B. 资源利用率

C. 吞吐量

D. 周转时间

  • A

7. 以下关于父进程和子进程的叙述中,正确的是( )。

A. 父进程创建了子进程,因此父进程运行完了,子进程才能运行

B. 父进程和子进程可以并发执行

C. 撤销子进程时,应该同时撤销父进程

D. 撤销父进程时,应该同时撤销子进程

  • B

8. 若信号量 S 的初值为 3,当前值为-1,则表示有( )等待进程。

A.0 个

B. 1 个

C. 2 个

D. 3 个

  • B

9. 在 Linux 系统中,若新建文件 A,随后文件 B 和 C 分别硬链和软链接到 A,A 文件的在 inode 节点中的计数是( )。

A.1

B. 2

C. 3

D. 都不对

  • B

10. 为了保证一个程序在主存中改变了存放位置之后仍能正确执行,则对主存空间应采用( )技术。

A. 静态重定位

B. 动态重定位

C. 动态分配

D. 静态分配

  • B

11. 把一个分区的存储管理技术用于系统时,可采用( )让多用户进程轮流进入主存储器执行。

A.存储技术

B.虚拟存储技术

C.覆盖技术

D.交换技术

  • D

12. 采用分段存储管理的系统中,若地址用 24 位表示,其中 8 位表示段号,则允许每段的最大长度是( )。

A.28

B.216

C.224

D.232

  • B

13. 在请求页式存储管理中,页表项中使用修改位的目的是( )。

A. 实现 LRU 置换算法

B. 实现 FIFO 算法

C. 在快表中检查页面是否进入

D. 检查页面是否最近被写过

  • D

14. 某计算机主存地址空间大小为 256MB,按字节编址。虚拟地址空间大小为 4GB,采用页式存储管理,页面大小为 4KB,TLB(快表)有 4 个页表项,内容如下表示。则对虚拟地址 03FF F180H 进行虚实地址变换的结果是( )。

A.015 3180H

B. 003 5180H

C. TLB 缺失

D. 缺页

  • A

15. 用户程序发出磁盘 I/O 请求后,系统的正确处理流程是( )。

A.用户程序→系统调用处理程序→中断处理程序→设备驱动程序

B.用户程序→设备驱动程序→系统调用处理程序→中断处理程序

C.用户程序→设备驱动程序→中断处理程序→系统调用处理程序

D.用户程序→系统调用处理程序→设备驱动程序→中断处理程序

  • B

16. 操作系统中的 SPOOLing 技术,实质是将( )转化为共享设备的技术。

A. 共享设备

B. 独占设备

C. 脱机设备

D. 块设备

  • B

17. 在同一个进程的多个线程之间,下例哪项是不会被共享的?( )

A. 全局变量

B. 静态变量

C. 局部变量

D. 打开的文件

  • C

18. 一组合作进程,执行顺序如图所示。若用信号量上的P、V操作算法实现进程间的同步操作,则最少需要( )信号量。

A.3

B. 4

C. 5

D. 6

  • C

19. 某计算机系统中有10台打印机,由K个进程竞争使用,每个进程最多需要3台打印机,该系统不可能会发生死锁的K的最大值是( )。

A. 3

B. 4

C. 5

D. 6

  • B

20. 假设一个Linux系统已经在/path路径下挂载了一个文件系统。那么一个应用程序为了读取/path/to/file的第一个字节,必须额外访问( )个磁盘块。

A. 5

B. 6

C. 7

D. 8

  • C

二、简答题(每小题4分,共12分)

1、简述进程与线程的关系和区别。

  1. 线程是进程内的一个执行单元(或可调度的实体)
  2. 一个进程至少有一个线程
  3. 线程不能单独运行,只能包含在进程中执行
  4. 线程与进程一样有生命期及执行的上下文
  5. 线程共享进程的所有资源
  6. 进程创建时,同时建立第一个线程
  7. 同一进程的线程切换不会引起进程切换,不同进程的线程切换,会引起进程切换
  8. 进程内所有线程结束时,进程结束

2、简述下图虚拟内存管理典型页表项各域的作用。

  • 答案:

3、考虑下图单行桥上的死锁问题。写出死锁的四个必要条件,并给出预防死锁的解决方案

  • 答案:
    死锁的四个必要要求:互斥条件、占有和等待条件、不可抢占条件、循环等待条件
    解决方案:
    1) 每次只让一个方向的车通过(红绿灯)。破坏"占有和等待"或"循环等待条件"。
    2) 再加一座桥。破坏"互斥条件。

三、计算与分析题(1-3 每题 4 分,4-5 每题 3 分,共 18 分)

1、当前磁盘读写位于柱面号 10,初始向小磁道方向移动。此时有多个磁盘请求以下列柱面号顺序送至磁盘控制器:2、12、11、18、14、4、1、6。在寻道时,移动一个柱面需要3ms,按 LOOK 磁头臂调度算法,指出寻道次序并计算所需总的寻道时间。

  • 柱面访问顺序:(10)--6--4--2--1--11---12--14--18
    移动距离:(10-1)+(18-1)=26
    总寻道时间:26*3=78ms

2、从磁盘将一块数据传送到缓冲区所用时间为 120us,将缓冲区中数据传送到用户区所用时间为 50us,CPU 处理一块数据所用时间为 10us。如果有多块数据需要处理,并分别采用单缓冲区和双缓冲区结构传送某磁盘数据,则处理一块数据平均各需多少时间?给出计算过程。

  • 1)单缓冲区:
    (120+50+10)-10=170us
    2)双缓冲区:
    (120+50+10)-50-10=120us

3、假定有 2 个进程,每个进程花费 80%的时间进行 I/O,20%的时间使用 CPU,每个进程启动时间和其需要进行计算的分钟数如下,不考虑进程切换时间,在多线程/进程环境下,系统的总响应时间是多少?给出求解过程。

4、FAT 文件系统的中有两个文件 FILE1 和 FILE2。首块编号和 FAT 表如下所示。回答下列问题:1)假定磁盘块的大小是 4KB,则两个文件最大是多少?2)FILE1 最小是多少字节?

FILE1 分配块:2-->3-->6-->8,共 4 块。

FILE2 分配块:7,共 1 块

1) FILE1 最大:44KB=16KB;
FILE2 最大:1
4KB=4KB

2)FILE1 最小:34KB+1B=131024+1=3073B

5、在 UNIX 操作系统中,给文件分配磁盘块采用的是混合索引分配方式。文件的索引结点(i-node)中具有 12 个直接块地址(每个直接块地址都直接指向一个数据块),以及一级、二级和三级间接索引。每个索引块和数据块的大小均为 8KB,块地址长度为 4 个字节。请回答:1)文件的大小是多大时,可以只用到索引结点的直接块?2)若一个文件大小为 100KB,不计目录项,请问该文件占用多大的磁盘空间?

1)文件小于:10*4KB=40KB

2)文件数据占 13 块,i-node 占 1 块,一级间接索引占 1 块,共 13+1+1=15 块。

四、程序分析题(每小题 2 分,共 10 分)

1、分析下列实现二个线程互斥的代码。哪个线程会先进入临界区?这种方案存在什么问题?

1)B 线程先进临界区

2)处于非临界区的线程执行会阻塞想进入临界区的线程。

2、指出下列实现互斥的 Peterson 解决方案中存在的错误。

线程 0 中:

while(flag[1] || turn == 1) ; 改为:while(flag[1] && turn == 0);

flag[1]=FALSE;改为 flag[0]=FALSE;

线程 1 中:while(flag[0] || turn==0); 改为:while(flag[0] && turn == 1);

flag[0]=FALSE;改为 flag[1]=FALSE;

3、指出下列生产者-消费者问题代码中存在的错误。

生产者中:up(&full);up(&mutex);改为:up(&mutex);up(&full);

消费者中:up(&empty ;up(&mutex);改为:up(&mutex);up(&empty);

4、分析下列代码,共创建了多少个进程(包括运行程序本身的进程)?

6 个

5、下列创建线程的代码中,运行到标号 1、2 和 3 时,从当前代码判断存在几个线程?

标号 1: 1 线程

标号 2: 2 线程

标号 3: 1 线程

五、综合应用题(每小题 6 分,共 18 分)

1、有如下一组进程,其就绪时刻(指在该时刻已经在就绪队列中就绪)、CPU 执行时间如下表所示。若分别采用先来先服务、短作业优先和轮转(时间片=1)调度算法,画出各自的 Gantt图,回答每种调度算法的平均周转时间和平均等待时间。

  • 答案:


2、某请求页式存储管理允许用户空间为 32 个页面(每页 1KB),物理内存为 16KB,如有一个用户程序有 10 页长,且某时刻该用户进程的页表如下所示(其中"not valid"指该页不在物理内存中,数值均按十进制提供)。回答下列问题:1)指定页需要多少位?物理内存有多少块?2)如果程序执行时遇到以下两个虚拟地址(十六进制):0AC5H、1AC5H,试计算它们对应的物理地址。3)页表存放在内存中,对内存的一次存取需要 1.5us,对 TLB 的查找时间忽略。试问上题中的两个地址访问共耗费多少时间?

3、考虑下面的页面引用串:3、2、3、1、4、3、5、4、2、3、4、3假设使用 3 个帧的请求调页,分别采用先进先出(FIFO)、最近最少使用(LRU)、时钟(CLOCK)三种页面置换算法,在下表中填写各算法物理帧的内容,回答缺页次数并计算缺页率。

  • 答案:
相关推荐
塞尔维亚大汉4 小时前
OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【时间管理】
操作系统·harmonyos
Once_day7 小时前
Linux之kernel(1)系统基础理论(2)
linux·操作系统·kernel
TT-Kun1 天前
Linux | 系统调用
linux·运维·操作系统
ThisIsClark1 天前
【linux】xargs命令的使用方法详解
linux·运维·chrome·操作系统
韩曙亮2 天前
【系统架构设计师】操作系统 - 进程管理 ① ( 进程概念 | 进程组成 | 进程 与 程序 | 进程 与 线程 | 线程 可共享的资源 - ☆考点 )
操作系统·线程·进程·软考·进程管理·程序·系统架构设计师
塞尔维亚大汉2 天前
OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)【中断及异常处理】
操作系统·harmonyos
塞尔维亚大汉2 天前
OpenHarmony(鸿蒙南向开发)——小型系统内核(LiteOS-A)
操作系统·harmonyos
沢田纲吉3 天前
Linux 学习加油站(1)
linux·操作系统·命令行
塞尔维亚大汉3 天前
OpenHarmony(鸿蒙南向开发)——轻量系统内核(LiteOS-M)【Shell】
操作系统·harmonyos
MuYe3 天前
Android Hook - dl_iterate_phdr()增强
android·操作系统