26.02.2014 Views

Getting Started with QNX Neutrino - QNX Software Systems

Getting Started with QNX Neutrino - QNX Software Systems

Getting Started with QNX Neutrino - QNX Software Systems

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

List of Figures<br />

A process as a container of threads. 16<br />

Three threads in two different processes. 21<br />

Two threads on the READY queue, one blocked, one running. 22<br />

Scheduling roadmap. 23<br />

Memory protection. 27<br />

Serialized, single CPU. 49<br />

Multithreaded, single CPU. 50<br />

Four threads, four CPUs. 51<br />

Eight threads, four CPUs. 52<br />

System 1: Multiple operations, multiple processes. 54<br />

System 2: Multiple operations, shared memory between processes. 55<br />

System 3: Multiple operations, multiple threads. 55<br />

One-to-one mutex and condvar associations. 68<br />

Many-to-one mutex and condvar associations. 68<br />

Thread flow when using thread pools. 71<br />

<strong>Neutrino</strong>’s modular architecture. 81<br />

State transitions of server. 82<br />

State transitions of clients. 83<br />

Clients accessing threads in a server. 87<br />

Server/subserver model. 88<br />

One master, multiple workers. 90<br />

Relationship between a server channel and a client connection. 94<br />

Relationship of client and server message-passing functions. 94<br />

Message data flow. 95<br />

Transferring less data than expected. 96<br />

The fs-qnx4 message example, showing contiguous data view. 106<br />

Transferring several chunks <strong>with</strong> MsgWrite(). 107<br />

How the kernel sees a multipart message. 110<br />

Converting contiguous data to separate buffers. 111<br />

Confusion in a multithreaded server. 122<br />

Message passing over a network. Notice that Qnet is divided into two sections.<br />

125<br />

Three threads at different priorities. 131<br />

Blocked threads. 131<br />

April 30, 2009 List of Figures ix

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!