RTEMS CPU Kit with SuperCore
4.11.3
|
Multiprocessing Support in Region Manager. More...
![]() |
Files | |
file | regionmp.c |
Region MP Support. | |
Data Structures | |
struct | Region_MP_Packet |
The following data structure defines the packet used to perform remote region operations. More... | |
Enumerations | |
enum | Region_MP_Remote_operations { REGION_MP_ANNOUNCE_CREATE = 0, REGION_MP_ANNOUNCE_DELETE = 1, REGION_MP_EXTRACT_PROXY = 2, REGION_MP_GET_SEGMENT_REQUEST = 3, REGION_MP_GET_SEGMENT_RESPONSE = 4, REGION_MP_RETURN_SEGMENT_REQUEST = 5, REGION_MP_RETURN_SEGMENT_RESPONSE = 6 } |
The following enumerated type defines the list of remote region operations. | |
Functions | |
void | _Region_MP_Send_process_packet (Region_MP_Remote_operations operation, Objects_Id region_id, rtems_name name, Objects_Id proxy_id) |
Region MP Send Process Packet. More... | |
rtems_status_code | _Region_MP_Send_request_packet (Region_MP_Remote_operations operation, Objects_Id region_id, void *segment, intptr_t size, rtems_option option_set, rtems_interval timeout) |
Region MP Send Request Packet. More... | |
void | _Region_MP_Send_response_packet (Region_MP_Remote_operations operation, Objects_Id region_id, Thread_Control *the_thread) |
Region MP Send Response Packet. More... | |
void | _Region_MP_Process_packet (rtems_packet_prefix *the_packet_prefix) |
Region MP Process Packet. More... | |
void | _Region_MP_Send_extract_proxy (void *argument) |
Region MP Send Extract Proxy. More... | |
Region_MP_Packet * | _Region_MP_Get_packet (void) |
RegionMP Get Packet. More... | |
Multiprocessing Support in Region Manager.
This encapsulates functionality related to the transparent multiprocessing support within the Classic API Region Manager.
This include file contains all the constants and structures associated with the Multiprocessing Support in the Region Manager.
Region_MP_Packet* _Region_MP_Get_packet | ( | void | ) |
RegionMP Get Packet.
This function is used to obtain a region mp packet.
References _MPCI_Get_packet().
void _Region_MP_Process_packet | ( | rtems_packet_prefix * | the_packet_prefix | ) |
Region MP Process Packet.
This routine performs the actions specific to this package for the request from another node.
void _Region_MP_Send_extract_proxy | ( | void * | argument | ) |
Region MP Send Extract Proxy.
This routine is invoked when a task is deleted and it has a proxy which must be removed from a thread queue and the remote node must be informed of this.
References _Region_MP_Send_process_packet().
void _Region_MP_Send_process_packet | ( | Region_MP_Remote_operations | operation, |
Objects_Id | region_id, | ||
rtems_name | name, | ||
Objects_Id | proxy_id | ||
) |
Region MP Send Process Packet.
This routine performs a remote procedure call so that a process operation can be performed on another node.
Referenced by _Region_MP_Send_extract_proxy().
rtems_status_code _Region_MP_Send_request_packet | ( | Region_MP_Remote_operations | operation, |
Objects_Id | region_id, | ||
void * | segment, | ||
intptr_t | size, | ||
rtems_option | option_set, | ||
rtems_interval | timeout | ||
) |
Region MP Send Request Packet.
This routine performs a remote procedure call so that a directive operation can be initiated on another node.
void _Region_MP_Send_response_packet | ( | Region_MP_Remote_operations | operation, |
Objects_Id | region_id, | ||
Thread_Control * | the_thread | ||
) |
Region MP Send Response Packet.
This routine performs a remote procedure call so that a directive can be performed on another node.