Definitions and Data types
Defines
-
UMS_SCHEDULER_STARTUP
UMS scheduling proc activation due to scheduler thread startup
-
UMS_SCHEDULER_THREAD_YIELD
UMS scheduling proc activation due to worker thread yield
-
UMS_SCHEDULER_THREAD_END
UMS scheduling proc activation due to worker thread termination
Enums
Structs
-
struct ums_scheduler_startup_info_s
Specifies attributes for a user-mode scheduling (UMS) scheduler thread. The enter_ums_scheduling_mode() function uses this structure.
Public Members
-
ums_completion_list_t completion_list
An UMS completion list to associate with the calling thread.
-
ums_scheduler_entry_point_t ums_scheduler_entry_point
An application-defined ums_scheduler_entry_point_t entry point function. The system calls this function when the calling thread has been converted to UMS and is ready to run UMS worker threads. Subsequently, it calls this function when a UMS worker thread running on the calling thread yields or terminates.
-
void *scheduler_param
An application-defined parameter to pass to the specified ums_scheduler_entry_point_t function.
-
ums_completion_list_t completion_list
-
struct ums_attr_s
Specifies attributes for a user-mode scheduling (UMS) worker thread.
Public Members
-
ums_completion_list_t completion_list
An UMS completion list to associate with the worker thread. The newly created worker thread is queued to the specified completion list.
-
pthread_attr_t *pthread_attr
A pointer to a pthread attributes to configure the worker thread.
-
ums_completion_list_t completion_list
Unions
-
union ums_activation_u
- #include <umsdefs.h>
UMS scheduling proc activation.
Public Members
-
ums_context_t context
UMS worker thread context
-
ums_context_t context
Typedefs
-
typedef pid_t ums_context_t
UMS worker thread context.
-
typedef int ums_completion_list_t
UMS completion list.
-
typedef union ums_activation_u ums_activation_t
UMS scheduling proc activation.
-
typedef enum ums_reason_e ums_reason_t
UMS scheduling proc activation reason.
-
typedef void (*ums_scheduler_entry_point_t)(ums_reason_t reason, ums_activation_t *activation, void *scheduler_param)
The application-defined user-mode scheduling (UMS) scheduler entry point function associated with a UMS completion list.
- Parameters
reason – [in] The reason the scheduler entry point is being called.
activation – [in] If the
reason
parameter is UMS_SCHEDULER_STARTUP or UMS_SCHEDULER_THREAD_END, this parameter is NULL. If thereason
parameter is UMS_SCHEDULER_THREAD_YIELD, this parameter contains the UMS thread context of the UMS worker thread that yielded.scheduler_param – [in] If the
reason
parameter is UMS_SCHEDULER_STARTUP, this parameter is the ums_scheduler_startup_info_t::scheduler_param member of the ums_scheduler_startup_info_t structure passed to the enter_ums_scheduling_mode() function that triggered the entry point call. If thereason
parameter is UMS_SCHEDULER_THREAD_YIELD this parameter is thescheduler_param
parameter passed to the ums_thread_yield() function that triggered the entry point call.
-
typedef struct ums_scheduler_startup_info_s ums_scheduler_startup_info_t
Specifies attributes for a user-mode scheduling (UMS) scheduler thread. The enter_ums_scheduling_mode() function uses this structure.
-
typedef struct ums_attr_s ums_attr_t
Specifies attributes for a user-mode scheduling (UMS) worker thread.