本文主要是介绍操作系统——处理机管理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、多道程序设计
多道程序设计是指允许让多个计算问题同时装入一个计算机系统的主存储器,并允许他们共享资源、并发执行的程序设计技术。采用这一技术的系统叫做多道程序系统,简称多道程序。
1.单道程序的顺序执行:
程序的顺序性中:内部顺序性是指一个程序执行时,它的每一个指令必须是按顺序执行。外部顺序性是指对于多个程序,需要按照某种次序一个一个完成,不能有两个以上同时执行。程序的顺序执行即满足内部顺序性又满足外部顺序性。
程序顺序执行的特点:封闭性是指程序在顺序执行的情况下独占系统全部资源的情况。可再现性:顺序执行只要初始条件相同,运行结果也一定相同。
程序的顺序执行的封闭性和可再现性为调试带来便利,但资源的独占性不利于提高资源的利用率。
——————
2.多道程序的并发执行
满足“外部并发性”:即一个程序或计算的执行尚未结束,另一个程序或计算任务的执行已经开始。
在多道程序系统中,程序并发执行,然而对于只有一个处理机的计算机系统,每一个瞬间事实上只有一个程序在执行,由此可见程序的并发执行是指多个程序在宏观上同时进行。
资源共享性也是程序并发性执行明显区别于顺序执行的特征。可以极大提高资源利用率。
并发执行的缺点:由于资源共享性,程序之间产生了相互制约关系。二是失去了顺序执行的封闭性和可再现性,导致出现不确定性。
——————
二、进程的基本概念
3.进程的定义
进程的一些简单定义:
○进程是可以并发执行的计算部分
○进程是一个独立的可以调度的活动
○进程是一个抽象实体,当它执行某个任务时,将要分配和释放各种资源
○行为的规则叫程序,程序在处理机上执行时的活动成为进程
较为重要的一条定义:○进程是一个可并发执行的具有独立功能的程序关于某个数据集合的一次执行过程,也是操作系统进行资源分配和保护的基本单位。
进程=程序+数据+执行
——————
4.进程的属性
动态性:①进程动态产生,动态执行,动态消亡。②进程有生命周期,在生命周期内进程动态变化。
并发性:多个进程实体可同时存在于主存中,且能在一个时间段内宏观上同时运行。
独立性:进程实体是一个能够独立运行、独立分配资源和独立接收调度的基本单位,而且它有自己的程序计数器和内部状态。
异步性:每个进程按各自独立的不可预知的速度向前推进。
交往性:一个进程在运行过程中可能会与其他进程发生直接的或间接的相互作用。
——————
5.进程与程序的关系
考虑动态性:程序可以作为一种软件资源长期保存,而进程是则是一个动态概念,即:程序是菜谱,进程是厨师烹饪的过程。
考虑并发性:进程具有并发特征,而程序没有。
考虑资源:资源分配是以进程为单位,而不是程序
考虑结构:程序由代码组成,而进程实体包括程序、数据和PCB
考虑生成性:进程可以生成新的进程,而程序不能生成新的程序
对应关系:一个程序多次执行可以对应多个进程,通过调用关系,一个进程也可以包括多个程序。
————
三、进程的状态及转换
6.进程的基本状态及其转换
五种状态:
进程的基本状态模型至少包含5种状态:初始状态、执行状态、阻塞状态、就绪状态和终止状态。其中绝大部分时间处于执行阻塞和就绪状态,因此这三个可以看做三个基本状态。
初始状态:进程刚被创建时还没正式提交给操作系统的处理机调度程序对其管理时的状态。
终止状态:进程执行结束后将退出执行被终止的状态
执行态:进程正在执行的状态
就绪态:进程由于操作系统的原因,没有占用CPU,但具备执行条件只要占用CPU就能执行的等待状态。
阻塞态:进程执行过程中执行了某种阻塞操作(如读写磁盘),必须等待阻塞操作结束后才能进行,这时操作系统把CPU分配给其他进程。这种由于阻塞而导致的等待状态叫做阻塞状态。
六种状态转换:
初始态→就绪态:操作系统完成对进程创建的必要操作后转换为就绪状态。
就绪态→执行态:进程被处理机调度选中而获得处理机时。
执行态→阻塞态:执行进程等待某个事件或某种资源,此时进程无法继续执行直到等待的条件满足。
阻塞态→就绪态:时间完成,即资源得到满足或者等待的事件已经发生。
执行态→就绪态:执行状态的继承被剥夺处理机时发生,可能是出现了优先级更高的进程等。
执行态→终止态:一个进程完成任务自然结束或出现无法克服的错误或被操作系统或其他进程终结。
——————
7.具有挂起状态的进程状态及其转换
随着系统的运行,更多的进程被不断创建,当系统资源不能满足进程运行的需求时
统必须把某些进程对换到磁盘中,暂时不让其参与进程调度,以达到减小系统负荷的目
这个过程称为“挂起”
导致挂起的原因:
①运行需要;②调节负荷需要;③用户请求;④父进程请求;⑤操作系统的需要。
转换关系如下图:
这篇关于操作系统——处理机管理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!