CPU进程调度的基本过程

首先了解一下什么是进程调度

进程调度就是通过并行和并发的方式,在计算机上同时执行多个任务

举个列例子

我身边有3个人

A同学是我好兄弟,喜欢打游戏不喜欢学习,

B同学也是我好兄弟,喜欢学习不想打游戏,

C同学是个认识不久的学弟,我教他知识

同时和它3个一起,我们会很很尴尬

所以根据情况我排了个表

CPU进程调度的基本过程_第1张图片

此时此刻就能可以非常好的游走在3人之间 

 这个就是调度的过程

进程调度是有下面4个属性支撑的

一.进程状态

排表有个前提,就是朋友’随叫随到‘
但有时候也有特殊情况,比如A同学回农村家里没网,就不能随叫随到的打游戏了。
这个时候排表就不排A了,多拍B和C

因此,排表的时候,就需要规划好~(根据所处状态来规划)
这里,我们有2 个状态
1).随叫随到(就绪状态)
2).不能随叫随到状态(阻塞状态)

二.进程优先级

比如我喜欢打游戏,在排表的时候就多给B排一点,

不喜欢的就少排一点

三.进程上下文

进程在CPU上执行一会之后,要切换给别的进程,就要保存当前运行的的中间结果(存档),下次再轮到他执行的时候,就恢复之前的中间结果(读档),继续向下执行

举个例子

就跟打单机游戏,打到一半,突然有事,存下档(记录一下),事情忙完回来接着玩

四.进程 记账信息

记录每个进程在CPU上执行的多久,统计信息

起到辅助调度的效果

在执行进程的时候,虽然有优先级,但是还是不希望让有点进程完全捞不着CPU

通过时间表,如果其中一个进程安排的时间太少了,就多给他安排的时间,

避免有的进程完全捞不着CPU执行

你可能感兴趣的:(java,java)