计算机操作系统试题 地址变换,计算机操作系统试题及答案汇编

《操作系统》考试试题

一、填空题(每空1分,共20分)

1.操作系统的功能有 ① 、 ② 、 ③ 、 ④ 和用户接口。 2.执行一次信号量S的P(S)操作,使信号s.value的值减1后,若s.value 的值为 ① 时,调用进程阻塞等待。

3. 在采用请求分页式存储管理的系统中,地址变换过程可能会因为在 ① 、 ② 和访问权限错误原因而产生中断。

4.有一串联文件由四个逻辑记录组成(其大小与磁盘块大小相等,均为512字节),分别存放在第180、15、68、212号磁盘上,存取文件第2000逻辑字节处的信息,要访问第 ① 块磁盘块。

5.设备分配程序分配外部设备时,先分配 ① ,再分配 ② ,最后分配 ③ 。

6.在分区分配算法中,首次适应算法倾向于优先利用内存中的 ① 部分的空闲分区,从而保留了内存 ② 部分的大空闲区。

7.设有四个作业同时到达,每个作业的执行时间均为2小时,它们在一台处理器上按单道方式运行,则平均周转时间为 ① ,带权周转时间为 ② 。

8.物理文件的非连续存储除了链接文件以外还有___① _文件。

9.移臂调度的目的是尽可能地减少输入输出操作中的 ① 。

10.死锁产生的4个必要条件有互斥条件、 ① 、 ② 和 ③ 。 二、选择题(选择最确切的一个答案,将其代码填入括号中,每空1分,共30分) 1.操作系统是扩充( )功能的第1层系统软件。 A.软件 B.裸机 C.机器语言 D.中断 2.不影响分时系统响应时间的是( )。

A.进程调度和对换的时间 B.分时用户的数目 C.分时用户所运行程序的特性 D.时间片的大小

3.当用户程序需要使用操作系统功能从磁盘读取执行的程序和数据时,首先要通过专门的指令完成( )。

A.从运行态到阻塞态的转换 B.进程从活动态到挂起态的转换 C.进程从用户态到系统态的转换 D.进程从系统态到用户态的转换 4.在批处理系统中,不属于作业管理程序任务的是( )。

A.按照调度算法在后备状态的作业中选择作业 B.为选中的作业创建相应进程 C.为选中的作业分配主存等系统资源 D.为作业对应的进程分配处理器 5.多个进程同时存在于一个系统内,能在同一时间段内运行,被称为进程的( )。 A.动态性 B.异步性 C.封闭性 D.并发性

6.为进程一次性分配其所需的资源是一种( )的方法,它能使系统不发生死锁。

A.死锁预防 B.死锁检测 C.死锁避免 D.死锁解除

7.某系统中预计有50个用户同时上机,为使每个用户能在2秒内得到响应,时间片最大限度应为( )。

A.20ms B.30 ms C.40 ms D.50 ms 8.以下不是存储管理处理的功能有( )。

A.为每个程序安排内存空间 B.决定哪个进程的程序和数据切换到内存中 C.保护运行程序不受干扰 D.将运行中程序的地址转换成物理地址

9.若一程序运行时独占系统全部资源,资源的状态只受该程序而改变,程序执行结果不受外界因素的影响,这是指( )。

A.程序顺序执行的顺序性 B.程序顺序执行的封闭性 C.程序顺序执行的可再现性 D.并发程序失去封闭性 10.( )是磁盘访问时间中占的比例最大。

A.寻找时间 B.旋转延迟时间 C.传输时间 D.周转时间 11.为了使系统中所有的用户都能得到及时的响应,该操作系统应该是( )。 A.多道批处理系统 B.分时系统 C.实时系统 D.网络系统 12.操作系统程序结构的主要特点是( )。

A.一个程序模块 B.分层结构 C.层次模块化结构 D. 子程序结构 13.在分页式虚拟存储系统中,页面的大小与可能产生的缺页中断次数( )。 A.成正比 B.成反比 C.无关 D.相同 14.在操作系统中,P、V操作是一种( )。

A.机器指令 B.系统调用命令 C.作业控制命令 D.低级进程通信原语 15.银行家算法在解决死锁问题中是用于( )的。

A.预防死锁 B.避免死锁 C.检测死锁 D.解除死锁 16.在采用SPOOLing技术的系统中,用户的打印结果首先被送到( )。 A.磁盘固定区域 B.内存固定区域 C.终端 D.打印机 17.可重定位内存分区分配目的为( )。

