9/13 From http://dailynews.yahoo.com/h/nm/20000913/tc/apple_test_dc_1.html
"OS X also offers a technical feature known as ``pre-emptive
multi-tasking'' which allows the computer user to do more than one
task at a time without crashing the machine.". So the previous Mac OS
(Mac OS 7?) was not pre-emptive? --- yuen
\_ no it was originally cooperative multitasking. A scheduled task
ran until it yeilded. Several RTOS use cooperative multitasking
as well, notable Cisco IOS.
\_ So that means Mac OS is even more lame than Windoze in this
respect? Ohmygad.
\_ Than Lose{NT,2K} yes. Some will argue that pre-emptive
leads to worse performance for certain types of workloads,
but for non-RT systems, I disagree. As an aside, the kernel
in MacOS 8.5 - 9 has the ability (exteremly limited) to
preempt/interrupt executing tasks. This is implemented
using a mini-kernel (not a full featured micro-kernel like
mach).
Windows 9{5,8} (they are still basically DOS (the original
Denial of Service)) doesn't have this ability, despite what
CNTRL-ALT-DEL might lead you to believe.
but for non-RT systems, I disagree.
\_ yes. -tom
\_ Some will argue that pre-emptive leads to worse
performance for certain types of workloads (RT notably),
but the trade-off is complete service outage due to
[ Talking out of my ass here ]
individual process failures.
taks you do do essential work. But this won't really
[ Talking out of my ass here - ali/tom feel free to
correct me ]
I suppose that you could write important stuff in the
interrupt handlers, so that regardless of the executing
task you can do essential work. But this won't really
cut it if your interrupt rate is high and your process
time in the handler is long.
The other option might be to do the important stuff in
\_ yes. -tom
hardware (asic/fpga) and just run your ui via the OS.
This is what most network vendors (Juniper, Cisco) do.
[ Done talking out of my ass ]
As an aside, the kernel in MacOS 8.5 - 9 has the ability
(exteremly limited) to preempt/interrupt executing tasks.
This is implemented using a mini-kernel (not a full
featured micro-kernel like mach). Windows 9{5,8} (they
are still basically DOS (the original Denial of Service
attack)) don't have this ability, despite what CNTRL-ALT-DEL
might lead you to believe. |