Aerospace and Electronic Systems Magazine February 2018 - 17

and 40% weight reduction from previous federated surveillance
equipment" [2]. Cost containment strategies must also address
flight certification. By itself, IMA might actually increase certification costs, because now one must demonstrate that software at
differing levels of criticality that are simultaneously present on one
computing platform do not adversely affect one another. Consider
the hypothetical situation where the coffee maker software and the
flight navigation software that were hosted on separate computers
originally are now both running on a single computer. Our design
must assure that the coffee maker software cannot under any circumstances affect the flight of the aircraft. IMA implements an architectural mechanism to ensure these disparate software modules
are isolated from one another: partitioning.

PARTITIONING APPROACHES
This section reviews the need for partitioning, and briefly examines several approaches to achieving robust partitioning. The subsequent sections then explore the partitioning kernel that is the
main topic of this article: seL4. Partitioning separates software
modules from each other in order to reduce or eliminate unwanted
and unexpected interaction. The ARINC 653 standard specifies
a software execution environment in which isolated applications
can run independently of one another, each in its own container
called a "partition." The partitions provide mutually exclusive
access to all necessary system resources, such as the CPU or
memory, so that (a) the presence of a partition does not affect the
performance of an unrelated partition, and (b) faults within one
partition are isolated from other partitions. Shared resources must
be partitioned spatially and/or temporally. Although the FACE
Technical Standard makes the ARINC 653 Application Program
Interface (API) optional (one can provide POSIX instead, or in
addition), it does require partitioning as part of the operating system segment for the defined system architecture. IMA also requires partitioning, as a means to provide safety, but also because
of its potential to reduce certification costs for reused software.
However, the partitioning environment itself must be certified to
the highest level of any of the hosted software. To illustrate from
our example, consider that less rigorous design assurance may
be needed for the coffee maker software, while highly rigorous
design assurance is necessary for the flight navigation software.
When we assure the underlying partitioning environment software, we must use the higher level of rigor, equal to that used on
the flight navigation software.
The seL4 microkernel is a separation kernel that can provide
the robust partitioning necessary to support information assurance
with multiple levels of security and also support design assurance
FEBRUARY 2018

for airworthiness with mixed levels of safety criticality. While the
seL4 microkernel discussed in this article is the first softwarebased separation kernel to be formally proven correct to specification at the level of executable object code, there has been earlier
work, such as formal verification of the PikeOS microkernel [3]
and the Rockwell Collins proof of their AAMP7G processor [4].
Formal methods have also been used to verify a protection layer
supporting a hypervisor [5].
Consolidation of software functions from multiple federated
computing systems to a single (more powerful) integrated computing system provides savings of size and weight in almost all cases,
and often reduces power and cost. More powerful modern microprocessors not only consolidate legacy functionality, but also frequently
have spare capacity, facilitating the addition of completely new
functionality. However, the tradeoff is increased complexity of interactions. Functions separated by hardware only interact by means
of explicit, well-defined communication pathways. Once integrated
into a single computing system, additional channels of interaction
are introduced. In the absence of any isolating mechanisms, the risk
of potential interference between functions on the same computer
forces us to certify all software on a single computing platform to the
highest level of assurance of any one of them. The high cost of such
certification has led to the definition and standardization of partitioning as an isolation mechanism. With robust partitioning, mixed criticality software can coexist on one system, each assured to its appropriate level (and not necessarily higher). The following subsections
review three historical approaches to partitioning for safety-critical
applications: adaptation of an existing certified operating system,
use of a hypervisor, or use of a microkernel.

PARTITIONING APPROACH 1: ADAPTATION OF A REAL
TIME OPERATING SYSTEM
The most common approach to developing a partitioning environment for safety-critical applications such as avionics has been
incremental extension of an existing flight-certified real time operating system (RTOS). Why? Clean slate development represents
potentially higher cost, higher risk, and may not be capable of offering compatibility to legacy applications developed previously.
By starting with a well-understood existing product, the hope for
the developer is that much can be reused-not only reuse of the
software technology itself, but also reuse of certification artifacts.
Examples of this approach include the Wind River VxWorks 653
Platform which was developed based on the flight-certified VxWorks RTOS, Green Hills Integrity-178B based on its Integrity
RTOS, and LynxOS-178 RTOS.

IEEE A&E SYSTEMS MAGAZINE

17



Table of Contents for the Digital Edition of Aerospace and Electronic Systems Magazine February 2018

