Blackboard (ARINC for PikeOS code)
A Blackboard is used to transfer messages between processes within the same partition. Blackboards must therefore always be scoped to partitions. The messages are not queued - each time a message is written it overwrites the previous message. For more information see the ARINC SPECIFICATION 653P1-2, December 1, 2005.
A Blackboard is created in the application startup code that is generated for each of the Partition Part's Application Parts. For example, using C:
/* Header File */
#include <apex_blackboards.h>
...
extern BLACKBOARD_ID_TYPE Blackboard1_id;

/* Implementation File */
BLACKBOARD_ID_TYPE Blackboard1_id;
...
CREATE_BLACKBOARD("Blackboard1", 256, &Blackboard1_id, &rc);
ASSERT(rc == NO_ERROR);
Create a Blackboard on a Configuration Diagram: click the . Blackboard button, and then click within a Partition Part.
Specify the MaxMessageSize of the Blackboard through its context menu: right-click the Blackboard, point to ARINC 653, point to Set, and then click MaxMessageSize.
When shown on a Configuration Diagram, a Blackboard's notation is as follows:
You can view all the Blackboards in the model through the Blackboard folder in the ARINC 653 Profile pane.
A Blackboard is based on a UML Attribute.
The following sections provide information about how a Blackboard is used in the model.
Shown on these diagrams
ARINC properties
MaxMessageSize - generated as the maximum message size of the blackboard in the application startup code. To set this property: right-click the Blackboard, point to ARINC 653, point to Set, and then click MaxMessageSize.