A. 解决碎片问题 B. 便于多作业共享内存 C. 回收空白区方便 D. 摆脱用户干预

18.索引式(随机)文件组织的一个主要优点是( )。 A. 不需要链接指针 B. 用户存取方便

C.回收实现比较简单 D.能实现物理块的动态分配 19.操作系统是通过( )对进程进行管理。

A. JCB B. PCB C. DCT D. CHCT 20.属于共享设备的是( )。

A.打印机 B.磁盘 C.用户终端 D.鼠标器 21.设备的打开、关闭、读、写等操作是由( )完成的。

A.用户程序 B.编译程序 C.设备分配程序 D.设备驱动程序 22.以下存储管理技术中,支持虚拟存储器的技术是( )。

A.动态分区法 B.可重定位分区法 C.请求分页技术 D.对换技术 23.磁盘访问中把数据从磁盘读出,或向磁盘写入数据所花费的时间叫做( )。 A.寻找指定柱面的时间 B.旋转延迟时间 C.周转时间 D.传输时间 24.属于内存连续分配方式的是( )。

A.固定分区分配方式 B.分段存储管理方式 C.分页存储管理方式 D.段页式存储管理方式

25.既适合于随机存取又可以顺序存取的文件物理结构是( )。

A.链接结构 B.索引结构 C.堆结构 D.直接结构

26.在C源程序中用printf( )格式输出语句在屏幕上显示信息,操作系统为它提供的是( )接口。

A.联机命令 B.脱机命令 C.程序 D.图形 27.适用于长度不变的文件物理结构是( )。

A.索引结构 B.链接结构 C.多重索引结构 D.连续结构 28.在( )的情况下不可能产生死锁的。 A.多道程序环境中系统资源有限

B.使用同类临界资源的并发进程随机交替运行 C.规定进程一旦得到了需要的所有资源才投入运行 D.就绪队列中已无等待的进程

29.处理器设计成两种执行状态:系统态和用户态,是为了( )。 A. 加快系统的运行速度 B. 实现系统程序的共享

C. 实现用户程序的保密 D. 防止用户程序对操作系统的破坏 30.文件系统中,( )利用二进制的一位来表示磁盘中一块的使用情况。 A.空白文件目录 B.位示图 C.空闲块链 D.空闲块成组链

三、问答题(每题6分,共30分)

1.下列问题应由哪一级调度程序负责?

(1) 发生时间片中断后,决定将处理机分给哪一个就绪进程? (2) 在短期繁重负荷情况下,应将哪个进程挂起?

(3) 一个作业运行结束后,从后备作业队列中选具备能够装入内存的作业?

2.什么是分页?什么是分段?二者主要有何区别?

3.在一个系统中,3个进程共享4台设备,这些设备是临界资源,假定每个进程至少需要两台设备,该系统是否会发生死锁,为什么?

4.实现SPOOLing技术系统需要付出哪些代价?

5.什么是文件的重名?如何解决重名问题?

四、综合题(70分) 1.(12分)假设有一个计算进程CP和一个打印进程PP,进程CP将计算结果送入由10个缓冲区组成的缓冲池,进程PP从该缓冲区中取出数据并打印。为实现进程同步,设置信号量SC、SP,送数指针in、 取数指针out。同步算法如下:

struct semaphore mutex=1, SC=10,SP=0; message buffers[10]; int in,out=0,0; message x,y;

cobegin

void CP( )

{ while (TRUE){ 计算下一个数据到x; ① ; ② ; buffers[in]=x; ③ ;

V(mutex);

④ ; } }

void PP( )

{ while (TRUE){ ⑤ ; ⑥ ; y=buffers[out]; ⑦ ;

V(mutex);

⑧ ; 打印y中的数据; } } coend 问:(1)指出信号量SC、SP初值的物理意义?

(2)要求打印进程打印的数据与计算进程计算的数据个数、次序完全一致,在括号

内填入有关的语句,完善程序。 2.(15分)系统中有5个进程P1,P2,P3,P4,P5如表。规定进程的优先数越小优先级越高。试描述在采用下述几种调度算法时各个进程运行过程,并计算采用每种算法的进程平均周转时间。假设忽略进程的调度时间。 (1)先来先服务调度算法; (2)短进程优先调度算法; (3)剥夺式优先级调度算法。

进程 P1 P2 P3 P4 P5

到达时刻 0 2 4 6 8 运行时间/ms 3 6 4 5 2 优先数 3 5 1 2 4 3.(18分)在一个采用分页式虚拟存储管理的系统中,有一用户作业,它依次要访问的字地址序列是:115,228,120,88,446,102,321,432,260,167。若分配给作业可使用的主存空间共300个字,作业的页面大小为100个字,且第0页已经装入主存,请回答下列问题:

