Abstract

The ARINC-653 standard defines temporal partitioning that enables multiple avionics applications to execute independently from each other without interference in terms of CPU resources. Though partitioning has been mainly discussed from the viewpoint of manned aircraft, it can also efficiently integrate multiple applications on civilian Unmanned Aerial Vehicles (UAVs) that have even severer limitations on size, weight, power, and cost. In order to employ ARINC-653 temporal partitioning to civilian UAVs, its implementation must be flexible enough to be applied to diverse run-time software environments and computing hardware platforms. In this paper, we suggest a portable and configurable implementation of ARINC-653 for small-sized civilian UAVs aiming for low cost, easy development, and easy extension. Our implementation provides the Operating System (OS) abstraction layer that defines the essential OS-level features and the OS-independent interfaces to the upper layer that actually implements the ARINC-653 standard. Our implementation is also modularized so that the policies of resource management in CPU scheduling and memory allocation can be easily extended and selectively configured. In addition, we implement the advanced resource management schemes to promote the benefits of multi-core processors that are already widely deployed in Commercial Off-The-Shelf (COTS) systems. We show that our ARINC-653 implementation is portable across different OS, such as Linux and RTEMS, reusing the most of source codes thanks to the layered and modular design. We also analyze the overheads of the ARINC-653 APEX interfaces and multi-core scheduling. Moreover, we conduct a case study for a small-sized quad-copter.

Highlights

  • As the number of embedded computing devices in the current-generation avionics systems is growing rapidly, the issues of Size, Weight, Power, and Cost (SWaP-C) become more difficult to resolve

  • MULTI-CORE SCHEDULING As we have described in Subsection III-A, our ARINC-653 is implemented at the user-space, emphasizing portability; that is, the partition and process schedulers are implemented as user-space daemon processes

  • We suggested a layered and modular design of ARINC-653 for civilian smallsized Unmanned Aerial Vehicles (UAVs)

Read more

Summary

INTRODUCTION

As the number of embedded computing devices in the current-generation avionics systems is growing rapidly, the issues of Size, Weight, Power, and Cost (SWaP-C) become more difficult to resolve. Jo et al.: Portable and Configurable Implementation of ARINC-653 Temporal Partitioning for Small Civilian UAVs key feature defined by ARINC-653 to guarantee several real-time applications to exclusively utilize CPU and memory resources reserved, while providing isolation of execution environments between different applications. We suggest a design of ARINC-653 temporal partitioning that is portable and configurable for diverse software and hardware platforms of small civilian UAVs. A. MULTI-CORE SCHEDULING As we have described in Subsection III-A, our ARINC-653 is implemented at the user-space, emphasizing portability; that is, the partition and process schedulers are implemented as user-space daemon processes It gives the system integrator with the the flexibility to decide where to run these daemon processes on multiple cores. The following lines (i.e., from Lines 130 to 136) represents the first partition window on Pcore 2

PERFORMANCE EVALUATION
Findings
DISCUSSION
CONCLUSION
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call