江苏兴力建设集团有限公司网站天津网站建设营销
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:39
当前位置: 首页 > news >正文
江苏兴力建设集团有限公司网站,天津网站建设营销,互联网公司排名500强,全国性质的网站开发公司文章目录第二章 进程管理调度的概念、层次#xff08;一#xff09;调度的基本概念#xff08;二#xff09;调度的三个层次#xff08;1#xff09;高级调度#xff08;2#xff09;低级调度#xff08;3#xff09;中级调度补充知识#xff1a;进程的挂起态与七状… 文章目录第二章 进程管理调度的概念、层次一调度的基本概念二调度的三个层次1高级调度2低级调度3中级调度补充知识进程的挂起态与七状态模型4三层调度的联系、对比小结第二章 进程管理 调度的概念、层次 处理机调度 基本概念三个层次 高级调度作业调度中级调度内存调度低级调度进程调度 三层调度的联系、对比补充知识 进程的“挂起态”七状态模型 一调度的基本概念 其实调度的概念离我们的生活并不遥远。 比如在我们去银行的时候这个银行它可能有几个窗口为客户服务。那么这些客户到底应该先为谁服务呢银行一般采用的是先到先服务的这种原则。 如果说此时有一个vip客户这个客户在银行里可能就会优先被服务、优先级更高。 再看另外一个例子。一个宿舍早上大家都想上卫生间。每个人都想使用但是有的人想使用3分钟有的人要10分钟有的人要1分钟……那么大家在商量之后就决定了一种使用这个资源的一个原则使用时间短的就先使用使用时间长的就后使用如果时间长度相同的先排队的先使用。 其实所谓的调度它指的就是当我们有一堆任务要处理的时候由于当前的资源有限那么这些事情没办法同时地被处理那这个时候我们就需要按照某种规则比如先到先服务、时间短的优先来决定我们要用什么样的顺序来处理这些任务。这就是所谓的“调度”。 当有一堆任务要处理但由于资源有限这些事情没法同时处理。这就需要确定某种规则来决定处理这些任务的顺序这就是“调度”研究的问题。 二调度的三个层次 1高级调度 我们来看一下在一个程序整个生命周期内什么时候会发生调度的情况。 第一种叫做高级调度又叫作业调度。 此处补充一下作业的概念。 所谓的作业指的就是某一个具体的任务。 可能有时会看到这种描述用户向操作系统提交了一个作业。 这句话其实可以理解为用户让操作系统帮他启动某一个程序这个程序是来处理某一个具体的任务的。 我们知道我们要启动一个程序那么这个程序相关的数据肯定需要从外存放到内存里面。 但是我们的内存资源又是有限的。 所以如果内存已经满了那么我们给操作系统提交的作业或者我们想让系统帮我们启动的这个程序就有可能没办法马上把它们放入内存没办法马上启动。 在这个时候操作系统就会做高级调度作业调度。 操作系统会按照作业调度的相关规则从作业后备队列里面选择一个先把它调入内存并且会为这个作业建立与它相对应的进程也就是建立一个PCB。这就是高级调度作业调度要做的事情。如果当前用户提交了很多作业操作系统就要决定接下来到底要执行哪一个作业。 高级调度作业调度按一定的原则从外存的作业后备队列中挑选一个作业调入内存并创建进程。简化理解好几个程序需要启动到底先启动哪个。 每个作业只调入一次调出一次。作业调入时会建立PCB调出时才撤销PCB。 2低级调度 低级调度进程调度/处理机调度按照某种策略从就绪队列中选取一个进程将处理机分配给它。 因为我们内存中同一时刻是存在很多进程的而我们CPU的资源也是有限的。所以操作系统也需要按某种策略从我们的进程就绪队列中挑选出一个进程把处理机资源分配给它。 多道程序并发这件事情肯定要用到进程调度。 所以进程调度是操作系统中最基本的一种调度在一般的操作系统中都必须配置进程调度。 并且进程调度的频率是很高的一般几十毫秒一次。因为高频率的进程调度才可以让各个进程很快速地、轮流地上CPU执行。这样才可以让用户在宏观上看好像是各个进程在同时运行。 3中级调度 刚才我们说过计算机当中有可能出现内存资源不足的情况。内存里面此时存在多个进程的数据。 而如果内存不足的话其实我们是可以让一些不太紧急、不太重要的进程先把这些进程的数据从内存调出到外存。 如果一个进程的数据把它从内存放入到了外存里面那这个进程此时就处于挂起状态。操作系统会把这些进程的PCB组织起来成为一个队列叫挂起队列。类似于之前说过的就绪队列、阻塞队列 暂时调到外存等待的进程状态为挂起状态。被挂起的进程PCB会被组织成挂起队列。 那此时已经有空闲的内存资源了操作系统又可以通过某一种调度策略来决定到底要把哪个进程的数据先调回内存。这个就是中级调度管的事情又叫内存调度。 中级调度内存调度按照某种策略决定将哪个处于挂起状态的进程重新调入内存。 我们平时用手机的时候会有这样的体验有时在切换程序切换进程的时候有的时候会发现切换的很快而有的时候切换的又很慢。有种可能的原因就是当切换很快的时候这个进程的数据有可能是位于内存里面的而切换进程很慢的时候有可能是因为那个进程的数据已经不在手机内存里而是被系统调到了外存当中所以当你切换到这个进程的时候系统会发现这个进程此时非运行不可了它再把相关的数据从外存再读回内存。 那么显然在进程运行的生命周期内有可能会多次调出、调入内存所以中级调度发生的频率肯定要比高级调度的频率更高。 补充知识进程的挂起态与七状态模型 刚刚提到了挂起状态。此处再补充一个与挂起状态相关的七状态模型。 暂时调到外存等待的进程状态为挂起状态挂起态suspend。 挂起态又可以进一步细分为就绪挂起、阻塞挂起两种状态。 之前已经学习了进程的五状态模型。这是考研408里要求掌握的一种模型。 但对于一些自主命题的学校也有可能要掌握七状态模型。总之了解一下。 那么在引入了就绪挂起、阻塞挂起两种状态之后一个处于就绪态的进程如果此时这个系统的负载比较高、内存空间已经不够用了那么它有可能会把一个处于就绪态的进程把它暂时调到外存当中这个进程就进入了一个就绪挂起的状态。一直到内存空闲或者这个进程急需进行那么这个进程又会被激活并把它相应数据挪回内存中。 同样地一个阻塞态的进程也可以被挂起相应的也可以被激活、重新调入内存。 而有的操作系统对于处于阻塞挂起的进程当它等待的阻塞事件发生的时候这个进程会从阻塞挂起变为就绪挂起。之后当它再被重新调回内存的时候直接就是就绪态而不是回到阻塞态。 还有的时候一个进程处于运行态当运行结束之后可能这个进程下处理机的时候就会被直接放到外存当中让它进入就绪挂起的状态。 而有的时候一个处于创建态的进程当它创建结束之后、创建完PCB之后有可能出现内存空间不够的情况那这种情况下有可能处于创建态的进程创建之后处于就绪挂起的状态。 需要注意的是“挂起”和“阻塞”的区别。 这两种状态都是暂时不能获得CPU的服务但区别在于处于挂起态的进程进程映像是放在外存里的而处于阻塞态的进程它的进程映像其实还在内存当中。 有的操作系统会把就绪挂起、阻塞挂起分为两个不同的挂起队列。还有的操作系统会把阻塞挂起的进程根据阻塞原因不同再把阻塞挂起队列细分为多个队列。 以上就是七状态模型。 4三层调度的联系、对比 小结
- 上一篇: 江苏系统建站怎么用福建建设工程有限公司网站
- 下一篇: 江苏徐州网站建设新浪云wordpress教程
相关文章
-
江苏系统建站怎么用福建建设工程有限公司网站
江苏系统建站怎么用福建建设工程有限公司网站
- 技术栈
- 2026年03月21日
-
江苏网站建设一个专门做破解的网站
江苏网站建设一个专门做破解的网站
- 技术栈
- 2026年03月21日
-
江苏网站建设网站排名优化建设一个网站要钱吗
- 技术栈
- 2026年03月21日
-
江苏徐州网站建设新浪云wordpress教程
江苏徐州网站建设新浪云wordpress教程
- 技术栈
- 2026年03月21日
-
江苏扬州建设工程信息网站做移门的网站
江苏扬州建设工程信息网站做移门的网站
- 技术栈
- 2026年03月21日
-
江苏营销型网站建设公司上杭网站
江苏营销型网站建设公司上杭网站
- 技术栈
- 2026年03月21日
