Embedded systems have been used to control physical environments for decades. Usually, such use cases require low latencies between commands and actions as well as a high predictability of the expected worst-case delay. To achieve this on small, low-powered microcontrollers, Real-Time Operating Systems (RTOSs) are used to manage the different tasks on these machines as deterministically as possible. However, with the advent of the Internet of Things (IoT) in industrial applications, the same embedded systems are now equipped with networking capabilities, possibly endangering critical real-time systems through an open gate to interrupts. This paper presents our initial study of the impact network connections can have on real-time embedded systems. Specifically, we look at three aspects: The impact of network-generated interrupts, the overhead of the related networking tasks, and the feasibility of sharing computing resources between networking and real-time tasks. We conducted experiments on two setups: One treating NICs and drivers as black boxes and one simulating network interrupts on the machines. The preliminary results show that a critical task performance loss of up to 6.67% per received packet per second could be induced where lateness impacts of 1% per packet per second can be attributed exclusively to ISR-generated delays.
翻译:通常,这类使用案例要求命令和行动之间的低延迟以及预期最坏的延误的高度可预测性。为了做到这一点,在小型、低功率微控制器上,使用实时操作系统(RTOS)来管理这些机器上的不同任务,作为尽可能决定性的任务。然而,随着工业应用中事物互联网(IoT)的出现,同样的嵌入系统现在配备了联网能力,可能通过开关来危及关键的实时系统。本文介绍了我们对网络连接对实时嵌入系统的影响的初步研究。具体地说,我们研究了三个方面:网络生成的中断的影响、相关联网任务的间接费用,以及在联网和实时任务之间共享计算资源的可行性。我们在两个设置上进行了实验:一个将NIC和司机作为黑箱处理,一个模拟网络中断机器。初步结果显示,每收到一包至六.67%的关键任务绩效损失,每第二套包只能造成延迟。