ICS第七章习题答案.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《ICS第七章习题答案.pdf》由会员分享,可在线阅读,更多相关《ICS第七章习题答案.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、习题1.给出以下概念的解释说明。CPU的控制流正常控制流异常控制流进程逻辑控制流物理控制流并 发(concurrency)并 行(parallelism)多任务时间片进程的上下文系统级上下文用户级上下文寄存器上下文进程控制信息上下文切换内核空间用户空间内核控制路径异常处理程序中断服务程序故 障(fault)陷 阱(trap)陷阱指令终 止(abort)中断请求信号中断响应周期中断类型号开中断/关中断可屏蔽中断不可屏蔽中断断点程序状态字寄存器程序状态字向量中断方式中断向量中断向量表异常/中断查询程序中断描述符表I/O 中断时钟中断处理器中断现场信息I/O 中断服务程序中断服务例程系统调用系统调用
2、号系统调用处理程序系统调用服务例程2.简单回答下列问题。(1)引起异常控制流的事件主要有哪几类?(2)进程和程序之间最大的区别在哪里?(3)进程的引入为应用程序提供了哪两个方面的假象?这种假象带来了哪些好处?(4)“一个进程的逻辑控制流总是确定的,不管中间是否被其他进程打断,也不管被打断几次或在哪里被打断,这样,就可以保证一个进程的执行不管怎么被打断其行为总是一致的。”计算机系统主要靠什么机制实现这个能力?(5)在进行进程上下文切换时,操作系统主要完成那儿项工作?(6)在 IA-32/Linux系统平台中,一个进程的虚拟地址空间布局是怎样的?(7)简述异常和中断事件形成异常控制流的过程。(8)
3、调试程序时的单步跟踪是通过什么机制实现的?(9)在异常和中断的响应过程中,CPU(硬件)要保存一些信息,这些信息包含哪些内容?(1 0)在执行异常处理程序和中断服务程序过程中,(软件)要保存一些信息,这些信息包含哪些内容?(1 1)普通的过程(函数)调用和操作系统提供的系统调用之间有哪些相同之处?有哪些不同之处?(1 2)在 IA-32中,中断向量表和中断描述符表各自记录了什么样的信息?3.根据下表给出的4 个进程运行的起、止时刻,指出每个进程对P1P2、P 1-P 3、P 1-P 4、P2P3、P3一P 4 中的两个进程是否并发运行?参考答案:P 1和 P2并发;P1和 P3并发;P1和 P
4、4并发;P2和 P3并发;P3和 P 4并发。进程开始时刻结束时刻P117P246P338P4254.假设在IA-32/linux系统中-个maui函数的C 语言源程序P 如下:1 unsigned short b2500;2 unsigned short k;3 main()4 5 b1000=1023;6 b2500=2049%k;2497 b l 1 0 0 0 0 J=2 0 0 0 0;8 )经编译、链接后,第5、6和7行源代码对应的指令序列如下:1m o v w$0 x 3 f f,0 x 8 04 9 7 d 0/b 1 000=1 02 32m o v w0 x 8 04 a
5、3 2 4,%c x/R c x =A:3m o v w$0 x 8 01,%a x/R L a x J=2 04 94x o r w%d x,%d x/R d x =O5d i v%c x/R l d x =2 04 9%J t6m o v w%d x,0 x 8 04 a 3 2 4/b 2 5 00=2 04 9%i t7m o v w$0 x 4 e 2 0,0 x 8 04 d e 2 0/b 1 0000=2 0000假设系统采用分页虚拟存储管理方式,页大小为4KB,第1行指令对应的虚拟地址为0 x 8 04 8 2 c 0,在运 行P对应的进程时,系统中没有其他进程在运行,回答下
6、列问题。(1)对于上述7条指令的执行,是否可能在取指令时发生缺页异常?(2)执 行 第1、2、6和7行指令时,在访问存储器操作数的过程中是否会发生页故障或其他什么问题?哪些指令中的问题是可恢复的?哪些指令中的问题是不可恢复的?分别画出第1行 和 第7行指令所发生故障的处理过程示意图。(3)执行第5条指令时会发生什么故障?该故障能否恢复?参考答案:因为L i n u x在初始化时,通常将所有段的段基址都设为0,所以,虚拟(逻辑)地址就是线性地址。(1)第1行指令的虚拟地址为0 x 8 04 8 2 c 0,其线性地址为O x 8 O 4 8 2 c O,而页大小为4KB,因此,第1行指令不是一个
7、页面的起始地址,所以,在执行第1行指令前面的指令时,上述7条指令被同时装入主存,因而,上述7条指令的执行过程中都不会在取指令时发生缺页。(2)执 行 第1行指令过程中,数据访问时会发生缺页,但是是可恢复的故障。因为,对于地址为0 x 8 04 9 7 d 0的b 1 000的访问,是对所在页面(起始地址为0 x 8 04 9 000,是一个4KB页面的起始位置)的第一次访问,因而对应页面不在主存。当CPU执行到该指令时,检测到缺页异常,即发生了页故障,此时,CPU暂 停P对应的用户进程的执行,将控制转移到操作系统内核,调出内核中的“页故障处理程序”执行。在页故障处理程序中,检查是否地址越界或访
8、问越权,显然这里没有发生越界和越权情况,故将地址0 x 8 04 9 7 d o所在页面从磁盘调入内存,处理结束后,再回到这条m o v l指令重新执行,此时,再访问数据就没有问题了。处理过程如下图所示。页故障80482c0:movl$0 x3ff,0 x80497d0OS的页故障处理程序用户讲程返回到故障指令执行装入起始虚拟地址为0 x8049000所在页面到主存,并修改页表对于第2行指令的执行,数据访问时会发牛缺页,因为在地址0 x 8 04 a 3 2 4位于起始地址为0 x 8 04 a 000的页面中,对地址0 x 8 04 a 3 2 4的访问是该页的第一次访问。与第1行指令的数据
9、访问一样,是可恢复的故障。对于第6行指令的执行,数据访问时不会发生缺页,因为地址0 x 8()4 a 3 2 4所在的页面(其起始地址为0 x 8 04 a(X)0的页面)一经在主存中。但是,该指令的执行会破坏原来存放在地址0 x 8 04 a 3 2 4中的变量k的值。对于第7行指令的执行,数据访问时很可能会发生页故障,而且是不可恢复的故障。显然,a 1 0000并不存在,不过,C编译器生成了对应的指令“m o v l$0 x 4 e 2 0.0 x 8 04 d e 2 0”,其中的地址0 x 8 04 d e 2 0偏离数组首地址0 x 8 04 9 00()已达2 x 1 0000+2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ICS 第七 习题 答案
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内