In general, complex embedded systems rely on specialized operating system kernels. However, the operating system usage may introduce significant time overhead, which may affect the tasks' deadline in embedded hard real-time systems. In addition, hardware requirements (e.g. memory) are usually increased. As an alternative, this paper presents a software synthesis approach for eliminating such
... [Show full abstract] overheads, meeting timing constraints, and providing multiple operational modes. In order to satisfy timing requirements, a pre-runtime scheduling is used to find a feasible schedule by adopting a formalism based on time Petri net. Pre-runtime scheduling is considered inflexible, but using multiple operational modes, significant flexibility may be achieved