Just for accuracy: Win3.x had pre-emptive multitasking. However, it could only preempt DOS apps. Win16 apps could not be pre-empted.
This compares quite closely to the FOSS RISC OS for Arm machines, which can preempt CLI apps in a "task window", but GUI apps only multitask cooperatively.
Co-op multitasking is faster and more memory efficient. That's why Acorn and MS chose it. But it's very vulnerable to a single app failing to relinquish control, locking up the OS.
Just for accuracy: Win3.x had pre-emptive multitasking. However, it could only preempt DOS apps. Win16 apps could not be pre-empted.
This compares quite closely to the FOSS RISC OS for Arm machines, which can preempt CLI apps in a "task window", but GUI apps only multitask cooperatively.
Co-op multitasking is faster and more memory efficient. That's why Acorn and MS chose it. But it's very vulnerable to a single app failing to relinquish control, locking up the OS.