中国建设电工网站,找回网站后台,旅者志 wordpress主题,wordpress免ftp2.2 进程控制
进程控制是进程管理中最基本的功能。 进程控制包括#xff1a; ◆ 创建进程 ◆ 终止进程 ◆ 进程状态转换
进程控制是由OS的内核完成的。
2.2.1 进程的创建 2#xff0e;进程的创建
调用进程创建原语Create#xff08;#xff09;#xff0c;按下述…2.2 进程控制
进程控制是进程管理中最基本的功能。 进程控制包括 ◆ 创建进程 ◆ 终止进程 ◆ 进程状态转换
进程控制是由OS的内核完成的。
2.2.1 进程的创建 2进程的创建
调用进程创建原语Create按下述步骤创建一个进程
1申请空白PCB
2为新进程分配资源。主要是内存空间。
3初始化PCB。包括 4将新进程插入就绪队列
2.2.2 进程的终止 2进程的终止过程
OS调用终止原语按下述过程终止进程
根据被终止进程的标识从PCB集合中找除该进程的PCB读出该进程状态。若被终止进程正处于执行状态应立即终止其执行并置调度标志为真用于指示该进程被终止后应重新进行调度。若该进程还有子孙进程应将其所有子孙进程终止以防止它们成为不可控进程。将被终止进程的所有资源或者归还给其父进程或者归还给系统。将被终止进程它的PCB从所在队列中移出等待其他进程来搜索信息。
2.2.3 进程的阻塞和唤醒 2进程阻塞过程
调用阻塞原语block把自己阻塞。主动行为
阻塞block过程
立即停止执行把PCB中进程状态由“执行”改为“阻塞” 将PCB插入具有相同事件的阻塞队列 转进程调度程序将处理机分配给某个就绪进程并进行进程切换——保留被阻塞进程的处理机状态在PCB中再按新进程的PCB中处理机状态设置CPU的环境。 3进程唤醒过程 调用唤醒原语wakeup( )将等待事件的进程唤醒。 唤醒原语执行过程 ▲将被唤醒进程的PCB从阻塞队列移出 ▲将其PCB中进程状态由“阻塞”改为“就绪” ▲将改PCB插入到就绪队列中。
2.2.4 进程的挂起和激活
1进程的挂起
当出现了引起进程挂起的事件时(用户进程请求将自己挂起或父进程请求将子进程挂起)系统将用挂起原语suspend( )将指定进程或处于阻塞状态的进程挂起。
挂起原语的执行过程 2进程的激活