可变分区存储管理(2012)

合集下载

第四章 复习题 计算机操作系统概论复习资料习题答案

第四章 复习题  计算机操作系统概论复习资料习题答案

第四章复习题一、单项选择题1. 在可变分区存储管理中,若采用最先适应分配算法宜将空闲区按(B)次序登记在空闲区表中。

A. 地址递减B. 地址递增C. 长度递减D. 长度递增2. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。

A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业3. 不适宜采用虚拟存储管理技术的存储管理方式是(D)。

A. 页式B. 段式C. 段页式D. 可变分区4. 在多道程序设计系统中,采用了页式存储管理。

如果允许并行工作的道数为n(n>1),则系统中同时建立的页表数一定为(C)。

A. 1B. nC. <=nD. n+15. 在单用户连续存储管理中,可供用户使用的主存区域起始地址存放在(B)。

A. 基址寄存器B. 界限寄存器C. 限长寄存器D. 相联寄存器6. 重定位的含义是(C)。

A. 把主存中的一个程序从一个区域重新定位到另一个区域B. 把绝对地址转换成逻辑地址C. 把逻辑地址换砖成绝对地址D. 把辅助存储器中的程序定位到主存的某个区域7. 在分页式存储管理中,逻辑地址由页号和页内地址两部分组成。

因而,分页的工作是在(C)时进行的。

A. 用户编制程序B. 地址转换C. 操作系统装入作业D. 系统初始化8. 采用固定分区存储管理的计算机系统中(D)的做法是错误的。

A. 为作业分配的分区不能小于作业长度B. 可同时在多个分区中各装一个作业C. 不允许多个作业同时存放在一个分区中D. 一个分区中可同时装入多个作业9. 在分页式虚拟存储管理中,若发现所要访问的页面不在主存储器中,则硬件要产生一个(C)中断。

A. I/OB. 缺段C. 缺页D. 访管10. 主存储器的每个存储单元都有一个地址与其对应,假定这些地址用n个二进制位来区分,则主存储器的容量为(D)。

A. 2n个字B. 2n-1个字C. 2n-1个字节D. 2n个字节11. LRU页面调度算法总是选择(C)页面调出。

操作系统_复习_判断题

操作系统_复习_判断题

操作系统_复习_判断题(T)1.CPU和通道的关系是主从关系,CPU是主设备,通道是从设备。

T(T)2.Linu某操作系统属于多用户多任务操作系统。

T(F)3.LRU页面淘汰算法会出现Belady异常现象。

(F)4.LRU页面调度算法总是选择在主存中驻留时间最长的页面淘汰。

F(FIFO)(F)5.P、V操作是可以被中断的原语操作。

F(T)6.SPOOLing系统由专门负责I/O的的进程以及输入、输出井组成。

T(T)7.UNI某的最大特点是分时、多用户、多任务和倒树型文件结构。

T(F)8.按优先数调度算法,处于运行状态的进程的优先级是所有进程中最高的。

(T)9.按最先适应算法分配的分区与作业要求的存储容量最接近。

T(F)10.并发性是指若干个事件在不同时刻发生。

F(F)11.并发性是指若干个事件在一定的时间段内交替发生。

F(F)12.不同的进程必然对应于不同的程序F(F)13.采用分页存储技术可以将逻辑上独立的代码装入一段连续的物理内存。

(T)14.采用静态资源分配方法可以预防死锁的发生。

T (T)15.操作系统“生成”是指能产生最适合用户自己工作环境的操作系统内核。

(T)16.操作系统对系统的资源的利用率越高,用户越满意。

T(F)17.操作系统是一种工具软件。

T(T)18.操作系统中的缓冲池主要是通过硬件来实现的。

T(F)19.操作系统中用于创建子进程的原语是在用户态下完成的。

T(T)20程序的并发执行必然导致资源共享和资源竞争。

T(F)21.磁盘上的文件必须以记录单位进行读写。

F(F)22.磁盘上的文件都是以记录单位进行读写的。

F(F)23.磁盘上的文件以记录单位读写。

F(F)24.磁盘是共享设备,多个进程可在同一时刻对其访问。

F()25.磁盘是共享设备,每一个时刻可以有多个进程与磁盘交换信息。

(F)26.磁盘移臂调度的目标是使磁盘的旋转周数尽可能小。

F(F)27.当进程数大于资源数时,进程竞争资源必然产生死锁。

操作系统练习题3 -4

操作系统练习题3 -4

