Windows XP线程调度策略

Windows XP线程调度策略

Windows 2000/XP基于线程实现优先级驱动的抢先式多任务,并且在单处理器系统和多处理器系统中的线程调度策略是不同的。下面介绍单处理器系统中的线程调度策略。在单处理机系统中,处理机的切换有以下儿种情况。

1.主动切换

一个线程可能因为进入等待状态而主动放弃处理器的使用,此时Windows 2000/XP将选杼一个新线程开始运行。许多WIN32等待函数调用(如WaitForSingkObject或WaitFor-MultipkObjects等)都使线程等待某个对象,等待的对象可能有事件、互斥信号量、资源信号M、I/O操作、进程、线程、窗口消息等。如果进入等待线程的时间配额有剩余,在等待事件出现时,线程的时间配额被减1,相当于1/3个时钟间隔;如果线程的优先级大于等于14,在等待事件出现时,线程的优先级被重置。

2.抢先

当一个高优先级线程的等待完成,即一个线程等待的事件出现,高优先级线程进入就绪状态,或者一个线程的优先级被增加或减少,出现正在处于运行状态的低优先级线程低于就绪队列中的某个线程时,系统都要确定是否让当前线程继续运行或当前线程是否要被一个高优先级线程抢先。在Windows 2000/XP中的用户态下运行的线程也可以抢先内核态下运行的线程。在判断一个线程是否被抢先时,并不考虑线程处于用户态还是内核态,调度器只是依据线程优先级进行判断。

当线程被抢先时,它被放回相应优先级的就绪队列的队首。处于实时优先级的线程在被抢先时,时间配额被重置为一个完整的时间片;而处于动态优先级的线程在被抢先时,时间配额不变,重新得到处理器使用权后将运行到剩余的时间配额用完。

3.时间配额用完

当一个处于运行状态的线程用完它的时间配额时,Windows 2000/XP首先必须确定是否需要降低该线程的优先级,然后确定是否需要调度另一个线程进入运行状态。

如果刚用完时间配额的线程的优先级被降低了,Windows 2000/XP将寻找一个更适合的线程进入运行状态,所谓更适合的线程是指优先级高于刚用完时间配额的线程的新设S值的就绪线程。如果刚用完时间配额的线程的优先级没有降低,并且有其他优先级相同的就绪线程,Windows 2000/XP将选杼相同优先级的就绪队列中的下一个线程进入运行状态,刚用完时间配额的线程被排到就绪队列的队尾(即分配一个新的时间配额并把线程状态从运行状态改为就绪状态如果没有优先级相同的就绪线程可运行,刚用完时间配额的线程将得到一个新的时间配额并继续运行。

4.线程运行结束

当线程完成运行时,它的状态从运行状态转到终止状态。此时系统将处理器调度给另一个线程。线程完成运行的原因可能是通过调用ExhThread而从主函数中返回或被其他线程通过调用TerminateThread来终止。如果处于终止状态的线程对象上没有未关闭的句柄,则该线程将被从进程的线程列表中删除,相关数据结构将被释放。

(0)

相关推荐

  • 解析Windows XP 线程调度策略

    解析Windows XP 线程调度策略

  • 140个Windows XP技巧

    140个Windows XP技巧

  • windows XP全面系统优化教程

    德国人的Windows XP系统优化补丁是不是看了很多的Windows XP的优化文章,把系统也是折腾得死去活来,还是老牛拉破车。下面我们就业来详细介绍人一下windows XP全面系统优化. 一、系 ...

  • Windows XP更新 添加对exFAT文件系统格式的支持

    现在越来越多的U盘等存储设备使用exFAT格式。而windows XP系统却不支持这个格式,必须安装补丁才行。若在没有安装补丁的系统上接入exFAT格式的设备,XP会提示你此设备需要格式化。如果你不小 ...

  • windows XP大幅下降,Win8/Win8.1发力

    Net Applications最新数据显示,Windows XP的市场份额再次开始下滑。 Net Applications数据显示,Windows XP 2013年12月的市场份额降至27.84%, ...

  • Windows XP回收站无法清空的解决

    问题描述 Windows XP,从磁盘中删除了某一个或者几个文件后,系统出现问题,表现为回收站中的内容无法清空,而且每次打开回收站时它总先搜索一遍,然后在清空回收站时显示一个确认删除对话框,选“是”后 ...

  • Windows XP中设置打印机共享的步骤

    打印机可以说是现代办公中用得最为普及的设备了,特别是企业办公室中用得最为广泛,但不可能每个人都配置一台打印机,这就必须设置打印机共享,然而因为在企业局域网中的电脑安装的系统各不相同,这对设置打印机共享 ...

  • Windows XP退休后 软仍需为其保驾护航

    Windows XP将会在今年4月8日退休,但目前其全球市场份额仍有28%,显然Windows XP用户根本无法及时候完成升级Win7、Win8或Win8.1等新系统。 有分析师认为,微软仍需确保Wi ...

  • Windows XP系统键盘灯不亮的多种解决方法

    我们使用电脑的时候自然会碰到一点小问题了,虽然是小问题,但有些问题会阻碍大家用电脑的速度。使用电脑当然是要越快捷越好了,正如很多人Windows XP登陆界面输入密码时,都要使用数字键盘,可是很多时候 ...