I don't think this is particularly a problem on
the Apple ][ series. IIRC,
all I/O is CPU intensive, so giving up the CPU during I/O will likely cause
the I/O to fail. Am I getting old? The details of the Disk ][ interface
are only faintly registering on my brain. Wasn't the input a bit at a time
with a software wait between bits, or am I confusing that with the tape
interface with its half-hardware/half-software 1-bit ADC?
Common thing with apples, many other systems that were minimalist too.
Obviously for those and a great many others part of timeslicing has to
be doing IO (aka an IO timeslice). This can seriously hurt system
performance as you really get to see howmuch cpu is used in isolation from
all the pending tasks.
Of course, none of this is a concern with cooperative
multitasking of BASIC
programs but if someone implements an interupt generator on a ][ for
multitasking purposes, it could become a concern.
Big time. ;)
Generally what seperated the generic systems of the time from those that
could do serious workloads was the needed hardware support for interrupts.
With even a basic periodic interrupt it was possible to do background
tasks (keyboard scan, serial IO) that didn't appear to need to wait for
the application. To me one of the most annoying this was waiting for it
to ask for input but not accept type ahead!
Allison