Multithreading device drivers

Multiprocessor architecture

SCO systems support a multiprocessing configuration with the addition of an appropriate license. The multiprocessor extension for earlier releases of SCO systems was called the SCO MPX system; the multiprocessor extension for the SCO OpenServer 5 Release 5 system is called the SCO SMP License.

The SCO multiprocessing kernel architecture is based on a tightly-coupled, shared-memory, symmetric model in which all processors have access to all memory. In this symmetrically designed implementation, primary kernel functions such as filesystem access, memory and buffer management, interrupt handling, processor trap, process scheduling, and system call entry and exit can be executed on any processor. One copy of the kernel is shared by all processors, in contrast to other multiprocessing architectures where each processor has its own kernel and all the kernels communicate by passing messages.

Existing user-level binaries run on SCO multiprocessiong systems without modification; all the multiprocessing support is implemented at kernel level. Single-threaded drivers can be run on SCO multiprocessing systems, but they will be limited to running on one processor and so will not realize the performance improvements that are possible with multiprocessing, and in fact may seriously degrade the performance of the entire system by creating a bottleneck on one processor.

© 2005 The SCO Group, Inc. All rights reserved.