操作系统练习题3-4章一、判断题1. ( )系统发生死锁时,其资源分配图中必然存在环路。

因此,如果资源分配图中存在环路,则系统一定出现死锁。

2.( )虚拟存储器是由操作系统提供的一个假想的特大存储器,它并不是实际的内存,其大小比内存空间大得多。

3.( )操作系统的所有程序都必须常驻内存。

4.( )通过任何手段都无法实现计算机系统资源之间的互换。

5. ( )一旦出现死锁, 所有进程都不能运行。

6. ( )所有进程都挂起时, 系统陷入死锁。

7. ( )优先数是进程调度的重要依据, 一旦确定不能改变。

8. ( )虚拟存储系统可以在每一台计算机上实现。

9. ( )在虚存系统中, 只要磁盘空间无限大, 作业就能拥有任意大编址空间。

10. ( )在内存为M的分时系统中, 当注册的用户有N个时,每个用户拥有M/N 的内存空间。

11. ( )大多数虚拟系统采用OPT(优化)淘汰算法是因为它确实可以得到最小的缺页率。

12. ( )在作业调度时, 采用最高响应比优先的作业调度算法可以得到最短的作业平均周转时间。

13. ( )在请求页式存储管理中, 页面淘汰所花费的时间不属于系统开销。

14. ( )进程优先数是进程调度的重要依据, 必须根据进程运行情况动态改变。

15. ( )参与死锁的所有进程都占有资源。

16. ( )页式存储管理中, 用户应将自己的程序划分成若干相等的页。

17. ( )存储保护的目的是限制内存的分配。

18. ( )在页式虚拟存储系统中, 页面长度是根据程序长度动态地分配的。

19. ( )系统处于不安全状态不一定是死锁状态。

20.有m个进程的操作系统出现死锁时, 死锁进程的个数为1<k≤m。

21. ( )优先数是进程调度的重要依据, 优先数大的进程首先被调度运行。

22. ( )所谓最近最少使用(LRU)页面调度算法是指将驻留在内存中使用次数最少的页面淘汰掉。

23. ( )由于现代操作系统提供了程序共享的功能,所以要求被共享的程序必须是可再入程序。

操作系统习题(附参考答案)

操作系统习题(附参考答案)

操作系统习题(附参考答案)一、单选题(共100题,每题1分,共100分)1、下列存储器中,速度最快的是()。

A、内存B、寄存器C、CacheD、磁盘正确答案:B2、时钟中断事件属于()中断事件。

A、程序B、自愿性C、外部D、输入/输出正确答案:C3、可变分区存储管理系统中,若采用最佳适应分配算法,“空闲区表”中的空闲区可按()顺序排列。

A、大小从大到小B、大小从小到大C、地址从大到小D、地址从小到大正确答案:B4、从静态的角度看,下列选项中哪一个是进程必须拥有而程序所没有的?()A、常量数据B、全局变量C、进程控制块D、代码正文正确答案:C5、()不是管程的组成部分。

A、对局部于管程内的数据结构设置初始值的语句B、对管程内数据结构进行操作的一组过程C、局部于管程的共享数据结构D、管程外过程调用管程内数据结构的说明正确答案:D6、下列关于父进程和子进程的叙述中,正确的是()。

A、子进程执行完了,父进程才能执行B、父进程创建了子进程,因此父进程执行完了,子进程才能执行C、撤销子进程时,应该同时撤销父进程D、撤销父进程时,应该同时撤销子进程正确答案:D7、某计算机系统中有8台打印机,有K个进程竞争使用,每个进程最多需要3台打印机。

该系统可能会发生死锁的K的最小值是()。

A、3B、4C、2D、5正确答案:B8、分页虚拟存储管理系统中,若采用FIFO页面置换算法,则当分配的物理页面数增加时,缺页中断的次数()。

A、减少B、可能增加也可能减少C、增加D、不变正确答案:B9、产生内存抖动的主要原因是()。

A、内存空间太小B、CPU运行速度太慢C、CPU调度算法不合理D、页面置换算法不合理正确答案:D10、()存储管理兼顾了段式在逻辑上清晰和页式在存储管理上方便的优点。

A、分页B、段页式C、可变分区D、分段正确答案:B11、发生死锁的必要条件有四个,要预防死锁的发生,可以破坏这四个必要条件,但破坏()条件是不太实际的。

计算机操作系统(习题集)第四章 答案

计算机操作系统(习题集)第四章 答案

