Scheduling Processes with Release Times, Deadlines, Precedence and Exclusion Relations
IEEE Transactions on Software Engineering
Comment on "A Pre-Run-Time Scheduling Algorithm for Hard Real-Time Systems"
IEEE Transactions on Software Engineering
Synthesis of embedded software using free-choice Petri nets
Proceedings of the 36th annual ACM/IEEE Design Automation Conference
Efficient compilation of process-based concurrent programs without run-time scheduling
Proceedings of the conference on Design, automation and test in Europe
Formal synthesis and code generation of embedded real-time software
Proceedings of the ninth international symposium on Hardware/software codesign
On Satisfying Timing Constraints in Hard-Real-Time Systems
IEEE Transactions on Software Engineering
Extended quasi-static scheduling for formal synthesis and code generation of embedded software
Proceedings of the tenth international symposium on Hardware/software codesign
Code synthesis for timed automata
Nordic Journal of Computing
Hi-index | 0.01 |
Software synthesis is defined as the task of translating a specification into a software program in a general purpose language, in such a way that this software can be compiled by conventional compilers. In general, complex real-time systems rely on specialized operating system kernels. However, the operating system usage may introduce significant overheads as in execution time as in memory requirement. In order to eliminate such overheads, automatic software synthesis methods should be implemented. Such methods comprise real-time operating system services (scheduling, resource management, communication, synchronization), and code generation. Formal methods are a very promising alternative to deal with the complexity of embedded systems, and for improving the degree of confidence in critical systems. We present a formal approach for automatic embedded hard real-time software synthesis based on time Petri nets. In order to illustrate the practical usability of the proposed method, it is shown how to synthesize a C code implementation using a heated-humidifier case study.