抢占式多任务系统
来源:互联网 发布:软件出口骗税 编辑:程序博客网 时间:2024/05/17 01:49
在以前的操作系统中,如Windows 3.1,多任务方式是“协作式多任务”,意思是说一个任务得到了 CPU 时间,除非它自己放弃使用 CPU ,否则将完全霸占 CPU ,所以任务之间需要协作——使用一段时间的 CPU ,放弃使用,其它的任务也如此,才能保证系统的正常运行;而在现行使用的操作系统中,如Window 95及之后的Windows版本,使用的就是“抢占式多任务”了,它的总控制权在操作系统手中,操作系统会轮流询问每一个任务是否需要使用 CPU ,需要使用的话就让它用,不过在一定时间后,操作系统会剥夺当前任务的 CPU 使用权,把它排在询问队列的最后,再去询问下一个任务……。这种方式上的不同造成 95 和 3.1 性能上的不同:3.1 中如果有一个任务死锁,则系统也同样死锁;95 中有一个任务死锁,系统仍能正常运行。
具有最高优先级的线程就是当前正在运行的那个线程。驻留在CPU内正在运行的线程会在什么时候中止呢?一是属于它的时间片已经到期,二是加入了另一个优先级更高的线程。通过不断从一个线程到另一个线程的切换,给人的感觉是线程的执行是同时进行的。线程并非随时需要运行,经常发生的情况是某个线程需要等待用户的输入,另一个线程的信息或等待I/O请求,否则便无法执行下去。有些线程也许本来就处于挂起状态。
----在抢占式多任务系统中,操作系统必须具有从任何一个运行的程序上取走控制权和使另一个程序获得控制权的能力。一个抢占式系统下运行的应用程序不用担心独占系统,因为系统会合理地给每个运行的任务分配时间块。将这种系统称做抢占式系统是因为它不管在所给时间块内会发生什么事,都抢占运行程序的控制权。OS/2和UNIX都是抢占式系统。
0 0
- 抢占式多任务系统
- 抢占式多任务处理
- 抢占式多任务处理
- 分布式系统大数据量计算抢占式任务调度
- 微型抢占式多任务实时内核设计
- 微型抢占式多任务实时内核设计
- KLite 简单实用的抢占式多任务内核简介
- 时间片轮转 / 多任务 多线程解释 /抢占、非抢占
- 时间片轮转 / 多任务 多线程解释 /抢占、非抢占
- 抢占式多任务处理 vs 协作式多任务处理
- 抢占式任务调度的一种实现
- tqOS的PendSV抢占式任务调度
- 【华为笔试】抢占式任务调度
- 多线程中轮询任务和抢占式任务的区别
- 轮询任务调度与抢占式任务调度
- 第18082篇:微型抢占式多任务实时内核设计
- μC/OS-II是一个基于抢占式的实时多任务内核
- 轮询与抢占式任务调度区别
- ASIHTTPRequest实现对PUT,DELETE,POST,GET请求方式的处理
- Bat汇总,Shell汇总
- Fedora Core 4 环境下编译内核攻略
- java项目红叉问题 project facet
- 互联网公司PR的自我修养
- 抢占式多任务系统
- Ubuntu14.04 mysql安装
- C#中Nunit单元测试入门介绍
- qq邮箱订阅架构
- php 获取路径的一些方法
- 内存调试 - MEMWATCH
- linux core dump
- 最简单的问题与算法(求最大约数)
- Nagios Web页面提示-CGI乱码如何解决