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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to