1 Introduction
Nowadays, embedded systems have become important parts of our life and are becoming more complex and powerful. Real-time programs running on embedded systems are key parts of many industrial control systems like those in telecommunication, railway, avionics, automotive, and medical care. Many of the industrial realtime embedded systems are referred to as complex real-time systems due to the internal functional complexity resulting from dependencies between tasks, asynchronous message-passing, runtime changeable priorities, and task offsets [1].