That's completely, utterly untrue.
QNX does indeed sport paged-virtual memory with memory protection;
(although QNX4 does not support swap).
User-mode interrupts are standard procedure; the deadlock problems
Alan has mentioned do not apply, since any running process is
always resident in memory.
Shared regions have to be explicitly created; access is *not* open
to anybody.
Nothing has to be known at "compile time"; QNX is a full-featured
OS with dynamic loading.
> Therefore, any piece of code can do anything it wants including
> handling hardware directly.
Again not true; only privileged processes can enter kernel mode
to execute port I/O instructions directly.
cheers
Anders
-- "In theory there is no difference between theory and practice. In practice there is." - Yogi Berra - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/