Software Processes - AboudyKreidieh/truck-code GitHub Wiki
Table of contents
Introduction
The processes spread out within the truck-code framework are responsible for everything from data acquisition and logging to torque/brake control. A sketch of the general architecture and how the various software processes interact with one another can be seen in the figure below. Each of these processes are described in detail in the next section.
Overview of Processes
The below pages provide a detailed description of each of process available within the framework.
Communication Between Processes
Processes communicate asynchronous messages with one another via a publish/subscribe interface within the QNX operating system called "Persistent Publish/Subcribe", or PPS. These message are often communicated to multiple processes simultaneously. For example, the J1939 messages that are communicated to the PPS server by the rd_j1939
process is received by both the ctrl_long
and logger
processes.
If you are a developer and wish to add additional processes to the framework, or if you would like to further understand the internals of the publish/subscribe abstraction, you are encouraged to review this page.