What is the QNX
QNX is an operating system for PCs. It has microkernel architecture
and it is designed especialy for real time applications.
QNX's microkernel architecture
QNX's kernel is very small -less then
8K. It's essentilal functions are:
- Message
passing. The kernel handles the routing of all messages among
all processes throughout the entire system.
- Scheduling. The
scheduler is a part of the Kernel, and is invoked whenever a process
changes state as the result of a message or interrupt.
Unlike the processes, the Kernel itself is never scheduled for
execution. It is entered only as the direct result of kernel calls,
either from a process or from a hardware interrupt. All QNX services,
exept those provided by the Kernel, are handled via standard QNX
processes. A typical QNX configuration has the following system
processes:
QNX provides a simple but powerful set of Interprocess Communication
(IPC) capabilities that simplify the job of developing applications
made up of cooperating processes. In QNX, a message is a packet of
bytes passed from one process to another. QNX attaches no special
meaning to the content of a message.
Message passing not only allows processes to pass data to each
other, but also provides syncronizing the execuion of several
processes. As they send, receive, and reply to messages, processes go
through various "changes of state" that affect when, and for how long,
they may run.
QNX as a network
QNX integrates the entire network into a single, homogeneous set of
resources. Any process on any machine in the network can directly make
use of any resource on any other machine. There is no difference
between a local or remote resource and no special facilities need to
be built into applications to make use of remote resources. Users may
access files anywhere on the network, take advantage of any
peripherial device, and run applications on any machine on the
network. Processes can communicate in the same manner anywhere
throughtout the entire network.