Search

Searching. Please wait…

Detalle_Publicacion

Non-Blocking Synchronization Between Real-Time and Non-Real-Time Applications

Abstract: Real-time systems where applications with timing requirements coexist with applications without timing constraints are increasingly common. Furthermore, the processors used in desktops, smart phones or embedded devices are mostly multi-core, allowing the execution of applications in parallel. This article presents a set of non-blocking synchronization mechanisms to share data between real-time and non-real-time applications executing in different cores of a shared memory multi-core system. Four typical producer/consumer scenarios have been explored; a) shared data object with real-time reader, b) shared data object with real-time writer, c) shared queue with real-time writer, and d) shared queue with real-time reader. For these scenarios we have developed different non-blocking protocols where the execution of the real-time application is always prioritized over the execution of the non-real-time part. In this way, the real-time applications never have to repeat their operations and, consequently, their execution times are bounded. Furthermore, to reduce the overhead caused by the copies of the information used in the non-blocking algorithms, we have imposed the limitation of a single real-time reader or a single real-time writerinthealgorithmsdeveloped.Finally,we have evaluated the response times of the developed protocols on a multi-core device with the Android operating system.

Other publications of the same journal or congress with authors from the University of Cantabria

 Fuente: IEEE Access, vol. 8

Publisher: Institute of Electrical and Electronics Engineers Inc.

 Publication date: 10/08/2020

No. of pages: 17

Publication type: Article

 DOI: 10.1109/ACCESS.2020.3015385

ISSN: 2169-3536

 Spanish project: TIN2017-86520-C3-3-R

Authorship

ALEJANDRO PEREZ RUIZ