Communicating with processes of different architectures

Updated: April 19, 2023

If you're using Transparent Distributed Processing (TDP) across Qnet, your programs might need to communicate with processes that use a different architecture. We support connections across Qnet between QNX Neutrino 7.0 (32- or 64-bit) and the following:

If you get a message, you can check the message information that MsgReceive() provides. The _msg_info structure's flag member can include the following bits:

The sender is using a 64-bit architecture.
The sender and receiver are using different word-size architectures (e.g, the sender is using a 32-bit architecture, and the receiver is using a 64-bit architecture).

If your program can't handle the format of the message, it can use MsgError() to return an error (for example, ENOTSUP) to the sender. For more information, see Replying with no data, or an errno in the Message Passing chapter of Getting Started with QNX Neutrino.