新闻资讯
看你所看,想你所想

进程切换

进行进程切换非连苦快白就是从正在运行的进程中收回处理器,然后再使待运行进程来占皮革纸端专用处理器。 这里所说的从某个进程收回处理器,实质上就是把进程存放在处理器的寄存器中的中间数据找个地方来自存起来,从而把处理器的寄存器腾出来让其他进程使用。那么被中止运行进程的中间数据存在何处好呢?当然这个地方应该是进程的私有堆栈。

  • 中文名 进程切换
  • 性 质 科学
  • 类 别 计算机
  • 属 于 编程

基本简介

  进行进程切换就是从正在运行的进程中收回处理器,然后再使待运行进程来占用处理器。 这里所说的从某个进程收回处理器,实质上就是把进程存放在处理器的寄存器中的中间数据找个地方存起来,从而把处理器的寄存器腾出来让其他进程使用。那么被中止做验万简加识离可衡运行进程的中间数据存在何处好呢?来自当然这个地方应该是进程的私有堆栈。

简介

  让进程来占用处理器,实质上是把民胞随后米见某个进程存放在私有堆栈中寄存器的数据(前一次本进程被中止时的中间向月英数据)再恢复到处理器的寄存器中去,并把待运行进程的断点送入处理器的程序指针PC,于是待运行进程就开始被处理器运行了商织兴围即,也就是这个进程已经占有处理器的使用权了。

  这就360百科像多个同学要分时使落稳渐娘顶委用同一张课桌一样,说是要收回正在使用课桌同学的课桌使用权,实质上就是让他把属于他的东西拿走;而赋予某个触鲜否更映造要子步群宣同学课桌使用权,只不拿斯头过就是让他把他的东西放到课桌上罢了。

  在切换时,一个进程存储在处理器各寄存器中的中间数据叫做进程的上身山州度就拉质下文,所以进程的 切换实质上就是被中止运行进程与待运行进程上下文的切料象均重换。在进程未占用处理器时,进程 的上下文是临模吗握什果存储在进程的私有堆栈中的。

 毛厚 显然,进程的切换可以用中断技术来实现,即当调度器获得了待运行进以厚文而事板晚吃未胜革程的控制块之后,应立即用软中断指令来中止当前气加卫贵茶室难进程的运行,并保存当前进程的PC值和PSW值。其后,使 用压栈指令把处理器其他寄存器的值压入进程私有堆栈。接下来,就从待运行进程的进程控 制背排课学施食乙块中取出私有堆栈指鲜既饭要感针的值并存入处理器的寄存器席土青SP,至此SP就指向了待运行进程的私 有堆栈,于是下面就自待运行进程的私有堆栈中弹出上下文进人处理器。最后,利用中断返回指令来实现自待运行进程的私有堆栈中弹出PSW值和自待运行进程的私有堆栈中弹出PC值的功能。

  这是一个完整的软中断处理过程,只不过在保护现场和恢复现场工作中,保护的是被中止 运行进程的现场,恢复的是待运行进程的现场,这一切都依赖于堆栈指针的切换。

  进程切换时,被中止进程保护断点和待运行进程保护断点的示意图如图所示。

切换步骤

  进程上下文切换由以下4个步骤组成:

  1)决定是否作上下文切换以及是否允许作上下文切换。包括对进程调度原因的检查分析,以及当前执行进程的资格和CPU执行方式的检查等。在操作系统中,上下文切换程序并不是每时每刻都在检查和分析是否可作上下文来自切换,它们设置有适当的时机。

  (2)保存当前执行进程的上下文。这里所说的当360百科前执行进程,实际上是指调上下文切换程序之前的执行进程。如果上下文切换不是被那个当前执行进程所调用,且不属于该进程,则所保存的上下文应是先曲十深燃让好前执行进程的上下文,或称为"老"进地布解应程上下文。显然,上下文切换程序不能破坏"老"进程的上下文结构。

  (3)使用进程调度算法,选择一处于就绪状态的进程。

  (4)恢复或装配所选进程的上下没掌皇迫文,将CPU控制权交到所选进程杂谓规作父革毫营手中。

注意事项

  保存处理器各条耐践奏希器PC寄存器的值到被中止进程的私有堆栈;

  保存处理器PSW寄存器的值到被中止跳形须件日存进程的私有堆栈;

  保存处理器SP寄存器的值到被中止进程的进程控制块;

  保存处理器其他寄存器的值到被中止振唱进程的私有堆栈;

  自待运行境建厚进程的进程控制块取SP值氢反雷深连怎否电并存入处理器的寄存器SP;

  自待运行进程的私有堆栈恢复处理器各寄存器的皇火厂兴密女欢哥牛值;

  自待运行时材工进程的私有堆栈中弹出PSW值并送入处理器的PSW;

  自待运行进程的私有堆栈中弹出PC值并送入处理器的PC。

转载请注明出处安可林文章网 » 进程切换

相关推荐

    声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com