Open Group Standard
Technical Standard for
Future Airborne Capability Environment (FACE™), Edition 2.1
You have a choice: you can either create your own future, or you can become the victim of a future
that someone else creates for you. By seizing the transformation opportunities, you are seizing the
opportunity to create your own future.
Vice Admiral (ret.) Arthur K. Cebrowski
Distribution Statement A –“Approved for public release; distribution is unlimited”
NAVAIR Public Release 2014-256
Copyright © 2014, The Open Group.
The Open Group hereby authorizes you to use this document for any purpose, PROVIDED THAT any copy of this document, or any
part thereof, which you make shall retain all copyright and other proprietary notices contained herein.
This document may contain other proprietary notices and copyright information.
Nothing contained herein shall be construed as conferring by implication, estoppel, or otherwise any license or right under any patent
or trademark of The Open Group or any third party. Except as expressly provided above, nothing contained herein shall be construed
as conferring any license or right under any copyright of The Open Group.
Note that any product, process, or technology in this document may be the subject of other intellectual property rights reserved by The
Open Group, and may not be licensed hereunder.
This document is provided "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
PARTICULAR PURPOSE, OR NON-INFRINGEMENT. Some jurisdictions do not allow the exclusion of implied warranties, so the
above exclusion may not apply to you.
Any publication of The Open Group may include technical inaccuracies or typographical errors. Changes may be periodically made to
these publications; these changes will be incorporated in new editions of these publications. The Open Group may make
improvements and/or changes in the products and/or the programs described in these publications at any time without notice.
Should any viewer of this document respond with information including feedback data, such as questions, comments, suggestions, or
the like regarding the content of this document, such information shall be deemed to be non-confidential and The Open Group shall
have no obligation of any kind with respect to such information and shall be free to reproduce, use, disclose, and distribute the
information to others without limitation. Further, The Open Group shall be free to use any ideas, concepts, know-how, or techniques
contained in such information for any purpose whatsoever including but not limited to developing, manufacturing, and marketing
products incorporating such information.
If you did not obtain this copy through The Open Group, it may not be the latest version. For your convenience, the latest version of
this publication may be downloaded at www.opengroup.org/bookstore.
Technical Standard
Future Airborne Capability Environment (FACE™), Edition 2.1
ISBN:
1-937218-52-2
Document Number:
C145
Published by The Open Group, May 2014.
Comments relating to the material contained in this document may be submitted to:
The Open Group, 8 New England Executive Park, Burlington, MA 01803, United States
or by electronic mail to:
ogface-admin@opengroup.org
ii
Open Group Standard (2014)
Contents
1
2
3
Introduction ..................................................................................................... 1
1.1
Objectives ........................................................................................ 1
Overview ......................................................................................... 1
1.2
Conformance ................................................................................... 1
1.3
1.4
Requirements Terminology ............................................................. 2
Architectural Overview ................................................................................... 3
The FACE Strategy.......................................................................... 3
2.1
Portable Components ....................................................................... 3
2.1.1
2.2
Barriers to Application Portability ................................................... 3
Tight-Coupling ................................................................................ 3
2.2.1
Packaging ......................................................................................... 6
2.2.2
Interface Categories ......................................................................... 8
2.3
2.3.1
Vertical Interfaces ............................................................................ 8
Horizontal Interfaces ....................................................................... 9
2.3.2
Permitted and Prohibited Vertical Interfaces ................................. 10
2.4
Cases for FACE Components ........................................................ 10
2.4.1
2.5
FACE Architectural Segments ...................................................... 12
Overview of the FACE Reference Architecture Segments............ 14
2.5.1
Reference Architecture Segment Example .................................... 16
2.5.2
FACE Data Architecture ................................................................ 17
2.6
2.6.1
Overview ....................................................................................... 18
Approach ....................................................................................... 20
2.6.2
Governance .................................................................................... 21
2.6.3
Operating System Partitioning ....................................................... 21
2.7
2.8
FACE Profiles ................................................................................ 22
The Security Profile ....................................................................... 23
2.8.1
The Safety Profile .......................................................................... 24
2.8.2
2.8.3
The General-Purpose Profile ......................................................... 24
FACE Software Computing Architecture ..................................................... 25
Operating System Segment ............................................................ 26
3.1
Operating System Segment Requirements .................................... 28
3.1.1
3.2
Device Drivers ............................................................................... 31
I/O Services Segment .................................................................... 31
3.3
I/O Services Segment Definitions ................................................. 32
3.3.1
I/O Services Segment Requirements ............................................. 32
3.3.2
3.3.3
I/O Service Management Capability Requirements ...................... 33
I/O Data Movement Capability Requirements .............................. 34
3.3.4
Device Driver Normalization Adaptation Requirements ............... 34
3.3.5
3.4
I/O Services Interface .................................................................... 34
I/O Services Interface and Messages ............................................. 34
3.4.1
Technical Standard for FACE™, Edition 2.1
iii
3.4.2
3.5
3.5.1
3.5.2
3.5.3
3.5.4
3.5.5
3.5.6
3.6
3.6.1
3.6.2
3.6.3
3.6.4
3.7
3.7.1
3.7.2
3.7.3
3.7.4
3.7.5
I/O Services Interface Requirements ............................................. 36
Platform-Specific Services Segment ............................................. 37
PSSS External Interfaces ............................................................... 38
Platform-Specific Device Services ................................................ 39
Platform-Specific Common Services Requirements ..................... 39
Platform-Specific Graphics Services ............................................. 42
Distributed PSSS Components ...................................................... 42
Platform-Specific Services Segment Requirements ...................... 42
FACE Data Architecture Specification.......................................... 43
Introduction ................................................................................... 43
Data Architecture Requirements .................................................... 43
Data Model Language Description ................................................ 44
Language Bindings ........................................................................ 86
Transport Services Interface .......................................................... 97
Transport Protocol ......................................................................... 98
Transport Services Interface Requirements ................................... 98
TSS Definitions ............................................................................. 98
Transport Services Interface Descriptions ..................................... 99
Transport Services Segment Message and Internal Data
Structure Requirements ............................................................... 100
Transport Services Interface FACE Data Architecture
Requirements ............................................................................... 104
3.8
Transport Services Segment ........................................................ 104
3.8.1
Introduction ................................................................................. 104
3.8.2
Transport Services Segment Definitions ..................................... 106
3.8.3
Transport Services Segment Requirements ................................. 107
3.8.4
Distribution Capability Requirements ......................................... 108
3.8.5
Transport Services Configuration Capability Requirements ....... 109
3.8.6
QoS Management Capability Requirements ................................ 110
3.8.7 Message Association Management Capability Requirements ..... 110
Data Transformation Capability Requirements ........................... 110
3.8.8
Paradigm Translation Capabilities Requirements ........................ 111
3.8.9
3.9
Portable Components Segment .................................................... 111
3.9.1
Definition and Scope of Portable Components Segment ............. 111
3.9.2 Meaning of “Application Portability”.......................................... 112
3.9.3
3.7.6
Libraries, Language Run-Times, and Application
Frameworks ................................................................................. 112
3.9.4
FACE Component Interfaces to Other FACE Entities ................ 114
3.9.5
Portable Components Configuration ........................................... 115
3.9.6
Portable Components Segment Requirements ............................. 115
3.10
Unit of Portability ........................................................................ 115
3.10.1 UoPs Defined ............................................................................... 117
3.10.2 UoP-Related Requirements ......................................................... 120
3.10.3 UoP Characterization ................................................................... 125
3.11
Operating System Interface Requirements: FACE Operating
System API Standards ................................................................. 128
FACE Security Operating System API Requirements ................ 129
FACE Safety Operating System API Requirements .................... 131
FACE General-Purpose Operating System API Requirements ... 133
3.11.1
3.11.2
3.11.3
iv
Open Group Standard (2014)
3.12.3
3.12.4
3.11.4 Time Management ....................................................................... 134
3.12
FACE Language Run-Time Interface .......................................... 134
3.12.1 Language Run-Time Description................................................. 134
3.12.2
FACE General-Purpose Profile Programming Language
Requirements ............................................................................... 136
FACE Safety Profiles – Portable Programming Language
Definitions ................................................................................... 137
FACE Security Profiles – Portable Programming Language
Definitions ................................................................................... 140
3.13
FACE Framework Interface ........................................................ 141
3.13.1 Component Framework ............................................................... 141
3.13.2
FACE General-Purpose Profile – Component Framework
Definitions ................................................................................... 141
FACE Safety Profiles – Component Framework Definitions ...... 141
3.13.3
3.14
Platform-Specific Graphics Services ........................................... 142
3.14.1 OpenGL – 2D and 3D Imaging ................................................... 142
3.14.2 ARINC 739-1 and 739A-1 ........................................................... 145
3.14.3 ARINC 661 .................................................................................. 147
3.14.4 Relationship to the FACE Reference Architecture ...................... 148
3.15
Configuration Services ................................................................ 149
3.15.1 Centralized Configuration Service .............................................. 150
3.15.2 Common Configuration Schema Requirements .......................... 151
Health Monitoring and Fault Management .................................. 151
3.16
3.16.1
Introduction ................................................................................. 152
3.16.2 HMFM Requirements .................................................................. 153
3.16.3 Operating System Segment Health Monitoring Requirements .... 153
Internet Standards Description .................................................... 154
3.17
3.17.1
Internet Standards Requirements ................................................. 155
4
5
Security ....................................................................................................... 156
4.1
4.2
4.2.1
4.2.2
4.3
4.4
Scope156
Guiding Concepts ........................................................................ 157
Separation and Partitioning of Security Functions ...................... 157
Common Criteria ......................................................................... 158
FACE Security Profile ................................................................. 159
FACE Security Boundary ............................................................ 160
Safety Assurance ......................................................................................... 162
5.1
5.2
5.2.1
5.2.2
5.3
Scope162
Guiding Concepts ........................................................................ 163
Separation and Partitioning of Safety Functions ......................... 163
Process ......................................................................................... 163
FACE Safety Profile .................................................................... 164
A
Operating System POSIX Interface ............................................................ 166
A.1
POSIX API Rules ........................................................................ 206
B
FACE API Common Elements ................................................................... 208
Technical Standard for FACE™, Edition 2.1
v
C
D
B.1
B.2
Introduction ................................................................................. 208
FACE API Common Elements Type Definitions ........................ 208
FACE HMFM Interface .............................................................................. 210
C.1
Introduction ................................................................................. 210
HMFM Services API and Message Definitions .......................... 210
C.2
HMFM Initialization Service ....................................................... 213
C.3
Create Fault Handler Service ....................................................... 214
C.4
C.5
Report Application Message Service ........................................... 214
Obtain Fault Status Service ......................................................... 215
C.6
C.7
Raise Application Fault Service .................................................. 216
I/O Services Interface .................................................................................. 217
Introduction ................................................................................. 217
D.1
I/O Services Interface and Message Definitions .......................... 217
D.2
D.3
Initialize Function ........................................................................ 221
Open Function ............................................................................. 222
D.4
Register Function ......................................................................... 223
D.5
Unregister Function ..................................................................... 223
D.6
D.7
Read Function .............................................................................. 224
Write Function ............................................................................. 225
D.8
Get_Status Function..................................................................... 226
D.9
Close Function ............................................................................. 227
D.10
D.11
I/O Services Interface Message Set ............................................. 228
D.11.1
I/O Service Message Payload Format .......................................... 229
D.11.2 MIL-STD-1553 Message Payload Format .................................. 231
D.11.3 ARINC 429 Message Payload Format......................................... 232
D.11.4 Serial Message Payload Format ................................................... 233
D.11.5 Discrete Message Payload Format ............................................... 234
D.11.6 Analog Message Payload Format ................................................ 235
D.11.7 Synchro Message Payload Format ............................................... 236
D.11.8 High Precision Synchro Message Payload Format ...................... 237
D.11.9 VME Service Message Payload Format ...................................... 238
D.11.10 Generic Data Message Payload Format ....................................... 239
D.11.11 User-Defined Bus Data Message Payload Format ...................... 240
D.12
I/O Services Segment Configuration Information ....................... 240
D.12.1 General Configuration Data ......................................................... 240
D.12.2 MIL-STD-1553 Configuration Data ............................................ 241
D.12.3 ARINC 429 Configuration Data .................................................. 241
D.12.4 Serial Port Configuration Data .................................................... 241
D.12.5 Discrete I/O Configuration Data .................................................. 242
D.12.6 Analog I/O Configuration Data ................................................... 242
D.12.7 Synchro I/O Configuration Data .................................................. 242
D.12.8 High Precision Synchro I/O Configuration Data ......................... 242
D.12.9 Generic I/O Configuration Data .................................................. 243
D.12.10 User-Defined Bus I/O Configuration Data .................................. 243
E
Transport Services Interface ....................................................................... 244
vi
Open Group Standard (2014)
E.1
E.2
E.2.1
E.2.2
E.2.3
E.3
E.3.1
E.3.2
E.3.3
E.3.4
E.3.5
E.3.6
E.3.7
E.3.8
E.4
E.5
Introduction ................................................................................. 244
Data Types and Interfaces ........................................................... 244
FACE_TS_common.idl ............................................................... 244
FACE_TypeAbstraction_TS.idl .................................................. 246
FACE_TS.idl ............................................................................... 248
Example API Implementations .................................................... 250
Initialize Function ........................................................................ 250
Create_Connection Function ....................................................... 250
Destroy_Connection Function ..................................................... 254
Receive_Message Function ......................................................... 255
Send_Message Function .............................................................. 257
Register_Callback Function ......................................................... 258
Unregister_Callback Function ..................................................... 259
Get_Connection_Parameters Function ........................................ 259
Function Calls Restricted to the Transport Services Segment
and I/O Services Segment ............................................................ 260
Transport Services Segment Configuration Information ............. 264
F
G
Internet Standards ....................................................................................... 266
F.1
Network Protocol Requirements Summary ................................. 266
Data Model Language ................................................................................. 271
Introduction ................................................................................. 271
G.1
G.2
EMOF Metamodel ....................................................................... 271
H
Glossary ...................................................................................................... 284
I
Acronyms .................................................................................................... 290
Technical Standard for FACE™, Edition 2.1
vii
Table of Figures
Figure 1: FACE Components ......................................................................................................... 3
Figure 2: Traditional Application Coupling ................................................................................... 4
Figure 3: FACE Component Coupling ........................................................................................... 6
Figure 4: Platform-Unique Interfaces ............................................................................................. 6
Figure 5: Traditional Use of Platform-Unique Interfaces .............................................................. 7
Figure 6: Traditional Problem of Application Portability .............................................................. 7
Figure 7: Component Portability with FACE Computing Environment ........................................ 8
Figure 8: Vertical Interfaces ........................................................................................................... 9
Figure 9: Horizontal Interfaces ....................................................................................................... 9
Figure 10: Permitted and Prohibited Interfaces ............................................................................ 11
Figure 11: FACE 3D Architectural Segments Diagram ............................................................... 14
Figure 12: Architectural Segments Example ................................................................................ 16
Figure 13: Data Model Language ................................................................................................. 19
Figure 14: FACE Data Architecture Approach ............................................................................ 21
Figure 15: Platform-Specific Services in Multiple Operating System Partitions ......................... 22
Figure 16: FACE Profile Diagram ............................................................................................... 23
Figure 17: FACE 3D Architectural Segment Diagram ................................................................ 25
Figure 18: Notional FACE Architecture and Interfaces ............................................................... 26
Figure 19: Operating System Segment Interfaces ........................................................................ 28
Figure 20: I/O Services Segment .................................................................................................. 32
Figure 21: I/O Message Model ..................................................................................................... 35
Figure 22: Notional Platform-Specific Services Segment ............................................................ 38
Figure 23: Notional FACE Architecture and Interfaces ............................................................... 39
Figure 24: DPM and Media Services Notional Example ............................................................. 41
Figure 25: FACE Metamodel “face” Package .............................................................................. 44
Figure 26: FACE Metamodel “face.conceptual” Package ........................................................... 47
Figure 27: FACE Metamodel “face.logical” Package .................................................................. 52
Figure 28: FACE Metamodel “face.logical” Package: Logical Basis .......................................... 53
Figure 29: FACE Metamodel “face.logical” Package: Logical Value Types .............................. 54
Figure 30: FACE Metamodel “face.platform” Package ............................................................... 69
Figure 31: FACE Metamodel “face.platform” Package: Platform Value Types .......................... 70
Figure 32: FACE Metamodel “face.uop” Package ....................................................................... 81
Figure 33: Data Model Language Bindings ................................................................................. 87
Figure 34: Data Model Language Binding Specification ............................................................. 88
Figure 35: Transport Services Interface Message and Internal Data Structure .......................... 100
Figure 36: Transport Services Segment External and Internal Capabilities ............................... 105
Figure 37: TS Type Abstraction and Interfaces Examples ......................................................... 106
Figure 38: Portable Components Segment Example .................................................................. 113
Figure 39: Transport Services Segment Example ...................................................................... 114
Figure 40: Standardization and Constraint on UoP Interfaces ................................................... 116
Figure 41: UoP Examples with Standard Frameworks and Language Run-Times .................... 117
Figure 42: UoP Examples with Non Standard Frameworks and Language Run-Times ............ 118
viii
Open Group Standard (2014)