Please note as of Wednesday, August 15th, 2018 this wiki has been set to read only. If you are a TI Employee and require Edit ability please contact x0211426 from the company directory.
How is SYS/BIOS related to IPC?
SYS/BIOS, and so IPC can only be used on processors running SYS/BIOS applications. IPC provides modules and APIs that extend SYS/BIOS to make it easy to communicate between processors in a multi-processor environment. Your applications can communicate using message passing, streams, and linked lists. These object types work transparently in both uni-processor and multi-processor configurations.
|HeapBuf||Multicore/processor-safe shared memory implementation of SYS/BIOS's HeapBuf module|
|HeapMultiBuf||Multicore/processor-safe shared memory implementation of SYS/BIOS's HeapMultiBuf module|
|List||Atomic linked lists|
|ListMP||Multiprocessor atomic linked lists|
|MessageQ||Transparent, variable-length messages|
|NameServer||Enables locating IPC objects in multi-core/processor topologies|
|Notify||Low-latency asynchronous interrupt to another processor|
|SharedRegion||Enables definition of shared pointers between different processors/cores|
|Stream||Read/write or buffer streaming interface to peripheral drivers|
MessageQ objects enable zero copy, variable-length message passing. The MessageQ object provides transparent communication between threads regardless of whether the application is running on a single processor, multiple discrete processors, or a multicore device.
For communication between multiple cores or processors, a MessageQ Transport (MQT) is needed. For this purpose, IPC provides a shared memory transport for core-to-core communication on multicore devices. This MQT uses underlying hardware features such as atomic access monitors or hardware semaphores to provide the most efficient implementation.
IPC is described in the IPC User's Guide.