2010-11-04 39 views
1

我知道这取决于操作系统,但在现代操作系统中,给予相同优先级的线程/进程的时间片是相等的,还是存在其他因素?给同优先级进程的时间片是否相等?

+1

这不是一个编程问题,可能适合超级用户。 – 2010-11-04 20:53:00

回答

2

如果线程正在执行I/O,等待同步机制或要进入睡眠状态,那么它们可以使用少于(甚至更多)的时间片来执行直接计算。操作系统尽量使线程/进程优先级相同的线程具有相同的量程,但实际上给定的实际时间可能会有所不同。

例如,实际上花费在等待出口事件的整个(墙)时间睡眠的线程将平均(在其总运行中)给予更少的时间,而不是正在进行计算的同等优先级中的一个相同数量的(墙)时间。

0

Linux针对同等优先级进程,抢先调度程序
运行等待时间最长的进程。

Windows它在每个优先级和线程
可以切换优先级队列FIFO队列:

- 如果线程中断,因为时间片后,优先级降低
- 如果中断等待I/O事件,优先级提高
- 倾向于CPU绑定线程的I/O绑定
- 对于I/O绑定的线程,优先级比其他I/O(例如键盘,显示器)等待更多(例如键盘,显示器)。磁盘)

相关问题