第四章存储器管理一、单项选择题1、存储管理的目的是(C )。

A.方便用户B.提高内存利用率C.方便用户和提高内存利用率D.增加内存实际容量2、在( A)中,不可能产生系统抖动的现象。

A.固定分区管理B.请求页式管理C.段式管理D.机器中不存在病毒时3、当程序经过编译或者汇编以后,形成了一种由机器指令组成的集合,被称为(B )。

A.源程序B.目标程序C.可执行程序D.非执行程序4、可由CPU调用执行的程序所对应的地址空间为(D )。

A.符号名空间B.虚拟地址空间C.相对地址空间D.物理地址空间5、存储分配解决多道作业[1C]划分问题。

为了实现静态和动态存储分配,需采用地址重定位,即把[2C]变成[3D],静态重定位由[4D]实现,动态重定位由[5A]实现。

供选择的答案:[1]:A 地址空间 B 符号名空间 C 主存空间 D 虚存空间[2]、[3]: A 页面地址 B 段地址 C 逻辑地址 D 物理地址 E 外存地址 F 设备地址[4]、[5]: A 硬件地址变换机构 B 执行程序 C 汇编程序D 连接装入程序E 调试程序F 编译程序G 解释程序6、分区管理要求对每一个作业都分配(A )的内存单元。

A.地址连续B.若干地址不连续C.若干连续的帧D.若干不连续的帧7、(C )存储管理支持多道程序设计,算法简单,但存储碎片多。

A.段式B.页式C.固定分区D.段页式8、处理器有32位地址,则它的虚拟地址空间为( B)字节。

A.2GBB.4GBC.100KBD.640KB9、虚拟存储技术是( A)。

A.补充内存物理空间的技术B.补充相对地址空间的技术C.扩充外存空间的技术D.扩充输入输出缓冲区的技术10、虚拟内存的容量只受( D)的限制。

A.物理内存的大小B.磁盘空间的大小C.数据存放的实际地址D.计算机地址字长11、虚拟存储技术与(A )不能配合使用。

A.分区管理B.动态分页管理C.段式管理D.段页式管理12、(B )是指将作业不需要或暂时不需要的部分移到外存,让出内存空间以调入其他所需数据。

操作系统第四章习题

操作系统第四章习题

一、选择1. 可变分区存储器管理系统中,若采用最佳适应分配算法,“空闲区表”中的空闲区可按( A )顺序排列。

A.长度递增B.长度递减C.地址递增D.地址递减2. 虚拟存储技术是—B—。

A. 扩充内存物理空间技术B. 扩充内存逻辑地址空间技术C.扩充外存空间技术D. 扩充I/O缓冲区技术3. 很好地解决了“零头”问题的存储管理方法是—A—。

A.分页存储管理方法B.分段存储管理方法C.多重分区管理D.可变式分区管理4. 系统“抖动”现象的发生是由—B—引起的。

A.交换的信息量过大B.置换算法选择不当C.内存容量不足D.请求分页管理方案5. 虚拟存储管理系统的基础是程序的—C—理论。

A. 全局性B. 虚拟性C. 局部性D. 动态性6. 分页系统中页面是为( B )的。

A、用户所感知B、操作系统所感知C、编译系统所感知D、连接装配程序所感知7.下列—A—存储方式不能实现虚拟存储器。

A.分区B.页式C.段式D.段页式8. 操作系统处理缺页中断时,选择一种好的调度算法对内存和外存中的信息进行高效地调度,尽可能避免—D—。

A. 碎片B.CPU空闲C. 多重中断D. 抖动9. 分页式存储管理的主要特点是—C—。

A. 要求处理缺页中断B. 要求扩充内存容量C. 不要求作业装入到内存的连续区域D. 不要求作业全部同时装入内存10. LRU页面调度算法淘汰—B—的页。

A. 最近最少使用B. 最近最久未使用C. 最先进入内存D. 将来最久使用11.虚拟存储器实际容量受—B—限制。

A.物理内存大小B.计算机的地址结构C.磁盘容量D.数据存放的绝对地址12. 分区管理要求对每一个作业都分配—A—的内存单元。

A. 地址连续B. 若干地址不连续C. 若干连续的页D. 若干不连续的帧13.页面置换算法中—A—不是基于程序执行的局部性理论。

A.先进先出调度算法B. LRUC. LFUD.最近最不常用调度算法14. 在存储管理中,采用覆盖与交换技术的目的是—A—。

可变分区存储管理

