Multitasking - Was [Gllug] Sun hardware/firewall memory

Christian Smith csmith at micromuse.com
Wed Dec 22 13:48:39 UTC 2004


On Wed, 22 Dec 2004, Christian Smith wrote:

>On Tue, 21 Dec 2004, Ian Norton-Badrul wrote:
>
>>-----BEGIN PGP SIGNED MESSAGE-----
>>Hash: SHA1
>>
>>Robert Newson wrote:
>>| AFAIK, there are basically 2 types of multi-tasking: pre-emeptive and
>>| co-operative.  I think (in basic terms), in prememptive, the system
>>| interrupts the task after a given time slice and then uses a scheduling
>>| scheme to decide which task gets the next time slice (2 main versions of
>>| that: highest accumulated priority and round-robin); whereas in
>>| cooperative the system gives control over to a task and its upto that
>>| task to relinquish control back to the system which will then decide
>>| which task to [continue to] run.
>>|
>>| The biggest problem with co-operative is that a task can hog the
>>| processor and/or if it crashes the system could go belly up.
>>|
>>| AFAIK, *nix uses pre-emptive whereas Windows uses co-operative.
>>
>>Win9x/Mx are totally co-op multitasking systems,
>
>
>Not true. Win9x preemptively multi-tasks between Win32 threads, with all
>Win16 tasks co-operating in a single thread. Admittedly, the kernel is not
>very robust, but that's just a reliability thing, not a preemptive vs
>co-op thing.
>
>In fact, under most circumstances


Doh!

In fact, under most circumstances, UNIX process are doing basically co-op
multi-tasking anyway. Only CPU bound processes are pre-empted. IO bound
processes will voluntarily sleep waiting for their resource to be
available.


>
>
>>
>>I think since NT4 that some parts of the kernel will still task-switch,
>>but not much of it, the rest of the luser space stuff + device drivers
>>afaik run co-operativly.
>
>
>The NT kernel is a fully threaded, pre-emptive kernel, with all user space
>threads pre-emptively scheduled.
>
>The whole argument of co-op vs pre-emptive multitasking has been skewed
>somewhat by Win3.x bad implementation. Co-op multitasking can work very
>well if implemented properly, and it was basically Win3.x reliance on
>DOS/BIOS which resulted in bad performance. Given asynchronous IO, Win3.x
>would have felt much zippier.
>
>
>

-- 
    /"\
    \ /    ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
     X                           - AGAINST MS ATTACHMENTS
    / \
-- 
Gllug mailing list  -  Gllug at gllug.org.uk
http://lists.gllug.org.uk/mailman/listinfo/gllug




More information about the GLLUG mailing list