种豆资源网

当前位置:首页 > 经验 / 正文

抢占式多任务

(2021-04-22 01:01:38) 经验

抢占式多任务

在以前的作业系统中,如Windows 3.1,多任务方式是“协作式多任务”,意思是说一个任务得到了 CPU 时间,除非它自己放弃使用 CPU ,否则将完全霸占 CPU ,所以任务之间需要协作——使用一段时间的 CPU ,放弃使用,其它的任务也如此,才能保证系统的正常运行;而在现行使用的作业系统中,如Window 95及之后的Windows版本,使用的就是“抢占式多任务”了,它的总控制权在作业系统手中,作业系统会轮流询问每一个任务是否需要使用 CPU ,需要使用的话就让它用,不过在一定时间后,作业系统会剥夺当前任务的 CPU 使用权,把它排在询问伫列的最后,再去询问下一个任务……。这种方式上的不同造成 95 和 3.1 性能上的不同:3.1 中如果有一个任务死锁,则系统也同样死锁;95 中有一个任务死锁,系统仍能正常运行。

基本介绍

  • 中文名:抢占式多任务
  • 性质:多任务
  • 属性:抢占式
  • 除非它自己:放弃使用 CPU 
具有最高优先权的执行绪就是当前正在运行的那个执行绪。驻留在CPU内正在运行的执行绪会在什幺时候中止呢?一是属于它的时间片已经到期,二是加入了另一个优先权更高的执行绪。通过不断从一个执行绪到另一个执行绪的切换,给人的感觉是执行绪的执行是同时进行的。执行绪并非随时需要运行,经常发生的情况是某个执行绪需要等待用户的输入,另一个执行绪的信息或等待I/O请求,否则便无法执行下去。有些执行绪也许本来就处于挂起状态。
----在抢占式多任务系统中,作业系统必须具有从任何一个运行的程式上取走控制权和使另一个程式获得控制权的能力。一个抢占式系统下运行的应用程式不用担心独占系统,因为系统会合理地给每个运行的任务分配时间块。将这种系统称做抢占式系统是因为它不管在所给时间块内会发生什幺事,都抢占运行程式的控制权。OS/2和UNIX都是抢占式系统。
抢占式多任务处理(preemptive multitasking)是将同时进行的各项任务(task),依照重要程度来排定优先顺序。在抢占式多任务系统中,作业系统(operating system)必须具有从任何一个运行的程式上取走控制权和使另一个程式获得控制权的能力。一个抢占式系统下运行的应用程式不用担心独占系统,因为系统会合理地给每个运行的任务分配时间块。将这种系统称做抢占式系统是因为它不管在所给时间块内会发生什幺事,都抢占运行程式的控制权。OS/2和UNIX都是抢占式系统。
搜索
热门图片
最近更新
随机推荐

Powered By 种豆资源网||