可变分区存储管理

沈阳工程学院学生实验报告(课程名称:操作系统)实验题目:可变分区存储管理班级计算机131 学号********** 姓名杨光成地点实训F608 指导教师吕海华王黎明实验日期: 2015 年 5 月19 日cin>>flag;free(flag);}else if(choice==0) break; //退出else //输入操作有误{cout<<"输入有误,请重试!"<<endl;continue;}}}图12、分配主存(如图2)Status alloc(int ch)}}图23、首次适应(如图3)Status First_fit(int request){//为申请作业开辟新空间且初始化DuLinkList temp=(DuLinkList)malloc(sizeof(DuLNode));temp->data.size=request;temp->data.state=Busy;DuLNode *p=block_first->next;while(p){if(p->data.state==Free && p->data.size==request)图34、最佳适应(如图4和图5)Status Best_fit(int request){int ch; //记录最小剩余空间DuLinkList temp=(DuLinkList)malloc(sizeof(DuLNode));temp->data.size=request;temp->data.state=Busy;DuLNode *p=block_first->next;DuLNode *q=NULL; //记录最佳插入位置while(p) //初始化最小空间和最佳位置{if(p->data.state==Free && (p->data.size>=request) ){q->prior=temp;q->data.address+=request;q->data.size=ch;return OK;}return OK;}图4图55、最差适应(如图6)Status Worst_fit(int request){int ch; //记录最大剩余空间DuLinkList temp=(DuLinkList)malloc(sizeof(DuLNode));temp->data.size=request;temp->data.state=Busy;DuLNode *p=block_first->next;DuLNode *q=NULL; //记录最佳插入位置while(p) //初始化最大空间和最佳位置{if(p->data.state==Free && (p->data.size>=request) )q->prior->next=temp;q->prior=temp;q->data.address+=request;q->data.size=ch;return OK;}return OK;}图6图76、主存回收和显示主存分配情况(如图8)Status free(int flag){DuLNode *p=block_first;for(int i= 0; i <= flag; i++)if(p!=NULL)p=p->next;elsereturn ERROR;p->data.state=Free;if(p->prior!=block_first && p->prior->data.state==Free)//与前面的空闲块相连{cout<<"++++++++++++++++++++++++++++++++++++++++++++++\n\n";DuLNode *p=block_first->next;cout<<"分区号\t起始地址\t分区大小\t状态\n\n";while(p){cout<<" "<<flag++<<"\t";cout<<" "<<p->data.address<<"\t\t";cout<<" "<<p->data.size<<"KB\t\t";if(p->data.state==Free) cout<<"空闲\n\n";else cout<<"已分配\n\n";p=p->next;}cout<<"++++++++++++++++++++++++++++++++++++++++++++++\n\n"; }图8。

(完整版)操作系统复习题答案

(完整版)操作系统复习题答案

一、基本概念1 用户使用操作系统提供的操作接口操作计算机,常见的操作接口有:终端命令、图形用户接口、和( ④ )。

① 高级指令② 宏命令③ 汇编语言④作业控制语言2 操作系统在执行系统调用时会产生一种中断,这种中断称为(④)。

① 外中断② I/O中断③ 程序性中断④ 访管中断3 在下列操作中,不会引起处理器模式转换的操作是(④).①中断② 键盘命令③ 系统调用④ 程序调用4 ( ④)中断事件是正在运行的进程所期待的自愿中断事件。

① 程序② I/O③ 时钟④访管5 当用户程序执行访管指令时,系统( ④)。

① 维持在目态② 维持在管态③ 从管态到目态④从目态到管态注:管态又叫核心态;目态又叫用户态。

6 从作业提交到作业完成的时间间隔是(②)。

① 响应时间②周转时间③ 运行时间④ 等待时间7 既考虑作业等待时间,又考虑作业运行时间的调度算法是(④)。

① 优先数调度② 先来先服务③ 短作业优先④最高响应比优先8 有三个作业J1,J2,J3同时提交,其运行时间分别是a、b、c且a〈b〈c。

系统按单道程序方式运行且采用短作业优先调度算法,则平均周转时间是(④)。

① a+b+c ② 2(a+b+c) ③ a+2b+3c ④ 3a+2b+c注:原题"④3a+2b+t3”应改为”④3a+2b+c”9 以下选项中何种处理不属于系统内核的范围( ④ )。

① 进程调度② 执行原语③执行外设基本操作④命令解释10 在同步控制中,所谓的临界区是指(③ )。

