Multitasking - Was [Gllug] Sun hardware/firewall memory

Christian Smith csmith at micromuse.com
Wed Dec 22 13:36:15 UTC 2004


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


>
>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