Abstract
Real-time operating systems play important roles in developing many of today’s embedded systems. Majority of these embedded systems have intense interactions with the environment through I/O devices, namely sensors and actuators. Interrupts are often used by the operating systems to handle these interactions through executing the corresponding interrupt service routines (ISRs). ISRs are usually executed non-preemptively at some priorities higher than system tasks. Depending on the interrupt frequency, this prioritization can result in problems like unresponsiveness and unpredictability in the system, even for the high priority tasks. This incurs a type of priority inversion which we call it ISR-task priority inversion (ITPI). This paper uses threaded interrupts and employs the priority inheritance protocol (PIP) to enforce each interrupt service thread (IST) to be executed at its owner’s priority, causing less interference with higher priority tasks. Two PIP-based approaches are proposed and implemented: 1) Static priority linked list, which uses PIP only when a task starts; experimental results show that this approach can tolerate some simple forms of ITPI, and 2) Dynamic priority bitmap, which employs PIP whenever a task needs an IST; experiments show that more complex forms of ITPI can be tolerated with this approach. The almost extensive experimental results show that using the dynamic priority approach enhances the real-time system predictability compared to the common approaches.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.