[PATCH] Add POSIX Timer FACE Behavior Configuration
Joel Sherrill
joel at rtems.org
Fri Aug 19 14:42:07 UTC 2022
---
config.yml | 2 ++
spec/acfg/if/group-face.yml | 30 ++++++++++++++++++++++++++++++
spec/acfg/if/posix-timer-face-behavior.yml | 23 +++++++++++++++++++++++
3 files changed, 55 insertions(+)
create mode 100644 spec/acfg/if/group-face.yml
create mode 100644 spec/acfg/if/posix-timer-face-behavior.yml
diff --git a/config.yml b/config.yml
index 9c5719d..0c4b547 100644
--- a/config.yml
+++ b/config.yml
@@ -89,6 +89,8 @@ appl-config:
target: modules/rtems-docs/c-user/config/device-driver.rst
- uid: /acfg/if/group-eventrecord
target: modules/rtems-docs/c-user/config/event-record.rst
+ - uid: /acfg/if/group-face
+ target: modules/rtems-docs/c-user/config/face.rst
- uid: /acfg/if/group-filesystem
target: modules/rtems-docs/c-user/config/filesystem.rst
- uid: /acfg/if/group-general
diff --git a/spec/acfg/if/group-face.yml b/spec/acfg/if/group-face.yml
new file mode 100644
index 0000000..a4feb85
--- /dev/null
+++ b/spec/acfg/if/group-face.yml
@@ -0,0 +1,30 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+copyrights:
+- Copyright (C) 2022 On-Line Applications Research Corporation (OAR)
+description: |
+ 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."
+enabled-by: true
+index-entries: []
+interface-type: appl-config-group
+links:
+- role: interface-placement
+ uid: ../../if/domain
+- role: requirement-refinement
+ uid: ../../req/applconfig
+name: FACE Technical Standard Related Configuration
+text: ''
+type: interface
diff --git a/spec/acfg/if/posix-timer-face-behavior.yml b/spec/acfg/if/posix-timer-face-behavior.yml
new file mode 100644
index 0000000..3ab094f
--- /dev/null
+++ b/spec/acfg/if/posix-timer-face-behavior.yml
@@ -0,0 +1,23 @@
+SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
+appl-config-option-type: feature-enable
+copyrights:
+- Copyright (C) 2022 On-Line Applications Research Corporation (OAR)
+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.
+enabled-by: true
+index-entries: []
+interface-type: appl-config-option
+links:
+- role: appl-config-group-member
+ uid: group-face
+name: CONFIGURE_POSIX_TIMERS_FACE_BEHAVIOR
+notes: null
+type: interface
--
1.8.3.1
More information about the devel
mailing list