This Guide describes the contents and corresponding licensing attributes of version 6.3.0 Service Pack 2 of the QNX Momentics Development Suite tools (Standard Edition and Professional Edition), as well as the corresponding Neutrino Real Time Operating System (collectively, the "Software").
Most of the Software is licensed to you under version "meula1_05b" of the QNX Software System End User License Agreement ("QSS EULA"), a copy of which was provided with the Software and which has also published at http://licensing.qnx.com/published/eula/meula1_05b.html.* However, like all other operating system technology providers in the embedded marketplace, QSS includes certain third party software contributions in its products. Examples include our Eclipse-based Integrated Development Environment, our GNU-based compiler, linker & debugger tools, our NetBSD based TCP/IP stack, various standard development and runtime utilities, and a host of drivers that incorporate third party code supplied by the vendors of the hardware for which they were written.
This Guide has been prepared in order to present to you in a convenient manner all of the licensing considerations that relate to third party interests in QNX products. The Guide breaks down QNX product offerings into their constituent technologies, providing a useful product overview. A series of columns are used to link the applicable attributes to the relevant components. The contents of each column are further defined below. Specific export / import information is provided at the end of this Guide.
The Guide is broken down into three main sections: QNX Momentics Development Tools, QNX Neutrino Runtime Components and QNX Neutrino BSPs & Drivers. The QNX Momentics Development Tools represent the components that are typically used in-house by QNX customers within their embedded device development teams. The QNX Neutrino Runtime Components represent a comprehensive list of the QNX technologies available to those teams for use in their final products. Your developers will select a subset of these to ship in the devices they develop. QNX Neutrino BSPs and Drivers consist primarily of runtime components, but they have been listed separately from the Neutrino Runtime Component section in order to eliminate repetition and to isolate the sections of this document that are likely to change (i.e., as additional BSPs and drivers are added).
You will find that many of the described line items have a corresponding list of directories. These indicate the origin of source code materials used to build the component. They don't include all of the header files and libraries used in compiling and linking (either by QSS in delivering the binaries, or by you in creating your own target system software), or all of the related executables (e.g., utilities). These are included in other sections of this Guide (e.g., Platform Core).
Runtime licensing is provided under a separate agreement (e.g., a Runtime License Agreement or an OEM License Agreement), as further described in the QSS EULA. These agreements provide license rights to redistribute "Runtime Components" (as defined in the QSS EULA). Runtime components are described in the QNX Neutrino Runtime Components and QNX Neutrino BSP & Driver portions of this document. Runtime Components of Driver Development Kits and Technology Development Kits generally do not bear additional royalties when distributed for use in association with a corresponding version of QNX. See the Licenses column for details on particular products.
Third party license terms are a fact of life in any modern embedded development project. When adopting QNX tools or runtime components your developers can review this License Guide to determine any applicable license terms or special considerations that apply to the QNX products they plan to use. To identify the subset of relevant license terms for a particular configuration of runtime components in their target device, they just gather the applicable references in the License(s) column for the applicable technologies they have adopted.
The information provided in any row of a product description applies to all of its
| Column | Content Description |
| SE | Indicates the contents of the Standard Edition version of the QNX Momentics Development Suite product. "S" means "standard", "B" means "bundled with", "O" means "optional", and "NA" means "not available". |
| PE | Indicates the contents of the Professional Edition version of the QNX Momentics Development Suite product. "S" means "standard", "B" means "bundled with", "O" means "optional", and "NA" means "not available". |
| Code | Indicates the form of software code provided. References to "Source" indicate that "source code is included", rather than "comprehensive source code for every elements of the product is included". "Object" means binaries in object or executable form. |
| Type | Indicates the Type I, Type II and Type III Software ratings, as defined in the QSS EULA. |
| Support | Indicates the level of support provided for the referenced products. "Full" means full support by QSS under its Standard and Priority Support Plans. "Limited" means there limits are imposed on QSS's support ("Limited (Source)" means the limits relate to support of source code and "Limited (3rd Party)" means the limits relate to QSS reliance on third parties for support). "Unsup" means QSS does not provide support for the referenced component(s). |
| Licenses | Indicates the end user license terms, including any flow-through terms referenced in the consolidated Third Party License Terms Guide (version 1_05b) ("TPLTG") which is published at http://licensing.qnx.com/published/eula/TPLTG1_05b.html.* |
* Copies of the QSS EULA and the TPLTG may also be obtained directly from QNX Software Systems.
QNX Software Systems International Corporation is the licensing entity for intellectual property owned by QNX Software Systems GmbH & Co. KG. All intellectual property, including without limitation copyrights, formerly held by QNX Software Systems Ltd. are now owned by QNX Software Systems GmbH & Co. KG. Copyright notices in the Software and documentation will be updated in due course to reflect change in ownership.
NOTE: Additional/updated Software was released after the initial release of QNX 6.3.0 SP2 on October 11, 2005. These are listed at the end of the document. Descriptions of previously-released Software have not changed.
Note: for best printing results, print in landscape orientation.
The QNX Momentics Development Tools comprise development tools and software development kits that are not redistributable except as expressly provided under the corresponding QNX Neutrino Runtime Component description. In particular, libraries are provided in several different forms. Each type has different redistribution rules, as follows:
| Name | Description | SE | PE | Code | Type | Support | Licenses |
| QNX Momentics Base Development Kit | Complete set of development tools, associated configuration files (e.g. header files for APIs), static libraries and documentation for creating applications for the QNX Neutrino RTOS. | S | S | Object | Type I, except as noted below | Full | QSS EULA, except as noted in TPLTG references below. Licensed on a Licensed Seat or Floating Licensed Seat basis. |
GNU Tools |
GPL | ||||||
GNU Compiler Collection (GCC) — Complete set of development tools, associated configuration files and static libraries for compiling applications for QNX Neutrino RTOS.
|
|||||||
GNU binutils: Assembler (gas), Linker (ld) — Tools for manipulation of binary (executable, object) files in development environments.
|
|||||||
GNU Development and build tools — Tools used in applications development including make, parser generators.
|
|||||||
GNU Debugger — GNU debugger (GDB ) with remote debugging capability.
|
GPL | ||||||
Utilities — Tools used with GDB.
|
OO: 83 | ||||||
System Libraries and Headers |
|||||||
QNX system library for OS API
|
BPL: 1; BSD1: 53; BSD2: 62; OO: 30, 82, 84 |
||||||
Device driver interface — headers and libraries for use with device drivers
|
LGPL -- lib/asound only |
||||||
Legacy libraries — Libraries from previous versions of Neutrino and Photon
|
|||||||
QNX / Dinkum C library |
|||||||
Dinkum C++ library and template support
|
OO: 27 | ||||||
Embedded C++ library and template support (Dinkum abridged library).
|
|||||||
Networking library
|
BSD1: 20, 57, 72; BSD2: 18; DEC: 9; IBM: 5; ISC: 6; OO: 150, 2, 33, 62, 86 | ||||||
Compression libraries
|
Type II | OO: 147, 31 | |||||
XML library
|
|||||||
Encryption libraries
|
Contact QSS at licensing@qnx.com for details on specific encryption-enabled utilities | ||||||
Image handling libraries — libraries for reading image formats
|
Type III | OO: 47, 48, 79 | |||||
N.B. QSS does not offer any 3rd party JPEG patent licenses or related infringement indemnification.
|
No 3rd party patent licenses provided
|
||||||
GNU C++ legacy library — GNU libstdc++ library from previous versions of Neutrino, for compatibility.
|
Type III | LGPL | |||||
Utilities — Command line development tools for object file and executable file manipulation, and utilities tools primarily provided for development purposes. |
|||||||
SDK utilities — Tools used for creating applications and boot images.
|
|||||||
QNX Development Utilities — Developer productivity tools.
|
BSD1: 6; BSD2: 30, 78; OO: 142, 57, 58 | ||||||
QNX Development Utilities — Self-hosted environment utilities.
|
BSD2: 30, 6, 78, 92, 94; OO: 143, 149, 22, 25, 72 | ||||||
TCP/IP Development Utilities (rpcgen — only for QNX (self) hosted development)
|
|||||||
Runtime Utilities (See QNX Neutrino Runtime Component table) |
|||||||
GNU Development Utilities — Version control and other development services.
|
GPL | ||||||
GNU Development Utilities — Used in development for data transfer.
|
GPL | ||||||
GNU Development Utilities — Optional / convenience development tools.
|
GPL | ||||||
Cross-Hosted Development — Provides complete support for QNX Neutrino development under either Windows NT (including Windows XP, Windows 2000), Solaris (SPARC), or Linux (Red Hat) operating systems.
|
|||||||
Windows host environment — Operating environment for development tools.
|
|||||||
Processor Support — Provides complete support for developing QNX Neutrino RTOS applications targeting a variety of processor architectures (32 bit MMU). |
|||||||
Embedding Tools — Provides complete support for creating boot images for embedded devices, based on single-board computers or custom board designs. Adds features for reduced memory footprint on the target device.
|
|||||||
Target system development utilities
|
BSD1: 32 | ||||||
Utilities (mkifs, mkefs, mkimage, mkrec, dumpifs)
|
|||||||
GUI Connectivity — Photon MicroGUI connectivity tools for the development environment (i.e. Phindows).
|
CMU: 10 | ||||||
Windows host environment
|
|||||||
Sample Code
|
Unsupported | ||||||
| QNX Momentics Integrated Development Environment | QNX Momentics Integrated Development Environment (IDE) provides a cross-platform, integrated development environment as added value to the QNX Momentics Development Kit. The IDE provides complete development life cycle tools for QNX Neutrino RTOS applications, as well as the ability to ""plug in"" third party tools in an integrated manner. | NA | S | Object | Type I, except as noted below | Full | QSS EULA, except as noted in TPLTG references below. Licensed on a Licensed Seat or Floating Licensed Seat basis. |
Eclipse Platform |
See note in Description column re. 3rd party contributions in Eclipse.
|
||||||
Java-based IDE framework |
|||||||
Graphical Workbench — Workbench for managing projects and their resources |
|||||||
Plug-in model for integrating new tools |
|||||||
Frameworks for integrating important tool categories (navigators, source code repositories) Cross-platform |
|||||||
Java-based tools (same tool for all platforms) |
|||||||
Information about 3rd party contributions (and their license terms) for the Eclipse IDE may be referenced from the IDE as follows: ""Help -> About QNX Momentics IDE -> Plug-in Details"", select each plug-in then ""More Info"".
|
|||||||
Target Agent — Target resource request broker.
|
BSD2: 98 | ||||||
C/C++ Code Developer — C/C++ Browsing Perspective is used to navigate the class and structure members of a particular project |
Experimental Code | Unsupported | |||||
C Project Manager |
|||||||
Project Builder |
|||||||
Project creation wizard |
|||||||
Syntax-aware editing of C/C++ files |
|||||||
File navigation |
|||||||
Team Collaboration |
|||||||
C/C++ Debugger |
|||||||
Graphical debugger |
|||||||
Application state view |
|||||||
Dynamically updating source and data views |
|||||||
System Builder — Graphical boot image editor. |
|||||||
Target System Information — Analyzer for visualizing state of target systems. |
|||||||
Dynamic system resource views |
|||||||
Memory Analyzer |
|||||||
Dynamic memory views for a process |
|||||||
Memory allocation logging and probing |
|||||||
Application Profiler |
|||||||
Post-mortem views of time spent in functions |
|||||||
Post-mortem, call tree/call pairs display |
|||||||
System Profiler — Dynamic time-based visualization tool for behaviour of target system. |
|||||||
Post-mortem system state transition view |
|||||||
Post-mortem view of system execution |
|||||||
Code Coverage Tool |
|||||||
Post-mortem views of basic block execution |
|||||||
Post-mortem statistical views |
|||||||
| Photon MicroGUI Development Kit | Development tools, configuration files, static libraries and documentation for creating MicroGUI (Photon) graphical applications. | See below | S | Object | Type I | Full | QSS EULA, except as noted in TPLTG references below. Licensed on a Licensed Seat or Floating Licensed Seat basis. |
Photon Application Builder (PhAB) — Visual design and code generation tool for graphical applications.
|
S | ||||||
Layout of user interface from palette of components (widgets) |
|||||||
Resource editors for controlling the properties of any user interface element (widget, icons, bitmaps, etc.) |
|||||||
Automated code generation |
|||||||
Utilities
|
BSD2: 57 | ||||||
Photon MicroGUI libraries |
S | ||||||
Graphics
|
CMU: 10 | ||||||
Widget |
|||||||
Application Builder intrinsics |
|||||||
Plug-in libraries (images) |
|||||||
Photon MicroGUI Application Builder for Windows host operating system — (not available for Solaris or Linux hosts)
|
NA | ||||||
Photon Samples |
Unsupported | ||||||
Demos
|
|||||||
3D — Mesa library demos
|
|||||||
Games
|
OO: 138 | ||||||
| Driver Development Kits (DDKs) | Basic kits for creating different classes of device drivers. | S | S | Object and Source | Type I, except as noted in the QNX Neutrino BSPs and Drivers table | Limited (Source) | QSS EULA, except as noted in TPLTG references in the QNX Neutrino BSPs and Drivers table. Licensed on a Licensed Seat or Floating Licensed Seat basis. |
Kits include:
|
|||||||
| Information for specific drivers included in this DDK has been provided in the QNX Neutrino BSPs and Drivers table below | |||||||
Driver class kits: |
S | S | Object and Source | Type I, except as noted in the QNX Neutrino BSPs and Drivers table | Limited (Source) | QSS EULA, except as noted in TPLTG references in the QNX Neutrino BSPs and Drivers table. Licensed on a Licensed Seat or Floating Licensed Seat basis. |
|
Character (serial 8250) Driver Development Kit — sample serial driver, libraries and utilities |
|||||||
Audio Driver Development Kit — kit for creating hardware drivers for raw audio capture and playback. |
|||||||
Graphics Driver Development Kit — Provides source code for a number of drivers and library utilities shipping with the QNX Photon microGUI, including: |
|||||||
Input Driver Development Kit — Provides source code for a number of input modules (mouse, keyboard, touch-screen) and library utilities |
|||||||
Network — kit for creation of Ethernet drivers |
|||||||
Printer Driver Development Kit — Library with functions for writing code to read and process files, break pages into slices, and return rendered slices for printing |
|||||||
USB — development kit (headers & libraries) for creation of new new USB drivers of standard (mouse, keyboard) and other types (e.g. camera, etc.) |
|||||||
| Flash File Systems and Embedding Technology Development Kit (TDK)
*Additional updates effective November 2, 2005 - see end of document |
Resilient file system support for flash media, including support for decompression and compression tools. Resilient to failure, support for NAND or NOR, allows use of POSIX file system modules with flash media (devb-nand). Flash file system support is not required for embedded images (IFS). | O | O | Object and Source | Type I | Limited (Source) | QSS EULA, except as noted in TPLTG references below. Licensed on a Project, Platform or Field of Use basis. |
Flash file system — Read/write file systems for different flash parts.
|
|||||||
FFSv2 — NOR flash file system. |
|||||||
FFSv3 — NOR flash file system with added resilience features. |
|||||||
NAND (devb-nand) — NAND block driver for limited use with various file system formats. |
|||||||
ETFS (Expected availability -- CY 2005) — Resilient transactional file system for flash media. |
|||||||
Inflator tool — on-the-fly decompressor. |
|||||||
Deflator tool — off-line compression utility. |
|||||||
Formats * |
* Flash File System runtime license is limited to use with io-block subsystem and NAND driver (devb-nand). | ||||||
POSIX / QNX4 — Full POSIX file semantics. |
|||||||
DOS — Support for FAT12, FAT16 and FAT32 file systems |
Type III | ||||||
N.B. QSS does not offer any Microsoft FAT patent licenses or related infringement indemnification.
|
No 3rd party patent licenses provided
|
||||||
BSPs — Source code, binaries and documentation to board support packages for QSS-specified reference designs. Each BSP's contents will vary according to the vertical market focus. The BSPs generally include: |
|||||||
Board bring-up libraries (IPL, Startup, flash) and headers |
|||||||
Embedding Source |
|||||||
Source code to board bring-up libraries |
|||||||
Source code to driver libraries |
|||||||
Validation environments — Source code and pre-compiled debug versions of board support packages for QNX reference platforms. This includes board-specific drivers (see DDK particulars in QNX Neutrino BSPs and Drivers table below), such as: |
|||||||
Audio |
|||||||
Network |
|||||||
HID (mice, keyboards, USB) |
|||||||
Printers |
|||||||
Etc. |
|||||||
BSP-specific information is provided in the QNX Neutrino BSPs and Drivers table below. Standard Support subscription for this TDK entitles subscribers to new BSPs as they are released. |
|||||||
| Extended Networking TDK | IPv6 and private networking (IPSec, IKE2) technologies. Includes all protocol stacks, utilities and services for the corresponding domains. | O | O | Object and Source, except as noted below | Type I, except as noted below | Limited (Source), unless otherwise noted below | QSS EULA, except as noted in TPLTG references below. Licensed on a Project, Platform or Field of Use basis. |
IPv6 Networking — Protocol stacks (including source code which is an extension to Platform Source).
|
BSD2: 62; OO: 87; OO : 42 |
||||||
Stack
|
|||||||
Utilities & Services
|
BSD1: 20, 72, 76, 79; BSD2: 81, 82; DEC: 10; IBM: 5; ISC: 4, 5 | ||||||
Secure Private Networking (IPSec) — Protocol stacks (including source code which is an extension to Platform Source). |
|||||||
Key management utilities
|
BSD1: 72, 76 | ||||||
Security utilities |
|||||||
Note: includes encryption software
|
Contact QSS at licensing@qnx.com for details on specific encryption-enabled utilities | ||||||
Additional Protocols — Streaming transport and control protocol (e.g. streaming media). For applications requiring timely delivery of streamed data (e.g. VoIP).
|
BSD1: 70; BSD2: 70 | ||||||
SCTP |