On Thursday 15 March 2007 17:13, James Knott wrote:
Windows has never been able to multi-task as well as OS/2 or Linux. And this is why...
... notes from NT tutorial ... ------------------------------------------ start The major role of the kernel in Windows NT is to dispatch and schedule threads. A thread is a code segment belonging to a particular process. Each thread is assigned a priority number from 0 to 31. The kernel dispatches threads to run on available processors based on their priority numbers. The kernel then allows the threads to execute for a particular amount of time before preempting them and allowing another process to run. NOTE: Sometimes you see it written that the kernel schedules processes. While this is **not technically correct**, it is commonly stated this way for ease of explanation. The kernel **does not actually schedule processes**, it only schedules threads in the context of a process. For more on the distinction between processes and threads, see the section Process Manager, later in this chapter. It is this procedure that makes preemptive multitasking ?possible?. Because it is the kernel that schedules the execution of all code on the system, it [the kernel] **cannot be preempted**. It also cannot be paged to disk for any reason. ------------------------------------------ end So, WinNT did not truly implement preemption... and the WinNT kernel was never preemptable. For information on when the linux kernel received its preemptive code patch follow this link: http://www.linuxdevices.com/articles/AT4185744181.html -- Kind regards, M Harris <>< -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org