Integrations (PTC products, 3rd party products and code) > Code integration (Ada, ARINC 653, C, C#, C++, IDL, Java, SQL and VB) > ARINC 653 for PikeOS 653 code > ARINC 653 for PikeOS 653 profile items > Memory requirement (ARINC for PikeOS code)
  
Memory requirement (ARINC for PikeOS code)
Each memory requirement defines an area of memory required by a partition. Memory requirements are scoped by partitions, but a partition may scope more than one. For more information see the ARINC SPECIFICATION 653P1-2, December 1, 2005.
A Memory Requirement models the <MemoryRequirement> element of an ARINC 653 configuration. The <MemoryRequirement> element is a child element of the Partition's <MemoryRequirementList> element.
The structure of the <MemoryRequirement> element is as follows for PikeOS:
<MemoryRequirement Name="" Type="" SizeBytes="" PhysicalAddress="" Alignment="" ContigMem="" Access="" CacheMode="" IsPool="">
Create a Memory Requirement on a Configuration Diagram: click the Memory Requirement toolbar button, and then click within a Partition Part.
To set an ARINC 653 property of a Memory Requirement: right-click the File Access, point to ARINC 653, point to Set, and then click the command for the property you want to set.
When shown on a Configuration Diagram, a Memory Requirement's notation is as follows:
You can view all the Memory Requirements in the model through the MemoryRequirement folder in the ARINC 653 Profile pane.
A Memory Requirement is based on a UML Attribute.
The following sections provide information about how a Memory Requirement is used in the model.
Shown on these diagrams
Configuration Diagram
ARINC properties
Access - generated as the Access attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click Access.
Alignment - generated as the Alignment attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click Alignment.
CacheMode - generated as the CacheMode attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click CacheMem. Possible values are VM_MEM_CACHE_CB, VM_MEM_CACHE_WT or VM_MEM_CACHE_INHIBIT.
ContigMem - generated as the ContigMem attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click ContigMem. Possible values are TRUE or FALSE.
IsPool - generated as the IsPool attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click IsPool. Possible values are TRUE or FALSE.
PhysicalAddress - generated as the PhysicalAddress attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click PhysicalAddress.
SizeBytes - generated as the SizeBytes attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click SizeBytes.
Type - generated as the Type attribute of the <MemoryRequirement> element. To set this property: right-click the Memory Requirement, point to ARINC 653, point to Set, and then click Type.
The Name of the Memory Requirement is generated as the Name attribute of the <MemoryRequirement> element.