Programmer's Guide

The Neutrino Programmer's Guide is intended for developers who are building applications that will run under the QNX Neutrino Realtime Operating System.

If you're using the Integrated Development Environment, see the IDE User's Guide . For a different perspective on programming in Neutrino, see Getting Started with QNX Neutrino: A Guide for Realtime Programmers .

This table may help you find what you need in the Programmer's Guide:

When you want to: Go to:
Get started with a Hello, world! program Compiling and Debugging
Get an overview of the Neutrino process model and scheduling methods Programming Overview
Create and terminate processes Processes
Understand the inaccuracies in times Tick, Tock: Understanding the Neutrino Microkernel's Concept of Time
Analyze and detect problems related to dynamic memory management Heap Analysis: Making Memory Errors a Thing of the Past
Understand our Makefile methodology Conventions for Recursive Makefiles and Directories
Find out how QNX Neutrino conforms to and extends POSIX POSIX Conformance
Learn how to use the GDB debugger Using GDB

For the most part, the information that's documented in the Programmer's Guide is specific to QNX. For more general information, we recommend the following books:

Threads:

  • Butenhof, David R. 1997. Programming with POSIX Threads. Reading, MA: Addison-Wesley Publishing Company. ISBN 0-201-63392-2.

TCP/IP programming (note that some of the advanced API features mentioned in the following books might not be supported):

  • Hunt, Craig. 2002. TCP/IP Network Administration. Sebastopol, CA: O'Reilly & Associates. ISBN 0-596-00297-1.
  • Stevens, W. Richard. 1997. Unix Network Programming: Networking APIs: Sockets and XTI. Upper Saddle River, NJ: Prentice-Hall PTR. ISBN 0-13-490012-X.
  • —. 1993. TCP/IP Illustrated, Volume 1 The Protocols. Reading, MA: Addison-Wesley Publishing Company. ISBN 0-201-63346-9.
  • —. 1995. TCP/IP Illustrated, Volume 2 The Implementation. Reading, MA: Addison-Wesley Publishing Company. ISBN 0-201-63354-X.