(1)按FIFO页面调度娱乐城注册算法将产生多少次缺页中断?写出依次淘汰的页号。 (2)按LRU页面调度算法将产生多少次缺页中断?写出依次淘汰的页号。 4.(10分)在一个单 CPU 的计算机系统中,采用可剥夺式(也称抢占式)优先级的进程调度方案,且所有任务可以并行使用 I/O 设备。下表列出了三个任务 T1、T2、T3 的优先级、独立运行时占用 CPU 和 I/O 设备的时间。如果操作系统的开销忽略不计,画出三个任务的运行情况,并回答:

(1)这三个任务从同时启动到全部结束的总时间是多少? (2)整个过程中CPU 的空闲时间共有是多少?

任务 优先级 每个任务独立运行时所需的时间 T1 T2 T3

5.(15分)假设进程要读文件360000处字节偏移量,采用多重索引结构的文件系统,每个文件的索引表规定为13个索引项,前面10项直接记录物理块地址(直接寻址),第11,12,13项分别做1次间接寻址,2次间接寻址,3次间接寻址。假设每个磁盘块大小为1024B,且每个间接块容纳256个块号,请画出这个文件索引结构图。

高 中 低 对每个任务: 占用 CPU 10ms,I/O 13ms,再占用 CPU 5ms

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一、 课程设计目的 本课程设计是学生学习完《计算机操作系统》课程后,进行的一次全面的综合训练,通过课程设计,让学生更好地掌握操作系统的原理及实现方法,加深对操作系统基础理论和重要算法的理解,加强学生的动手能力。 二、课程设计的内容 1、分页方式的地址换算 2、分段方式的地址换算 3、段页式的地址换算 三、程序运行 1、 分页式地址转换: 数据: 逻辑地址:223、页面大小:23 2、 分段式地址转换 数据: 逻辑地址段号:223、段内地址:23 3、 段页式地址换算 逻辑地址的段号:2、页号:3 四、程序源代码 #include #include int page(int A,int L ); int Segment(int sn,int sl); int SegPagt(int sn,int pn,int pd); typedef struct segtable { int segf[256]; int segl[256]; }segtable; struct segtable st; typedef struct segpagt { int segf[256]; int segl[256]; int ptl[256]; int pt[256]; int pf[256]; int pl; }segpagt; struct segpagt sp; int main() { int code; int pl,pa,sn,sd,pd,pn; //const int ptl ; int temp; do{ printf("----------------地址换算过程----------------------------\n\n"); printf(" 1.分页式地址换算\n"); printf(" 2.分段式地址换算\n"); printf(" 3.段页式地址换算\n"); printf(" 4.结束运行\n\n"); printf("----------------------------------------------------------\n"); printf("请输入您的选择:"); scanf("%d",&code); switch(code) { case 1:{ printf("注意:请演示设定页表长度小于\n"); printf("请输入换算的逻辑地址:\n"); scanf("%d",&pa); printf("页面大小(B):\n"); scanf("%d",&pl); page(pa,pl); }break; case 2:{ printf("请演示设定段表长度小于\n"); printf("请输入逻辑地址的段号:\n"); scanf("%d",&sn); printf("段内地址:\n"); scanf("%d",&sd); Segment(sn,sd); }break; case 3:{ printf("预设定段表长为,页面大小为\n"); printf("请输入逻辑地址的段号:\n"); scanf("%d",&sn); printf("页号:\n"); scanf("%d",&pn); printf("页内地址:\n"); scanf("%d",&pd); SegPagt(sn,pn,pd); }break; case 4:{}break; } }while (code<4); } int page(int A,int L) { int d,P,kd,i; int WD; int PT[256]; for(i=1;iL) printf("页号大于页表长度,越界中断\n\n");//如果页号大于页表长度,输出越界中段 else { printf("页号=逻辑地址/页面大小=%d,页内地址=逻辑地址%页面大小=%d\n",P,d);//输出页号和页内地址 kd=PT[P];//根据页号随机产生快号 printf("根据页号%d得到块号%d\n",P,kd); WD=kd*L+d;//计算物理地址的公式 printf("物理地址=块号%d*页面大小%d+页内地址%d\n",kd,L,d);//输出物理地址=块号*页面大小+页内地址 printf("逻辑地址%d换算后的物理地址为%d\n\n",A,WD);//输出物理地址的结果 return (0); } }

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值