操作系统进程控制
admin
2024-05-13 13:15:50

文章目录

  • 操作系统进程控制
    • 操作系统内核
    • 进程的创建
    • 进程的终止
    • 进程的阻塞和唤醒
    • 进程的挂起与激活

操作系统进程控制


操作系统内核

OS内核的概念: 将一些与硬件紧密相关的模块(如中断处理程序等),各种常用设备和驱动程序以及运行频率较高的模块(如时钟管理模块,进程调度和许多模块所公用的一些基本操作),都安排在靠近硬件的软件层次中,将它们常驻内存,通常被称为OS内核。

OS内核的优点: 便于对OS内核中的这些软件进行保护,防止遭受其他程序的破坏;可以提高OS的运行效率。

OS内核的功能:支撑功能;资源管理功能。

  • 支撑功能:为OS其他模块提共基本功能,以便支撑这些模块工作。最基本的支撑功能包括中断处理,时钟管理和原语操作。
  • 资源管理功能:(1)进程管理(2)存储器管理(3)设备管理

进程的创建

进程的层次结构

  • OS中允许一个进程去创建另一个进程,通常把创建进程的进程叫做父进程,被创建的进程叫做子进程,子进程可以继续创建更多孙进程。
  • 子进程可以继承父进程所拥有的资源,如父进程打开的文件,父进程所分配到的缓冲区等。
  • 子进程被撤销时,将从父进程继承的资源归还给父进程。撤销父进程时,也必须同时撤销其所有子进程。进程不能拒绝其子进程的继承。
  • windows中不存在进程层次结构的概念,进程间只是控制与被控制的简单关系。

进程的创建过程

  • 1)申请空白PCB:为新进程获取唯一的数字标识符,并从PCB集合中索取一个空白PCB
  • 2)为新进程分配其运行所需要的资源:包括各种物理资源和逻辑资源,如内存,文件,IO设备和CPU时间等。这些资源可以从操作系统或父进程中获得。
  • 3)初始化进程控制块PCB:PCB的初始化包括
    ①初始化标识信息 :将系统分配的标识符和父进程标识符填入新PCB
    ②初始化处理机状态信息 :使程序计数器指向程序入口地址,使栈指针指向栈顶
    ③初始化处理机控制信息:将程序计数器状态设置为就绪状态或静止就绪状态,优先级默认设置为最低优先级
  • 4)将新进程插入就绪队列

进程的终止

进程终止的过程:

  • 1)根据被终止进程的标识符,从PCB集合中检索出该进程的PCB,从中读出该进程的状态
  • 2)若被终止的进程正处于执行状态,应立即终止该进程的执行,并置调度标志位真,用于只是该进程被终止后应重新进行调度。
  • 3)若该进程还有子孙进程,还应将其所有子孙进程也都予以终止,以防它们成为不可控的进程。
  • 4)将被终止进程所拥有的全部资源或者归还给其父进程,或者归还给系统。
  • 5)将被终止进程(PCB)从所在队列(或链表)中移出,等待其他程序来搜集信息。

进程的阻塞和唤醒

引起进程阻塞的事件:①向系统请求共享资源失败 ②等待某种操作的完成 ③新数据尚未到达 ④等待新任务的到达

进程阻塞过程

  • 正在执行的进程,若发生上述某事件,便通过调用阻塞原语block将自己阻塞。阻塞是进程自身的主动行为。
  • 进入block后,先立即停止进程的执行,把进程控制块PCB中的现行状态由”执行“改为阻塞。
  • 将PCB插入阻塞队列。若系统中设置了因不同事件而阻塞的多个阻塞队列,则应将本进程插入到具有相同事件的阻塞队列。
  • 转调度程序进行重新调度,将处理机分配给另一就绪进程,并进行切换,保留被阻塞进程的处理机状态,按新的PCB中的处理机状态设置CPU的环境。

进程唤醒过程

  • 当被阻塞的进程所期待的事件发生时,由有关进程调用唤醒原语wakeup,将等待该事件的进程唤醒。
  • wakeup首先把被阻塞的进程从阻塞队列中移除,将其PCB的现行状态由阻塞改为就绪,然后将该PCB插入就绪队列。

进程的挂起与激活

进程的挂起过程:

  • OS利用suspend原语将指定进程或处于阻塞状态的进程挂起。
  • 其执行过程中,首先检查被挂起进程的状态,若处于活动就绪状态,便将其改为静止- - 就绪状态;对于活动阻塞状态的进程,则改为静止阻塞状态。
  • 为了方便用户或父进程考查该进程运行情况,将该进程的PCB复制到某指定的内存区域,挂起操作会将进程从内存移动到外存。
  • 若被挂起的进程正在执行,则转向调度程序重新调度。

进程的激活过程

  • OS利用active原语将指定进程激活。
  • 激活原语先将进程从外存调入内存,检查该进程的现行状态,若是静止就绪状态,便改为活动就绪状态;若为静止阻塞状态,便改为活动阻塞状态。
  • 若采用抢占调度策略,在将静止就绪进程激活后插入就绪队列时,要比较被激活进程和当前进程的优先级,若被激活进程的优先级更高,则立即剥夺当前进程的运行,将处理机分配给刚激活的进程。

相关内容

热门资讯

敦煌壁画的守护人--敦煌戈徒旅... 昨天刷抖音本来是想随便打发下时间,结果一个“穿越千年的敦煌色彩”的视频直接把我钉在原地,越看越入迷,...
湖南红色旅游主题口号及形象标识... 近日,由湖南省文化和旅游厅主办的湖南红色旅游主题口号及形象标识(LOGO)征集活动圆满结束,获奖作者...
2024年山西省旅游业大数据报... 今天分享的是:2024年山西省旅游业大数据报告 报告共计:20页 2024年山西省旅游业实现高质量增...
中国跻身南极第二大客源国,深圳... 深圳商报·读创客户端记者 范宏韬 11月18日,俞敏洪一连发布10条南极旅行视频,从穿越德雷克海峡到...
螺髻山温泉撷影 螺髻山温泉位于四川省凉山彝族自治州普格县螺髻山镇,该景区是我国山地中极为罕见且保存完好的第四纪古冰川...