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