抢占式多任务处理

抢占式多任务处理（Preemptive multitasking）是计算机操作系统中，一种实现多任务处理（multi task）的方式。相对于协作式多任务处理而言。协作式环境下，下一个进程被调度的前提是当前进程主动放弃时间片；抢占式环境下，操作系统完全决定进程调度方案，操作系统可以剥夺耗时长的进程的时间片，提供给其它进程。
每个任务赋予唯一的一个优先级（有些操作系统可以动态地改变任务的优先级）；
假如有几个任务同时处于就绪状态，优先级最高的那个将被运行；
只要有一个优先级更高的任务就绪，它就可以中断当前优先级较低的任务的执行；

 用户模式和内核模式 
在任何给定的系统设计中，系统执行的某些操作可能无法被抢占。这通常适用于内核函数和服务中断，如果不能让它们运行到完成，就容易产生竞态条件，从而导致死锁。禁止调度程序在任务处理内核功能时抢占它们，以牺牲系统响应性为代价，来简化内核设计。区分用户模式和内核模式决定了系统内的权限级别，也可以用来区分任务当前是否可被抢占。

大多数现代操作系统都支持抢占式内核，即使在内核模式下也允许任务被抢占。例如Linux、AIX、Windows NT等等。

 參見 
 時間片

CATEGORY:操作系统技术