RTEMS CPU Kit with SuperCore  4.11.2
Modules | Macros | Typedefs

Object Attributes Handler. More...

Collaboration diagram for Attributes:

Modules

 Classic Attributes Implementation
 

Macros

#define RTEMS_DEFAULT_ATTRIBUTES   0x00000000
 This is the default value for an attribute set. More...
 
#define RTEMS_LOCAL   0x00000000
 This is the attribute constant to indicate local resource.
 
#define RTEMS_GLOBAL   0x00000002
 This is the attribute constant to indicate global resource.
 
#define RTEMS_FIFO   0x00000000
 This is the attribute constant which reflects that blocking tasks will be managed using FIFO discipline.
 
#define RTEMS_PRIORITY   0x00000004
 This is the attribute constant which reflects that blocking tasks will be managed using task priority discipline.
 
#define RTEMS_NO_FLOATING_POINT   0x00000000
 This attribute constant indicates that the task will not use the floating point hardware. More...
 
#define RTEMS_FLOATING_POINT   0x00000001
 This attribute constant indicates that the task will use the floating point hardware. More...
 
#define RTEMS_SEMAPHORE_CLASS   0x00000030
 This is the mask for the attribute bits associated with the Classic API Semaphore Manager.
 
#define RTEMS_COUNTING_SEMAPHORE   0x00000000
 This attribute constant indicates that the Classic API Semaphore instance created will be a counting semaphore.
 
#define RTEMS_BINARY_SEMAPHORE   0x00000010
 This attribute constant indicates that the Classic API Semaphore instance created will be a proper binary semaphore or mutex.
 
#define RTEMS_SIMPLE_BINARY_SEMAPHORE   0x00000020
 This attribute constant indicates that the Classic API Semaphore instance created will be a simple binary semaphore.
 
#define RTEMS_NO_INHERIT_PRIORITY   0x00000000
 This attribute constant indicates that the Classic API Semaphore instance created will NOT use the Priority Inheritance Protocol.
 
#define RTEMS_INHERIT_PRIORITY   0x00000040
 This attribute constant indicates that the Classic API Semaphore instance created will use the Priority Inheritance Protocol. More...
 
#define RTEMS_NO_PRIORITY_CEILING   0x00000000
 This attribute constant indicates that the Classic API Semaphore instance created will NOT use the Priority Ceiling Protocol.
 
#define RTEMS_PRIORITY_CEILING   0x00000080
 This attribute constant indicates that the Classic API Semaphore instance created will use the Priority Ceiling Protocol. More...
 
#define RTEMS_NO_MULTIPROCESSOR_RESOURCE_SHARING   0x00000000
 This attribute constant indicates that the Classic API Semaphore instance created will NOT use the Multiprocessor Resource Sharing Protocol.
 
#define RTEMS_MULTIPROCESSOR_RESOURCE_SHARING   0x00000100
 This attribute constant indicates that the Classic API Semaphore instance created will use the Multiprocessor Resource Sharing Protocol. More...
 
#define RTEMS_BARRIER_AUTOMATIC_RELEASE   0x00000010
 This attribute constant indicates that the Classic API Barrier instance created will use an automatic release protocol.
 
#define RTEMS_BARRIER_MANUAL_RELEASE   0x00000000
 This attribute constant indicates that the Classic API Barrier instance created will use the manual release protocol.
 
#define RTEMS_APPLICATION_TASK   0x00000000
 This attribute constant indicates that the task was created by the application using normal Classic API methods.
 
#define RTEMS_SYSTEM_TASK   0x00008000
 This attribute constant indicates that the task was created by RTEMS as a support task.
 

Typedefs

typedef uint32_t rtems_attribute
 This defines the type used to contain Classic API attributes. More...
 

Detailed Description

Object Attributes Handler.

This encapsulates functionality which defines and manages the set of Classic API object attributes.

This include file contains all information about the Object Attributes Handler.

Macro Definition Documentation

◆ RTEMS_DEFAULT_ATTRIBUTES

#define RTEMS_DEFAULT_ATTRIBUTES   0x00000000

This is the default value for an attribute set.

Referenced by rpcUdpCleanup().

◆ RTEMS_FLOATING_POINT

#define RTEMS_FLOATING_POINT   0x00000001

This attribute constant indicates that the task will use the floating point hardware.

There will be a floating point context associated with this task.

Referenced by _Attributes_Is_floating_point().

◆ RTEMS_INHERIT_PRIORITY

#define RTEMS_INHERIT_PRIORITY   0x00000040

This attribute constant indicates that the Classic API Semaphore instance created will use the Priority Inheritance Protocol.

Note
The semaphore instance must be a binary semaphore.

Referenced by _Attributes_Has_at_most_one_protocol(), and _Attributes_Is_inherit_priority().

◆ RTEMS_MULTIPROCESSOR_RESOURCE_SHARING

#define RTEMS_MULTIPROCESSOR_RESOURCE_SHARING   0x00000100

This attribute constant indicates that the Classic API Semaphore instance created will use the Multiprocessor Resource Sharing Protocol.

Note
The semaphore instance must be a binary semaphore.

Referenced by _Attributes_Has_at_most_one_protocol(), and _Attributes_Is_multiprocessor_resource_sharing().

◆ RTEMS_NO_FLOATING_POINT

#define RTEMS_NO_FLOATING_POINT   0x00000000

This attribute constant indicates that the task will not use the floating point hardware.

If the architecture permits it, then the FPU will be disabled when the task is executing.

◆ RTEMS_PRIORITY_CEILING

#define RTEMS_PRIORITY_CEILING   0x00000080

This attribute constant indicates that the Classic API Semaphore instance created will use the Priority Ceiling Protocol.

Note
The semaphore instance must be a binary semaphore.

Referenced by _Attributes_Has_at_most_one_protocol(), _Attributes_Is_priority_ceiling(), and rtems_semaphore_create().

Typedef Documentation

◆ rtems_attribute

typedef uint32_t rtems_attribute

This defines the type used to contain Classic API attributes.

These are primarily used when creating objects.