【发布时间】:2012-08-20 10:17:39
【问题描述】:
我有一个关于 Windows 和 linux 中进程和线程的时间量的问题。
我知道操作系统通常会为每个线程提供固定的时间量。 (我知道时间量子根据前台或后台线程而变化。也可能根据进程的优先级而变化。)
每个进程是否有固定的时间段?例如。如果操作系统为每个进程提供 36 个时间片,并且如果一个进程有 2 个线程,那么每个线程将获得 18 个时间片。如果线程数变为 3,则每个线程将得到 12。
但是,如果不存在每个进程的固定量程并且操作系统为每个线程提供固定量程(不依赖于父进程。)那么我可以通过生成多个线程来提高我的进程效率。(假设我不我的代码中有两个互斥量/信号量。)
我有一个可以在两个操作系统(Windows 和 linux)上运行的应用程序。所以,我是在一般意义上问它。
谢谢
【问题讨论】:
-
这个可怕的术语“量子”从何而来? 99.99% 的线程在被 I/O、另一个线程或其他一些系统调用阻塞之前,从未运行过任何接近 OS 计时器调度间隔的东西。我认为“量子”应该是不可分割的?令人误解的愚蠢术语!
-
你可能想看看这个:support.microsoft.com/kb/259025
-
smith - M$,我应该猜到了...