Commercial-Off-The-Shelf heterogeneous platforms provide immense computational power, but are difficult to program and to correctly use when real-time requirements come into play: A sound configuration of the operating system scheduler is needed, and a suitable mapping of tasks to computing units must be determined. Flawed designs may lead a sub-optimal system configurations and thus to wasted resources, or even to deadline misses and failures. We propose YASMIN, a middleware to schedule end-user applications with real-time requirements in user space and on behalf of the operating system. YASMIN provides an easy-to-use programming interface and portability. It treats heterogeneity on COTS heterogeneous embedded platforms as a first-class citizen: It supports multiple functionally equivalent task implementations with distinct extra-functional behaviour. This enables the system designer to quickly explore different scheduling policies and task-to-core mappings, and thus, to improve overall system performance. In this paper, we present the design and implementation of YASMIN and provide an analysis of the scheduling overhead on an Odroid-XU4 platform. Last but not least, we demonstrate the merits of YASMIN on an industrial use-case involving a Search & Rescue drone.
翻译:需要操作系统调度器的健全配置,并且必须确定计算单位的适当任务绘图; 平板设计可能导致一个次最佳系统配置,从而导致资源浪费,甚至造成失败和失败; 我们提议YASMIN, 一种在用户空间和操作系统中实时安排终端用户应用的中间软件; YASMIN 提供了一种容易使用的程序编程界面和可移动性; 它将COTS 混合嵌入平台的异质性作为一流公民处理: 它支持多功能等同的任务执行,具有不同的功能外行为; 使系统设计者能够迅速探索不同的排期政策和任务对核心的制图,从而改进整个系统的业绩; 我们在此文件中介绍YASMIN的设计和执行,并分析Odroid-XU4平台的排期管理。 最后但并非最不重要的一点是, 我们展示了YASMIN在工业中使用的搜索和搜救系统的优点。