No label
Aerospace and Electronic Systems Magazine February 2018 - No label
Aerospace and Electronic Systems Magazine February 2018 - Cover2
Aerospace and Electronic Systems Magazine February 2018 - 1
Aerospace and Electronic Systems Magazine February 2018 - 2
Aerospace and Electronic Systems Magazine February 2018 - 3
Aerospace and Electronic Systems Magazine February 2018 - 4
Aerospace and Electronic Systems Magazine February 2018 - 5
Aerospace and Electronic Systems Magazine February 2018 - 6
Aerospace and Electronic Systems Magazine February 2018 - 7
Aerospace and Electronic Systems Magazine February 2018 - 8
Aerospace and Electronic Systems Magazine February 2018 - 9
Aerospace and Electronic Systems Magazine February 2018 - 10
Aerospace and Electronic Systems Magazine February 2018 - 11
Aerospace and Electronic Systems Magazine February 2018 - 12
Aerospace and Electronic Systems Magazine February 2018 - 13
Aerospace and Electronic Systems Magazine February 2018 - 14
Aerospace and Electronic Systems Magazine February 2018 - 15
Aerospace and Electronic Systems Magazine February 2018 - 16
Aerospace and Electronic Systems Magazine February 2018 - 17
Aerospace and Electronic Systems Magazine February 2018 - 18
Aerospace and Electronic Systems Magazine February 2018 - 19
Aerospace and Electronic Systems Magazine February 2018 - 20
Aerospace and Electronic Systems Magazine February 2018 - 21
Aerospace and Electronic Systems Magazine February 2018 - 22
Aerospace and Electronic Systems Magazine February 2018 - 23
Aerospace and Electronic Systems Magazine February 2018 - 24
Aerospace and Electronic Systems Magazine February 2018 - 25
Aerospace and Electronic Systems Magazine February 2018 - 26
Aerospace and Electronic Systems Magazine February 2018 - 27
Aerospace and Electronic Systems Magazine February 2018 - 28
Aerospace and Electronic Systems Magazine February 2018 - 29
Aerospace and Electronic Systems Magazine February 2018 - 30
Aerospace and Electronic Systems Magazine February 2018 - 31
Aerospace and Electronic Systems Magazine February 2018 - 32
Aerospace and Electronic Systems Magazine February 2018 - 33
Aerospace and Electronic Systems Magazine February 2018 - 34
Aerospace and Electronic Systems Magazine February 2018 - 35
Aerospace and Electronic Systems Magazine February 2018 - 36
Aerospace and Electronic Systems Magazine February 2018 - 37
Aerospace and Electronic Systems Magazine February 2018 - 38
Aerospace and Electronic Systems Magazine February 2018 - 39
Aerospace and Electronic Systems Magazine February 2018 - 40
Aerospace and Electronic Systems Magazine February 2018 - 41
Aerospace and Electronic Systems Magazine February 2018 - 42
Aerospace and Electronic Systems Magazine February 2018 - 43
Aerospace and Electronic Systems Magazine February 2018 - 44
Aerospace and Electronic Systems Magazine February 2018 - 45
Aerospace and Electronic Systems Magazine February 2018 - 46
Aerospace and Electronic Systems Magazine February 2018 - 47
Aerospace and Electronic Systems Magazine February 2018 - 48
Aerospace and Electronic Systems Magazine February 2018 - 49
Aerospace and Electronic Systems Magazine February 2018 - 50
Aerospace and Electronic Systems Magazine February 2018 - 51
Aerospace and Electronic Systems Magazine February 2018 - 52
Aerospace and Electronic Systems Magazine February 2018 - 53
Aerospace and Electronic Systems Magazine February 2018 - 54
Aerospace and Electronic Systems Magazine February 2018 - 55
Aerospace and Electronic Systems Magazine February 2018 - 56
Aerospace and Electronic Systems Magazine February 2018 - 57
Aerospace and Electronic Systems Magazine February 2018 - 58
Aerospace and Electronic Systems Magazine February 2018 - 59
Aerospace and Electronic Systems Magazine February 2018 - 60
Aerospace and Electronic Systems Magazine February 2018 - 61
Aerospace and Electronic Systems Magazine February 2018 - 62
Aerospace and Electronic Systems Magazine February 2018 - 63
Aerospace and Electronic Systems Magazine February 2018 - 64
Aerospace and Electronic Systems Magazine February 2018 - Cover3
Aerospace and Electronic Systems Magazine February 2018 - Cover4
http://www.brightcopy.net/allen/aesm/34-2s
http://www.brightcopy.net/allen/aesm/34-2
http://www.brightcopy.net/allen/aesm/34-1
http://www.brightcopy.net/allen/aesm/33-12
http://www.brightcopy.net/allen/aesm/33-11
http://www.brightcopy.net/allen/aesm/33-10
http://www.brightcopy.net/allen/aesm/33-09
http://www.brightcopy.net/allen/aesm/33-8
http://www.brightcopy.net/allen/aesm/33-7
http://www.brightcopy.net/allen/aesm/33-5
http://www.brightcopy.net/allen/aesm/33-4
http://www.brightcopy.net/allen/aesm/33-3
http://www.brightcopy.net/allen/aesm/33-2
http://www.brightcopy.net/allen/aesm/33-1
http://www.brightcopy.net/allen/aesm/32-10
http://www.brightcopy.net/allen/aesm/32-12
http://www.brightcopy.net/allen/aesm/32-9
http://www.brightcopy.net/allen/aesm/32-11
http://www.brightcopy.net/allen/aesm/32-8
http://www.brightcopy.net/allen/aesm/32-7s
http://www.brightcopy.net/allen/aesm/32-7
http://www.brightcopy.net/allen/aesm/32-6
http://www.brightcopy.net/allen/aesm/32-5
http://www.brightcopy.net/allen/aesm/32-4
http://www.brightcopy.net/allen/aesm/32-3
http://www.brightcopy.net/allen/aesm/32-2
http://www.brightcopy.net/allen/aesm/32-1
http://www.brightcopy.net/allen/aesm/31-12
http://www.brightcopy.net/allen/aesm/31-11s
http://www.brightcopy.net/allen/aesm/31-11
http://www.brightcopy.net/allen/aesm/31-10
http://www.brightcopy.net/allen/aesm/31-9
http://www.brightcopy.net/allen/aesm/31-8
http://www.brightcopy.net/allen/aesm/31-7
https://www.nxtbookmedia.com