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.

Who this book is for<br />

© 2009, <strong>QNX</strong> <strong>Software</strong> <strong>Systems</strong> GmbH & Co. KG.<br />

A little history<br />

QSS, the company that created the <strong>QNX</strong> operating system, was founded in 1980 by<br />

Dan Dodge and Gordon Bell (both graduates of the University of Waterloo in Ontario,<br />

Canada). Initially, the company was called Quantum <strong>Software</strong> <strong>Systems</strong> Limited, and<br />

the product was called “QUNIX” (“Quantum UNIX”). After a polite letter from<br />

AT&T’s lawyers (who owned the “UNIX” trademark at the time), the product’s name<br />

changed to “<strong>QNX</strong>.” Some time after that, the company’s name itself changed to “<strong>QNX</strong><br />

<strong>Software</strong> <strong>Systems</strong>” — in those days, everyone and their dog seemed to have a<br />

company called “Quantum” something or other.<br />

The first commercially successful product was simply called “<strong>QNX</strong>” and ran on 8088<br />

processors. Then, “<strong>QNX</strong> 2” (<strong>QNX</strong> version 2) came out in the early 1980s. It’s still<br />

running in many mission-critical systems to this day. Around 1991, a new operating<br />

system, “<strong>QNX</strong> 4,” was introduced, <strong>with</strong> enhanced 32-bit operations and POSIX<br />

support. In 1995, the latest member of the <strong>QNX</strong> family, <strong>QNX</strong> <strong>Neutrino</strong>, was<br />

introduced.<br />

On September 26th, 2000, the <strong>QNX</strong> Realtime Platform (consisting of the <strong>QNX</strong><br />

<strong>Neutrino</strong> operating system, Photon windowing system, development tools and<br />

compilers, etc.) was released for free for noncommercial purposes. As of this second<br />

printing (July 2001) there have been over 1 million downloads! (Go to<br />

http://get.qnx.com/ to get your free copy.)<br />

Who this book is for<br />

What’s in this book?<br />

This book is suitable for anyone wishing to gain a good fundamental understanding of<br />

the key features of the <strong>QNX</strong> <strong>Neutrino</strong> OS and how it works. Readers <strong>with</strong> a modest<br />

computer background should still get a lot out of the book (although the discussion in<br />

each chapter gets more and more technical as the chapter progresses). Even diehard<br />

hackers should find some interesting twists, especially <strong>with</strong> the two fundamental<br />

features of <strong>QNX</strong> <strong>Neutrino</strong>, the message-passing nature of the operating system and the<br />

way device drivers are structured.<br />

I’ve tried to explain things in an easy-to-read “conversational” style, anticipating some<br />

of the common questions that come up and answering them <strong>with</strong> examples and<br />

diagrams. Because a complete understanding of the C language isn’t required, but is<br />

definitely an asset, there are quite a few code samples sprinkled throughout.<br />

This book introduces you to what the <strong>QNX</strong> <strong>Neutrino</strong> operating system is and how it<br />

functions. It contains chapters covering process states, threads, scheduling algorithms,<br />

message passing, operating system modularity, and so on. If you’ve never used <strong>QNX</strong><br />

<strong>Neutrino</strong> before, but are familiar <strong>with</strong> realtime operating systems, then you’ll want to<br />

pay particular attention to the chapters on message passing and resource managers,<br />

since these are concepts fundamental to <strong>QNX</strong> <strong>Neutrino</strong>.<br />

8 Preface to the First Edition by Rob Krten April 30, 2009

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

Saved successfully!

Ooh no, something went wrong!