本书为《计算机操作系统教程》(第二版)配套教材,提供了丰富的习题解答与解析,帮助读者深入理解操作系统的原理和机制。
1. 计算机硬件将处理机分为管态与目态两种状态,这对设计安全可靠的操作系统有何益处?答:通过引入管态和目态这两种运行模式来保护操作系统免受用户程序干扰或破坏。通常情况下,操作系统在管态下执行所有指令;而用户程序则只能使用非特权指令,在目态下运行。如果企图从目态直接调用仅限于管态的指令,则会触发中断机制,由系统终止该操作以确保系统的安全。
2. 何为特权指令?举例说明,并解释若允许用户执行此类指令会产生什么后果?
答:只能在管态环境下被执行的机器级命令被称为特权指令。例如开关中断、置程序状态寄存器等均为特权指令。如果授权给用户使用这些特殊权限,那么不仅会干扰当前运行的应用,还可能影响整个系统的正常运作。
3. 中断向量的位置是硬件还是软件决定?
答:在Intel 80x86 CPU中,内存空间0x00000到0x003ff被预留给中断向量使用。因此中断向量地址是由硬件确定的固定位置。
4. 确定中断向量内容的是操作系统还是用户程序?
答:由系统负责填写,包括指向特定处理例程的位置以及该子程序执行所需的环境参数(如状态字)等信息。
5. 中断时应如何设置处理器的状态位?为什么需要这样做?
答:必须将其设为管态。因为这是运行特权指令所必需的模式,确保可以正确响应中断事件并进行必要的系统操作或处理。
6-12题:
(3) 进程与设备之间存在并发性。例如,在一个计算任务执行的同时,打印机能够独立完成文档打印工作。
(4) 处理器和通道程序可同时运行。当CPU正在从事复杂运算时,相应的I/O通道可以并行处理数据传输等外围操作。
(5) 不同的通信信道之间也可以并发运作。在系统中存在多个通讯路径,它们能各自独立地执行预定任务而互不影响。
(6) 各种外设间亦可进行平行作业。比如磁带机可以在打印机打印文件的同时读取或写入数据。
13. 从透明性和资源共享的角度分析网络操作系统和分布式操作系统的区别?
答:在资源利用方面,后者具有优势,因为它允许计算任务跨机器迁移以实现负载均衡;而在用户感知层面,则是前者更胜一筹——即在网络环境中人们可以清楚地辨别出所访问的设备位置。
14. 为什么构成一个分布式的计算机系统需要主机之间相互兼容?
答:为了保证程序能够在不同硬件平台上顺利转移和执行,确保整个系统的稳定性和高效性。不一致的操作环境会导致进程迁移失败进而影响分布式计算的效果。
15. 嵌入式操作系统为何倾向于采用微内核架构?
答:嵌入式系统通常资源有限且应用特定性强,因此其核心功能被精简为最基本的部分如调度、内存管理等,并通过插件形式灵活扩展以适应各种应用场景。