习题二1.操作系统中为什么要引入进程的概念
为了实现并发进程之间的合作和协调,以及保证系统的安全,操作系统在进程管理方面要做哪些工作
答:(1)为了从变化的角度动态地分析研究可以并发执行的程序,真实地反应系统的独立性、并发性、动态性和相互制约,操作系统中就不得不引入“进程”的概念;(2)为了防止操作系统及其关键的数据结构,受到用户程序有意或无意的破坏,通常将处理机的执行状态分成核心态和用户态;对系统中的全部进程实行有效地管理,其主要表现是对一个进程进行创建、撤销以及在某些进程状态之间的转换控制,2.试描述当前正在运行的进程状态改变时,操作系统进行进程切换的步骤
答:(1)就绪状态→运行状态
处于就绪状态的进程,具备了运行的条件,但由于未能获得处理机,故没有运行
(2)运行状态→就绪状态
正在运行的进程,由于规定的时间片用完而被暂停执行,该进程就会从运行状态转变为就绪状态
(3)运行状态→阻塞状态
处于运行状态的进程,除了因为时间片用完而暂停执行外还有可能由于系统中的其他因素的影响而不能继续执行下去
3.现代操作系统一般都提供多任务的环境,试回答以下问题
(1)为支持多进程的并发执行,系统必须建立哪些关于进程的数据结构
答:为支持进程的并发执行,系统必须建立“进程控制块(PCB)”,PCB的组织方式常用的是链接方式
(2)为支持进程的状态变迁,系统至少应该供哪些进程控制原语
答:进程的阻塞与唤醒原语和进程的挂起与激活原语
(3)当进程的状态变迁时,相应的数据结构发生变化吗
答:创建原语:建立进程的PCB,并将进程投入就绪队列
;撤销原语:删除进程的PCB,并将进程在其队列中摘除;阻塞原语:将进程PCB中进程的状态从运行状态改为阻塞状态,并将进程投入阻塞队列;唤醒原语:将进程PCB中进程的状态从阻塞状态改为就绪状态,并将进程从则色队列摘下,投入到就绪队列中
什么是进程控制块