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

enum ums_reason_e

UMS scheduling proc activation reason.

Values:

enumerator UMS_SCHEDULER_STARTUP
enumerator UMS_SCHEDULER_THREAD_YIELD
enumerator UMS_SCHEDULER_THREAD_END

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.

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.

Unions

union ums_activation_u
#include <umsdefs.h>

UMS scheduling proc activation.

Public Members

ums_context_t context

UMS worker thread 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
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.