The NitrOS-9 docs say it is a process based multitasking environment, and that it is a real time OS (RTOS). But I'm not sure if that means it's preemptive (OS takes control away from a program/process to give others time to run) or if the program needs to play nice and relinquish the CPU like you might see in Windows 3.1.
Yes, it is pre-emptive. See: https://sourceforge.net/p/nitros9/wiki/The_Kernel/#multiprogramming
In particular, it uses the 60 Hz interrupt to switch between active processes with the same priority.
As a side note, some of the Color Computer I/O devices are CPU intensive (e.g., the bit-banger serial port and the floppy drive). This makes the system rather unresponsive when those devices are in use.
-
2Yes, this is real-time in that it has a real-time clock (as well as a regular clock). It is not real time in terms of guarantees on consistent amounts of time for servicing tasks. – user12 Jun 20 '16 at 20:01
-
Thus the no-halt controller e.g. Disto, and of course a proper RS-232 port. – Michael Hampton Aug 10 '16 at 9:34
OS-9, which NitrOS-9 is based on, could be either pre-emptive or not. If not, context switches could occur when the currently running process did a system call. To be pre-emptive, there has to be a source of periodic interrupts and a module, clock, with an interface that lets the OS use said source.