① 一个缓冲区② 一段共享数据区③ 一段程序④ 一个互斥的硬件资源11 创建I/O进程一般是在( ②)。

① 系统调用时②系统初启时③ 有设备中断时④ 输入输出时12 一个进程被唤醒意味着( ④ )。

①进程重新占有CPU并变为运行状态②进程保持等待状态③ 进程PCB移到等待队列首部④ 进程变为就绪状态注:原题漏掉第2选项。

13 在下列事件中不立即进入进程调度程序进行调度的是(④)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。



四、算法思想

算法实现 分配:查空闲分区链表 回收:考虑邻接合并 实验过程:输入操作命令代码
1. 分配:输入作业号及作业长度(已建立作业不重 复建立) 2. 回收:输入作业号(不存在作业不释放空间) 3. 可查看空闲链表情况(检测分配、回收正确性) 4. 可查看作业表情况(检测分配、回收正确性)
七、书写实验报告
1)
2) 3) 4)
5)
实验题目 实验算法思想 算法流程 实验运行情况分析 (至少针对两组输入数据) 实验体会(总结)
六、实验步骤
消化实验算法程序
组织上机实验数据
第一组:指定(见下页)
第二组:自定(要求能测试各种情形)
输入上机程序,编译,运行,记录各操
作步骤的运行结果(通过显示空闲分区 链表及作业表)。
指定操作数据 (设内存总空闲容量为640K)
1.
分配作业1(80k),作业3(30k),作业8(50k),

例:新建作业8,长度为90k,(输入8 => n,90 => l) 查空闲分区链表,分区3够分配,一分为二。
空闲链表修改情况如下:
内存及作业表情况见前图(红线所示)
回收程序(freem()函数)
有四种情形(假定回收区首地址 => addr,长度 => length)
1.
空闲分区链表空,或不与任何空闲区邻接 => 分配新结点空间,存入回收作业首地址及长度 插入空闲分区链(链首,链中,链尾) 回收分区与后一空闲分区相邻接 => 进行后邻接合并 例:回收作业7空间(addr+length = 分区4首地址) 修改分区4首地址及分区大小(qaddr = addr; qsize = qsize+length;) 合并后空闲分区链表情况如下:
作业5(140k),作业9(50k),作业6(100k), 作业4(50k)
2.
观察(记录)空闲表及作业表情况
3.
4. 5. 6. 7.
回收作业8,观察结果
分配作业7(80k),观察结果 回收作业6, 回收作业1, 观察结果 分配作业10(120k),观察运行情况 回收作业7,作业3,作业5,观察各次结果
五、算法流程
主程序(main()函数) 分配程序(allocm()函数) 回收程序(freem()函数) 显示空闲分区链表及作业表程序
(printlink()及printtab()函数)
主 程 序 ( ( ) 函 数 ) main

分 配 程 序 ( allocm ( ) 函 数
三、数据结构

空闲分区链表
结点结构:
分区首地址 分区大小 链接指针 addr size next
struct linkk { int size; int addr; struct linkk * next; } struct linkk *PL;

作业表(记录作业情况)
jno 作业号 addr 内存地址 size flag 作业长度 标志
操作系统上机实验
——存储管理
操作系统上机实验
一、实验题目
可变化理解模拟管理程序,了解 存储器的分配与回收过程,体会相关数 据结构在实现管理算法中的重要性。
输入一到两组实验数据,观察分配 与回收的处理结果,特别是回收时邻接 空闲分区的合并处理,检测其算法的正 确性。
2.
3.
回首分区与前一空闲分区相邻接 例:作业4释放空间,与分区3合并 合并后空闲分区链情况如下:
4.
回收分区与前同时又与后空闲分区相邻接 => 需进行三个分区合并,并删除一个空闲分区结点 例:回收作业7后再回收作业4空间
注:除了修改空闲分区链表,还要修改作业表(清除flag标志)
显示空闲分区链表及作业表程序 (printlink()及printtab()函数) =>上述三函数由学员自己画出流程图。
静态数组实现




struct jobtab { int jno; int size; int addr; int flag; }
struct jobtab tab[20];
例:内存分配情况 (假定总容量为640k)
空闲分区链表情况
作业表情况
0 1 2 3 4 5 6 7 8 9 80k 450k 160k 500k 350k 300k 30k 50k 140k 80k 90k 50k 0 0 0 1 1 1 0 1 1 1
相关文档
最新文档