Download presentation
Presentation is loading. Please wait.
Published by袋超 蒲 Modified 8年之前
1
计算机系统平台练习
2
1. 现代计算机的五大组成部分 2. 单道批处理系统和多道批处理系统有何区 别? 3. 实现补码二进制计算( 8 位,最高位为符号 位) -7+(-65) 96+(-72)
3
1. 冯 · 诺依曼结构:运算器、控制器、存储器、 输入 / 输出设备 2. 内存中装入的程序数量、 I/O 中断时的处理 3. -7+(-65)=11111001 2 +10111111 2 =10111000 2 =-72 96+(-72)=01100000 2 +10111000 2 =00011000 2 =24
4
4. 利用 8421 码计算 6+2 8+4 5. (4A82) 16 /2 10 =? (3A) 16 *2 9 +(5B) 16 =?
5
5. (4A82) 16 =0100 1010 1000 0010 (3A) 16 *2 9 +(5B) 16 =011 1010 000000000+0 0101 1011 4.6 + 2 = 8 0110 + 0010 1000 8 + 4 = 12 1000 + 0100 1100 + 0110 1 0010 = 12
6
6. 两浮点数 x = 2 01 ×0.1101 , y = 2 11 ×(-0.1010) 。假设尾数在计算机中以补码表示,可存 储 4 位尾数,阶码以原码表示,采用 0 舍入 ,求 x+y 。
7
① 转换为浮点数 x = 0001 00.1101 , y = 0011 11.0110 ② 对阶(向高阶对齐) x = 0011 00.001101 , y = 0011 11.0110 ③ 尾数求和 x+y=0011 11.100101 ④ 尾数规格化(符号位与最高位需不同,左移 ) x+y=0010 11.001010 ⑤ 尾数舍入 x+y=0010 11.0010 ⑥ 尾数和阶数是否溢出(符号位 11 或 00 ) x+y=2 10 *(-0.1110)
8
7. 若某计算机要求有如下形式的指令:三地 址指令 6 条,单地址指令 127 条,零地址指 令 8 条 ( 不要求有二地址指令 ) 。设指令字长 为 12 位,每个地址码长为 3 位,试用扩展操 作码为其编码。
9
三地址指令: 000/001/010/011/100/101 XXX XXX XXX 单地址指令: 110 000 000~111 111 110 XXX 零地址指令: 111 111 111 000~111
10
8. 车站售票厅,最多可容纳 20 名购票者。当 售票厅中少于 20 人时,厅外的购票者可立 即进入,否则需在外面等待。把每个购票 者看作一个进程。 1 )写进程同步; 2 )若 所有购票者共 n 人,则信号量可能的变化范 围是什么?
11
8 、售票厅 Semaphore space=20; Process pi(i=1,2,…) { wait(space); 进入售票厅 ; 购票 ; 退出售票厅 ; signal(space); } Main() { cobegin { pi(); }
12
9. 复印室里有一个操作员为顾客复印资料, 有 5 把椅子供顾客休息等待复印。如果没有 顾客,则操作员休息。当顾客来到复印室 时,如果有空椅子则坐下来,并唤醒操作 员;如果没有空椅子则必须离开复印室。
13
9 、复印室打印 信号量说明: – Customers 表示正在等待复印的顾客数量(不包 括正在复印的顾客) – Operator 记录正在等待顾客的操作员数,只有 1 和 0 – Mutex 用于对 waiting 的访问 变量说明: – Waiting 表示等待的顾客数量,与 customers 的值 相等,为了解决不能读取信号量当前值的问题
14
Semaphore customers=0, operator=0, mutex=1; Waiting=0; Process operator() // 操作员进程 { while(1) { wait(customers);// 等待顾客到来 复印 ; signal(operator);// 通知顾客已复印 }
15
Process customeri() // 顾 客进程 i { 进入复印室 ; wait(mutex); if (waiting<5) { waiting++; signal(customers); signal(mutex); wait(operator); wait(mutex); waiting--; signal(mutex); } else signal(mutex); 离开复印室 ; }
16
Main() { cobegin { operator(); customeri(); }
17
10. 做饭可以使用电饭煲或者普通的锅,使用 操作系统的观点解释为什么使用电饭煲做 饭比较好。 11. 为什么文件在同一个分区内移动比不同分 区间移动快? 12. 哪些情况下会出现 I/O 通道繁忙?
18
10. 做饭可以使用电饭煲或者普通的锅,使用 操作系统的观点解释为什么使用电饭煲做 饭比较好。 – 思路:类似 DMA 的优点 11. 为什么文件在同一个分区内移动比不同分 区间移动快? – 改变文件目录 / 磁盘 IO 12. 哪些情况下会出现 I/O 通道繁忙? – 复制文件、内存不足、高速下载、病毒、程序 读写文件 …
19
13. 包含下述 5 条语句的程序段: S1 : A 1 =πr 1 2 , S2 : A 2 =πr 2 2 , S3 : A=A 1 -A 2 , S4 : L=2π(r 1 +r 2 ) , S5 : π=3.14 ,其中 r 1 和 r 2 是常 量。画出语句执行的前趋图,并利用信号 量同步方式描述该前趋图
20
Semaphore s1,s2,s3,s4,s5=0; Main() { Cobegin { {wait(s5); A 1 =πr 1 2 ; signal(s1);} {wait(s5); A 2 =πr 2 2 ; signal(s2);} {wait(s1); wait(s2); A=A 1 -A 2 ;} {wait(s5); L=2π(r 1 +r 2 );} {π=3.14; signal(s5); signal(s5); signal(s5);} }
21
14.S1:a=b+c, S2:b=c+d, S3:c=d+e, S4:d=e+1, S5:e=2 。用信号量描述前趋关系。
22
14 、 S1:a=b+c, S2:b=c+d, S3:c=d+e, S4:d=e+1, S5:e=2 。 用信号量描述前趋关系。 Semaphore s1=0,s2=0,s3=0,s4=0,s5=0; Process P1() { wait(s2); a=b+c; } Process P2() { wait(s3); b=c+d; signal(s2); } Process P3() { wait(s4); c=d+e; signal(s3); } Process P4() { wait(s5); d=e+1; signal(s4); }
23
Process P5() { e=2; signal(s5); } Main() { cobegin { P1(); P2(); P3(); P4(); P5(); }
24
15. 进程 A 、 B 、 C 、 D 、 E 需要的执行时间为 10 、 6 、 20 、 7 、 3 分钟,其中进程 A 要求必须在 20 分钟内完成,求 5 个进程的最短平均等待 时间 16. 内存的存储管理方式分为分段、分页和段 页式,问:哪些管理方式会产生外部碎片? 哪些管理方式会产生内部碎片?说明原因。 17. 一个程序可以细分成多个进程,问:进程 是否可以再做细分?如果能,请说明细分 的好处;如果不能,请说明进程的优点。
25
15.EBADC(0+3+9+19+26)/5=11.4 16. 分页和段页式会产生内部碎片,原因是按 页分配空间,页面大小固定,最后一页或 者段内最后一页可能存不满。分段会产生 外部碎片,原因是存储空间分割时可能会 产生小碎片无法分配给任何一个段。 17. 进程可以细分为线程,线程利用所处进程 的资源信息,不需要频繁保存和装载,节 省调度时间。
26
18. 实时系统任务 A 每 10 秒执行一次,每次执 行需要 3 秒;任务 B 每 20 秒执行一次,每次 执行需要 7 秒;任务 C 每 60 秒执行一次,每 次执行需要 20 秒。问是否存在一种合理的 调度策略保证 3 个周期任务的正常执行。
27
– 3/10+7/20+20/60<1
28
19. 说明三角债有可能产生死锁,并给出解决 策略 20. 逻辑地址转换为物理地址时如何防止越界 访问? 21. 描述操作系统中程序和文件从创建、使用 到删除的全过程 22. 内存需要依次访问以下页面: 5 、 1 、 0 、 1 、 4 、 7 、 6 、 5 、 6 、 5 、 7 、 0 、 4 ,内存能保 存 3 个页面,求 FIFO 、 LRU 、 CLOCK 的缺页 率
29
19. 说明三角债有可能产生死锁,并给出解决 策略 – 甲:占有 A 资源,申请 B 资源 – 乙:占有 B 资源,申请 C 资源 – 丙:占有 C 资源,申请 A 资源 – 具备死锁的四个必要条件:互斥、请求和保持、 不可抢占、循环等待 20. 逻辑地址转换为物理地址时如何防止越界 访问? – 段号、页号、页内偏移
30
21. 描述操作系统中程序和文件从创建、使用 到删除的全过程 – 创建:确定分区、地址空间、文件目录 – 使用:内存 / 虚拟内存、进程 / 线程、 CPU 调度 、文件读写、 I/O – 删除:释放空间 22. 内存需要依次访问以下页面: 5 、 1 、 0 、 1 、 4 、 7 、 6 、 5 、 6 、 5 、 7 、 0 、 6 ,内存能 保存 3 个页面,求 FIFO 、 LRU 、 CLOCK 的缺 页率 – 9/13 , 9/13 , 9/13
31
23.CPU 执行一段程序时, cache 完成存取的次 数为 1900 次,主存完成存取的次数为 100 次,已知 cache 存取周期为 50ns ,主存存取 周期为 250ns ,求 cache/ 主存系统的效率和 平均访问时间。 24. 一个总线周期并行传送 4 个字节,一个总线 周期等于一个时钟周期,总线时钟频率为 66MHz ,求总线带宽。
32
23.t a =(1900*50+100*250)/(1900+100)=60ns e=50/60=83.3% 24.66*4=264MB/s
33
25. 磁盘有 6 片盘片,每片 2 个记录面,最上最 下两个面不记录,存储区域内径 22cm ,外 径 33cm ,道密度 40 道 /cm ,内层位密度 400 位 /cm ,转速 2400 转 / 分。求磁盘容量。 26. 在分页内存管理系统中,假设采用 16 位地 址,分页大小为 2048B ,页表中第 0~7 项对 应的块号分别是 11 、 7 、 0 、 21 、 3 、 8 、 14 、 1 ,求逻辑地址( 16 进制表示) 2691h 和 1A53h 对应的物理地址。写出计算过程。
34
25. 3.14×22×400 × (33 - 22)/2 × 40×(6×2 - 2) = 7598800B 26.2048=2 11 ,即页内偏移为 11 位低地址,页 号为 5 位高地址。 2691h: 0010 0110 1001 0001 ,逻辑页号为 00100 ,对应物理块号为 3 ,故物理地址为 0001 1110 1001 0001 ,即 1E91h 1A53h: 0001 1010 0101 0011 ,逻辑页号为 00011 ,对应物理块号为 21 ,故物理地址 为 1010 1010 0101 0011 ,即 AA53h
35
27. 假设一个硬盘空间采用位图法管理盘块, 采用连续分配的方式给每个文件分配盘块 。硬盘大小为 4MB ,盘块大小为 64KB ,位 图用 16 进制表示是: 0FF0000000000000 。 现在需要使用首次适应算法依次为大小为 300KB 、 100KB 的文件分配硬盘空间,问: 这两个文件的基址分别是多少?分配后的 位图是什么?
36
CFFF 8000 0000 0000 基址: 768KB , 0KB
37
28. 一台机器有 1.5G 内存,其中操作系统自身 占用 0.5GB 低地址内存,剩余的内存采用伙 伴系统。如果有以下五个进程依次申请内 存空间,分别需要占用 512M 、 128M 、 64M 、 128M 、 256M 空间,求系统给每个 进程分配的内存地址空间位置,并对分配 过程进行说明。
38
P1:512M~1024M , P2:1024M~1152M , P3:1152M~1216M , P4:1280M~1408M , P5 :内存空间不足,需要将现有 P1~P4 中的任 意一个进程交换到虚拟内存中才能存放。
39
29. 在 Windows 操作系统中,经常使用 CTRL+C/V/X 的组合键作为复制、粘贴和剪 切的快捷键,问:复制粘贴文件时,操作 系统应当在按下 CTRL+C 时,还是在按下 CTRL+V 时申请硬盘空间?剪切粘贴文件时 ,操作系统又该如何申请硬盘空间?
40
CTRL+V 时申请硬盘空间,因为 CTRL+C 时只 确定了待复制的文件, CTRL+V 时确定了文 件应该复制到的卷以及在卷中文件系统中 的具体位置,此时才可能在具体位置所属 的硬盘中申请空间。剪切粘贴时,若文件 的原位置和移动位置处于同一个卷,则只 需要修改文件系统中文件所在的目录,否 则需要在新位置申请硬盘空间,在移动完 成后还需要释放原位置的硬盘空间。
Similar presentations