26.20. FACE Technical Standard Related Configuration¶
This section describes configuration options related to adapting RTEMS behavior to be aligned with the FACE Technical Standard. The FACE Technical Standard is a product of the FACE Consortium which operates under the Open Group. The FACE Consortium was founded by avionics organizations to improve the portability of cockpit software across various platforms. It addresses technical and business concerns.
Most important from an RTEMS perspective, the FACE Technical Standard defines four POSIX profiles: Security, Safety Base, Safety Extended, and the General Purpose Profile. Each has an increasingly larger subset of POSIX APIs. In the Security and Safety profiles, ARINC 653 is required. It is optional in the General Purpose Profile.
The RTEMS Project has been tracking alignment with the FACE POSIX profiles and they are included in the “RTEMS POSIX 1003.1 Compliance Guide.”
26.20.1. CONFIGURE_POSIX_TIMERS_FACE_BEHAVIOR¶
CONSTANT:
CONFIGURE_POSIX_TIMERS_FACE_BEHAVIOR
OPTION TYPE:
This configuration option is a boolean feature define.
DEFAULT CONFIGURATION:
If this configuration option is undefined, then the described feature is not enabled.
DESCRIPTION:
If this configuration option is defined, then POSIX timers may not be created to use the CLOCK_REALTIME. Per POSIX, this is allowed behavior but per the FACE Technical Standard, it is not. Using POSIX timers based on CLOCK_REALTIME (e.g., time of day) is unsafe for real-time safety systems as setting CLOCK_REALTIME will perturb any active timers.
If this option is not defined, POSIX timers may be created to use the CLOCK_REALTIME in compliance with the POSIX specification.