In QNX Momentics, the online documents are in HTML, which you
can access either from within or outside of the IDE.
You can download PDF versions of the documentation from
our website
(http://www.qnx.com),
once you've logged into your myQNX account.
Printed books are also available.
To help you find your way around the QNX Momentics documentation set, we've
provided a
documentation roadmap.
The complete QNX Momentics documentation set contains the
following books, arranged here under each main component:
- IDE User's Guide
- Describes the QNX Momentics Integrated Development
Environment, how to set up and start using the tools to
build Neutrino-based target systems, etc.
- System Architecture
- Describes the concepts and architecture of the QNX
Neutrino microkernel, resource managers, processes, threads,
message-passing services, and more.
- QNX Neutrino User's Guide
- Explains how to interact with a running Neutrino
system. Covers both Photon and text-mode interfaces, as well
as various system-administration topics.
- QNX Neutrino Programmer's Guide
- Tells you how to get started writing programs, including
interrupt handlers, resource managers, etc.
- Building Embedded Systems
- Tells you how to get the OS running on your target
embedded system, write an IPL, customize a startup program,
etc.
- Utilities Reference
- Describes the Neutrino configuration files, utilities, and manager
processes you'll use during development and at runtime. See
the Utilities Summary chapter in the reference for a listing
of all the entries by category.
- QNX Neutrino Library Reference
- Describes the C library data types and functions, including POSIX
threads, kernel calls, resource manager functions,
etc. See the Summary of Functions chapter in the reference
for a listing of all the functions by category.
- Technical Notes
- Deals with a series of topics (e.g. IP tunneling) that aren't covered in the
basic documentation set.
- Photon Programmer's Guide
- Gives you a hands-on tour of the Photon Application Builder (PhAB).
You'll learn how to quickly
assemble a GUI from predefined widgets, link the GUI to an
application, and generate C source to bring the GUI to
life.
- Multimedia Developer's Guide
- Describes the multimedia architecture for developers who
wish to write multimedia plugins.
- Photon Library Reference
- Provides concise descriptions of Photon's and PhAB's
global data structures and functions.
- Widget Reference
- Contains guidelines for programming widgets, along with
concise descriptions of all global data structures,
resources, and convenience functions associated with
widgets. It also gives you practical examples of how to use
Photon widgets and widget functions.
- Building Custom Widgets
- Explains how to create a custom widget and how to bind
it into PhAB.
If you need a widget whose features extend the
standard capabilities of the Photon widget library, this
guide is for you.
- BSP guides
- Describe how to get Neutrino running on
your target board.
You'll find a separate guide for each BSP that you've installed.
We support boards in these processor families: ARM/XScale,
MIPS, PowerPC, SH-4, and x86.
You can download binaries for the BSPs from our website,
http://www.qnx.com/;
for information about BSP source, contact your sales representative.
- DDK guides
- Describe how to write drivers for QNX
Neutrino. You'll find a separate DDK guide for audio,
character, graphics, input, network, and Universal Serial Bus
(USB) devices.
You can download the DDKs from our website, but
QNX Momentics includes the documentation.
- System Analysis Toolkit User's Guide
- Describes how to use
the SAT with our instrumented microkernel.
You can log every communication and state change within the microkernel,
including interrupts, all parameters/return values from kernel calls,
and scheduling decisions, resulting in a deeper and more detailed analysis
of system elements.
You can even perform kernel-level diagnostics remotely.
- Photon Multilingual Input
- Tells you how to input Chinese, Japanese, and Korean characters in Photon.
- Phindows Connectivity
- Tells you how to access Photon from a Windows machine.
- TDKs
- The release notes (see
${QNX_TARGET}/etc/readme/tdk)
for each TDK indicate the relevant documentation.
- Dinkum C++ Library
- A conforming implementation of the Standard C++ library.
- Dinkum C99 Library
- A conforming implementation of the Standard C library, as revised in 1999.
- Dinkum EC++ Library
- A conforming implementation of
the Embedded C++ library as specified by the Embedded C++
Technical Committee.
Click Help-->Help
Contents. There you'll find several booksets
listed, with QNX Momentics Professional
Edition at the top of the list.
The other documents
listed, such as the Workbench User Guide and
JDT Plug-in Developer Guide, pertain to the Eclipse
platform and its various plugins.
Getting help in the IDE.
Note that the IDE's internal help system has a builtin
search facility.
For details, see
"Help system"
in the IDE Concepts chapter of the IDE User's Guide.
Point your browser at:
$QNX_TARGET/usr/help/product/momentics/bookset.html
You can also reach the HTML documentation from the Start or Launch menu,
depending
on the host:
- Windows
- Programs-->QNX Momentics 6.3.0-->Documentation
- Linux
- Programming-->QNX Momentics 6.3.0 Documentation
- Neutrino
- Help or
QNX Momentics 6.3.0-->Documentation
If you're using Neutrino self-hosted, you can access the
documentation via our native Helpviewer.
Photon Helpviewer.
To open the Helpviewer,
click the Help button in the Applications group on
the shelf or select Help from the right-click menu
on the desktop:
For more information, see
"Getting help with the Helpviewer"
in the Using the Photon microGUI chapter of the
Neutrino User's Guide, as well as the entry for
helpviewer
in the Utilities Reference.
Nearly every book in the QNX Momentics documentation set has
its own keyword index. At the top and bottom of the
online documents, you'll find an icon that's linked to the keyword
index file (keywords-all.html):
Here's a quick way to get to the keyword-index files of
the QNX Momentics online documents:
- Audio DDK -- index
- Audio Developer's Guide -- index
- Building Custom Widgets -- index
- Building Embedded Systems -- index
- Character DDK -- index
- Graphics DDK -- index
- High Availability Toolkit Developer's Guide -- index
- IDE User's Guide -- index
- Input DDK -- index
- Network DDK -- index
- Photon Library Reference -- index
- Photon Programmer's Guide -- index
- Photon Widget Reference -- index
- QNX Neutrino Library Reference -- index
- QNX Neutrino Programmer's Guide -- index
- QNX Neutrino User's Guide -- index
- System Analysis Toolkit User's Guide -- index
- System Architecture -- index
- USB DDK -- index
- Utilities Reference -- index
- Welcome to QNX Momentics -- index
- Widget Reference -- index
Many people simply don't read manuals cover to cover. They
often browse or search the documentation for a specific topic,
usually for information on how to do a certain task. But if
you want to approach your tasks with enough knowledge to
work effectively, it's a good idea to start with the
System Architecture guide; it will help
you understand Neutrino's unique features,
particularly its message-based interprocess
communication (IPC) and microkernel architecture.
Once you know how Neutrino works, you'll then want to
know how to work with it. Which document you'll need next depends
on when you need it.
Most of the documents in the bookset are geared
towards developing your Neutrino-based
applications. Of these development books, some are how-to
guides, some are reference works.
|
Some books are useful during development as well as at
runtime. For instance, the Utilities Reference
is a comprehensive document that includes descriptions of both
"development" utilities (e.g.
make), which you wouldn't normally use on your
target, as well as "runtime" programs (e.g.
devc-sersci), which you would run only on your
target. |
Here are the main how-to guides and their corresponding
reference books:
|
If you've already developed applications with QNX Momentics 6.2.1, see the
6.3.0 and 6.2.1 Compatibility
notes.
You can find the latest version of this document on our website:
http://www.qnx.com/.
Log into your myQNX account, then go to the Download Center. |
The most runtime-oriented document in your bookset is the
QNX Neutrino User's Guide, which describes how to
use and interact with a running Neutrino
system. The book covers both Photon and text-mode
interfaces, as well as various system-administration topics.
Other runtime-oriented documents include the Utilities
Reference and the IDE User's Guide (for
information on diagnostic tools you'd use on a running system).
The following list may help you learn which document to look in
when you want information on certain key features or components of the
OS and tools.
- Adaptive partitioning
- Adaptive Partitioning TDK
User's Guide
- Asymmetric multiprocessing (AMP)
- Multicore Processing
in the System Architecture guide
- Audio support
- Audio Developer's Guide
(for writing audio applications);
Audio DDK
(for writing audio device drivers);
io-audio manager and the
deva-*
drivers in the Utilities Reference.
- Bound multiprocessing (BMP)
- Multicore Processing
in the System Architecture guide;
the Multicore TDK
User's Guide;
procnto*
in the Utilities Reference.
- BSPs
- Each BSP that you install includes documentation; see the BSP
installation notes.
- Buildfiles
- Making an OS Image
in Building Embedded Systems;
mkifs
in the Utilities Reference.
- CD-ROM
- Working with Filesystems
in the QNX Neutrino User's Guide;
cam-cdrom.so
in the Utilities Reference.
- Channels
- Channel*,
Msg*, and
Connect*
functions in the QNX Neutrino Library Reference;
Writing a Resource Manager
in the QNX Neutrino Programmer's Guide.
- Compiling
- Developing C/C++ Programs
in the IDE User's Guide;
Compiling and Debugging
in the QNX Neutrino Programmer's Guide;
make
and
qcc
in the Utilities Reference.
- Compression
- Making an OS Image
in Building Embedded Systems;
deflate
in the Utilities Reference.
- CPU time, sharing among competing processes
- Adaptive Partitioning TDK
User's Guide
- Data server
- Setting Up an Embedded Web Server
in the QNX Neutrino User's Guide;
ds
in the Utilities Reference.
- DDKs
- Driver Development Kits (DDKs).
QNX Momentics includes the documentation, but
if you want the DDKs, you must download them from our website.
- Debugger
- Debugging Programs
in the IDE User's Guide;
Compiling and Debugging
in the QNX Neutrino Programmer's Guide;
gdb
and other
debugging
utilities in the Utilities Reference.
- Device management
- devctl()
in the QNX Neutrino Library Reference;
Writing a Resource Manager
in the QNX Neutrino Programmer's Guide;
dev* drivers
in the Utilities Reference.
- Editors
- IDE Concepts
in the IDE User's Guide;
Using Editors
in the QNX Neutrino User's Guide;
elvis,
ped,
qed,
sed, and
vi
in the Utilities Reference.
- Embedded systems
- Building Embedded Systems.
- Endian issues
- Freedom from Hardware and Platform Dependencies
in the QNX Neutrino Programmer's Guide.
- Environment, configuring
- Controlling How Neutrino Starts
and
Configuring Your Environment
chapters in the QNX Neutrino User's Guide.
- Environment variables
- Commonly Used Environment Variables
appendix in the Utilities Reference;
environ()
in the QNX Neutrino Library Reference;
Using the Photon microGUI
and
Configuring Your Environment
chapters in the QNX Neutrino User's Guide.
- Event handling (OS)
- MsgDeliverEvent()
in the QNX Neutrino Library Reference;
Writing an Interrupt Handler
in the QNX Neutrino Programmer's Guide.
- Event handling (Photon)
- Events
in the Photon Programmer's Guide;
phrelay
in the Utilities Reference.
- File handling
- creat()
and related functions via its "See also" section in the
QNX Neutrino Library Reference;
basename, cat, etc. in the
Utilities Reference
(see "File and directory
manipulation" in the Utilities Summary).
- Filesystems
- Working with Filesystems
in the QNX Neutrino User's Guide.
- Fonts
- Fonts chapter and
Photon in Embedded Systems
appendix in the Photon Programmer's Guide.
- Graphics
- Graphics DDK;
devg-*
drivers in the Utilities Reference.
- Hardware
- Connecting Hardware
in the QNX Neutrino User's Guide.
- HID (human input devices)
- hidview
and
devh-*
drivers in the Utilities Reference.
- Helpviewer (Photon)
- Using the Photon microGUI
in the QNX Neutrino User's Guide;
helpviewer
in the Utilities Reference.
- I/O management
- iofunc*,
Interrupt*, and
open()
and related functions via open()'s "See also"
section in the QNX Neutrino Library Reference;
Writing a Resource Manager
in the QNX Neutrino Programmer's Guide.
- IPC (interprocess communication)
- pthread_mutex*,
SyncMutex*,
sem_*,
SyncSem*,
pthread_cond*, and
SyncCondvar*
in the QNX Neutrino Library Reference.
See also "Message Passing," below.
- IPL (Initial Program Loader)
- Writing an IPL Program
in Building Embedded Systems.
- Images (OS)
- Making an OS Image
in Building Embedded Systems;
mkifs
in the Utilities Reference.
- Images (Photon)
- Raw Drawing and Animation
in the Photon Programmer's Guide.
- Input
- Input DDK;
devh-*
and
devi-*
drivers in the Utilities Reference.
- Instrumented kernel
- System Analysis Toolkit User's Guide.
- Interrupt handling
- InterruptAttach()
and related functions in its "See also" section in
the QNX Neutrino Library Reference.
- Kernel calls
- Channel*,
Clock*,
Connect*,
Debug*,
Interrupt*,
Msg*,
Sched*,
Signal*,
Sync*,
Thread*,
Timer*, and
TraceEvent()
in the QNX Neutrino Library Reference.
- Keyboard support
- Using the Command Line
in the QNX Neutrino User's Guide;
mkkbd
and related utilities in its "See also" section in
the Utilities Reference.
- Libraries
- Compiling and Debugging
in the QNX Neutrino Programmer's Guide;
Building OS and Flash Images
in the IDE User's Guide.
- Linker
- Compiling and Debugging
in the QNX Neutrino Programmer's Guide;
qcc
and related utilities in its "See also" section in the
Utilities Reference.
- Makefile structure
- Developing C/C++ Programs
in the IDE User's Guide;
Conventions for Makefiles and Directories
in the QNX Neutrino Programmer's Guide.
- Memory management
- mem*,
mmap*,
posix_mem*,
and
malloc()
in the QNX Neutrino Library Reference;
Heap Analysis: Making Memory Errors a Thing of the Past
in the QNX Neutrino Programmer's Guide;
Finding Memory Errors
in the IDE User's Guide.
- Message passing
- Msg*,
Connect*, and
Channel* in QNX Neutrino Library Reference.
See also "IPC," above.
- Message queues
- mq_*
functions in the QNX Neutrino Library Reference;
mqueue and mq
in the Utilities Reference.
- Multicore systems
- Multicore Processing
in the System Architecture guide;
the Multicore TDK
User's Guide;
procnto*
in the Utilities Reference.
- Native networking (Qnet)
- See "Transparent distributed processing," below.
- Network drivers
- Network DDK;
devn-*
drivers in the Utilities Reference.
- Package filesystem
- Working with Filesystems
in the QNX Neutrino User's Guide;
fs-pkg
in the Utilities Reference.
- Permissions (on files, directories)
- Managing User Accounts
and
Working with Files
chapters in the QNX Neutrino User's Guide;
chmod(),
stat(), and
umask()
in the QNX Neutrino Library Reference;
chmod
in the Utilities Reference.
- Power management
- Power Management User's Guide;
InterruptHookIdle()
in the QNX Neutrino Library Reference.
- Process manager
- procnto* in Utilities Reference;
procmgr_*
in the QNX Neutrino Library Reference.
- Processes
- Processes
in the QNX Neutrino Programmer's Guide;
exec*,
fork*, and
spawn*
in the QNX Neutrino Library Reference.
- Profiler (application)
- Profiling an Application
in the IDE User's Guide.
- Profiler (system)
- Analyzing Your System with Kernel Tracing
in the IDE User's Guide.
- Pulses
- MsgSendPulse(),
MsgReceivePulse(), and
pulse_*
in the QNX Neutrino Library Reference;
"Handling private messages and pulses" in the
chapter on writing resource managers in the QNX Neutrino Programmer's Guide.
- QoS (Quality of Service)
- "Quality of Service and multiple paths" in the Native Networking (Qnet) chapter in System Architecture;
netmgr_ndtostr()
in the QNX Neutrino Library Reference.
- RAM disk
- io-blk.so (using ramdisk=size option),
devb-ram, and
devf-ram
in the Utilities Reference.
- Realtime scheduling
- Sched* functions and
sched_param
structure in the QNX Neutrino Library Reference.
- Resource management
- Writing a Resource Manager
in the QNX Neutrino Programmer's Guide;
resmgr_*
and
iofunc_*
in the QNX Neutrino Library Reference.
- Resources, sharing among competing processes
- Adaptive Partitioning TDK
User's Guide
- Symmetric multiprocessing (SMP)
- Multicore Processing
in the System Architecture guide;
the Multicore TDK
User's Guide;
procnto*
in the Utilities Reference.
- Self-hosted development
- Compiling and Debugging
in the QNX Neutrino Programmer's Guide.
- Signal handling
- sigaction()
and related functions via its "See also" section in the
QNX Neutrino Library Reference.
- Startup programs
- Customizing Image Startup Programs in Building Embedded Systems;
startup-*
in the Utilities Reference.
- Synchronization
- Sync*
functions in the QNX Neutrino Library Reference.
- System information
- pidin and
sin
in the Utilities Reference;
Analyzing Your System with Kernel Tracing
in the IDE User's Guide;
Fine-Tuning Your System
in the QNX Neutrino User's Guide.
- Target agent (qconn)
- qconn
in the Utilities Reference;
IDE Concepts
in the IDE User's Guide.
- Threads
- pthread_* and
Thread*
in the QNX Neutrino Library Reference;
Programming Overview
in the QNX Neutrino Programmer's Guide.
- Time
- Configuring Your Environment
in the QNX Neutrino User's Guide;
Clock*,
time(),
and related functions via their "See also" sections in the
QNX Neutrino Library Reference.
- Timestamps (for files)
- touch
in the Utilities Reference;
utime()
and related functions via its "See also" section in the
QNX Neutrino Library Reference.
- Timers
- alarm(),
Timer*,
and timer_*
in the QNX Neutrino Library Reference.
- Transparent distributed processing
- Using Qnet for Transparent Distributed Processing
in the QNX Neutrino User's Guide;
Transparent Distributed Processing via Qnet
in the QNX Neutrino Programmer's Guide;
npm-qnet.so
in the Utilities Reference;
netmgr_*
in the QNX Neutrino Library Reference.
- USB
- Connecting Hardware
in the QNX Neutrino User's Guide;
devu-*,
devh-usb.so,
devi-hid, and
io-usb
in the Utilities Reference;
USB DDK.
- Unicode
- "Wide-character functions" in the Summary of Functions chapter of the QNX Neutrino Library Reference;
Unicode Multilingual Support
in the Photon Programmer's Guide.
- Version control
- Managing Source Code
in the IDE User's Guide;
Using CVS
in the QNX Neutrino User's Guide;
cvs
in the Utilities Reference.
- Web server (slinger)
- Setting Up an Embedded Web Server
in the QNX Neutrino User's Guide;
slinger
in the Utilities Reference.
- XIP (execute in place)
- Building OS and Flash Images
in the IDE User's Guide;
Writing an IPL Program
in Building Embedded Systems.
- Krten, Robert. 1999. Getting Started with
QNX Neutrino 2: A Guide for Realtime Programmers. Ottawa,
ON, Canada.
- -- . 2003. The QNX Cookbook: Recipes for Programmers.
Ottawa, ON, Canada.
QNX Software Systems has bought the rights to these books; see the latest QNX documentation at
http://www.qnx.com/developers/docs/index.html.
The latest POSIX standards documents are available online here:
http://www.opengroup.org/onlinepubs/007904975/nframe.html
In addition to the POSIX standards themselves, you might find the
following books useful:
- Butenhof, David R. 1997.
Programming with POSIX Threads.
Reading, MA: Addison-Wesley.
ISBN 0-201-63392-2.
- Gallmeister, Bill O. 1994.
POSIX.4: Programming for the Real World.
Sebastopol, CA: O'Reilly & Associates.
ISBN 1-56592-074-0.
- Hunt, Craig. 2002.
TCP/IP Network Administration.
Sebastopol, CA: O'Reilly & Associates.
ISBN 0-596-00297-1.
- Stevens, W. R. 1997.
UNIX Network Programming, Volume 1, Second Edition: Networking APIs: Sockets and XTI.
Upper Saddle River, NJ: Prentice-Hall.
ISBN 0-13-490012-X.
- -- . 1993.
TCP/IP Illustrated, Volume 1: The Protocols.
Reading, MA: Addison-Wesley.
ISBN 0-201-63346-9.
- -- . 1995.
TCP/IP Illustrated, Volume 2: The Implementation.
Reading, MA: Addison-Wesley.
ISBN 0-201-63354-X.
|
Some of the advanced API features mentioned in these
TCP/IP books might not be supported. |
Similar to the UNIX man command, Neutrino
presents a simple usage message for each command-line
utility. At the OS system prompt, type:
use utility_name
and you'll see a brief description as well as the
command-line options for that utility.
When working on your projects in the IDE's editor, whenever
you hover your mouse pointer over a function name in a line
of code, you'll see a popup text box containing that
function's purpose and synopsis (provided that it's a
documented Neutrino function).
For details, see the chapter on C/C++ development in the IDE User's Guide.
The first place to look for help is in the QNX Momentics documentation,
but if you still have problems, there are several other avenues of help:
The QNX Software Systems website (http://www.qnx.com) offers help on using QNX
Momentics through such facilities as:
- detailed lists of supported hardware
- Developer Support Center, which has many technical articles
and other resources
- Legal area, which gives details on product licensing
- Partners area, which includes lists of distributors and resellers
around the world
- and more
If you log into your myQNX account, you can
register your products and support plans and gain access to protected
areas of the website. The Developer Support Center and Download Center areas
have additional links and content.
You might also be given access to public and private newsgroups; see
"Try the newsgroups,"
below.
For general help with Eclipse, the open platform for our
IDE, visit the Eclipse consortium website (http://www.eclipse.org).
There you'll find valuable support in the form of
newsgroups, mailing lists, articles, and more.
Neutrino users form an active community worldwide.
Listed below (in alphabetical order) are just a few of the
community websites devoted to the OS:
For the current list of community resources, see the Developer Support Center
area of our website,
http://www.qnx.com.
The public support forums (qdn.public.* and
comp.os.qnx) are a very useful way to get help.
Several newsgroups are available from our news server:
news://inn.qnx.com.
Members of the Neutrino user community at large as well
as our own developers and staff frequent these newsgroups daily.
Your support plan might also give you access to private newsgroups via
news://nntp.qnx.com.
You can access a wide range of support resources, depending
on the particular support plan that you purchase. We offer
two main levels of support:
- Standard
- Includes Help Center access (phone, fax, or email), online account access, product updates, and bug reporting/tracking.
- Priority
- Comes in three varieties: Bronze, Silver, and Gold.
In addition to the Standard services, Priority services range from private
email addresses and newsgroups to training and
even design review.
For more information about our technical support offerings, including
email addresses and telephone numbers, please see the
Services section of our website
(http://www.qnx.com).
QNX training services offers many hands-on courses at your
choice of location (QNX headquarters, various training
centers around the world, or your site). For details,
including the current training schedule, see the Training
area in the Services section of our website
(http://www.qnx.com).
Depending on the nature of your particular project, you may
choose to engage us to help in areas
such as:
- custom BSPs
- device driver development
- hardware troubleshooting and integration
- application development
- migration/porting services
For more information, contact your local sales representative.