Abstract
Porting software to new target architectures is a common challenge, particularly when dealing with low-level functionality in drivers or OS kernels that interact directly with hardware. Traditionally, adapting code for different hardware platforms has been a manual and error-prone process. However, with the growing demand for dependability and the increasing hardware diversity in systems like the IoT, new software development approaches are essential. This includes rigorous methods for verifying and automatically porting Real-Time Operating Systems (RTOS) to various devices. Our framework addresses this challenge through formal methods and code generation for embedded RTOS. We demonstrate a hardware-specific part of a kernel model in Event-B, ensuring correctness according to the specification. Since hardware details are only added in late modeling stages, we can reuse most of the model and proofs for multiple targets. In a proof of concept, we refine the generic model for two different architectures, also ensuring safety and liveness properties. We then showcase automatic low-level code generation from the model. Finally, a hardware-independent factorial function model illustrates more potential of our approach.
| Original language | English |
|---|---|
| Pages (from-to) | 289-315 |
| Number of pages | 27 |
| Journal | Software and Systems Modeling |
| Volume | 23 |
| Issue number | 2 |
| Early online date | 1 Feb 2024 |
| DOIs | |
| Publication status | Published - Apr 2024 |
UN SDGs
This output contributes to the following UN Sustainable Development Goals (SDGs)
-
SDG 9 Industry, Innovation, and Infrastructure
Keywords
- Code generation
- Embedded systems
- Event-B
- Formal methods
- Portability
- RTOS
- Verification
ASJC Scopus subject areas
- Software
- Modelling and Simulation
Fields of Expertise
- Information, Communication & Computing
Fingerprint
Dive into the research topics of 'A framework for embedded software portability and verification: From formal models to low-level code'. Together they form a unique fingerprint.Projects
- 3 Finished
-
Embedded Operating Systems
Martins Gomes, R. (Attendee / Assistant), Baunach, M. C. (Project manager on research unit), Scheipel, T. P. (Attendee / Assistant), Malenko, M. (Attendee / Assistant), Batista Ribeiro, L. (Attendee / Assistant) & Mauroner, F. (Attendee / Assistant)
1/09/15 → 31/12/23
Project: Research project
-
Reconfigurable Processor Architectures
Malenko, M. (Attendee / Assistant), Scheipel, T. P. (Attendee / Assistant), Saikia, A. (Contact person), Martins Gomes, R. (Attendee / Assistant), Batista Ribeiro, L. (Attendee / Assistant), Mauroner, F. (Attendee / Assistant) & Baunach, M. C. (Project manager on research unit)
1/09/14 → 31/12/23
Project: Research project
-
Embedded Automotive Systems
Martins Gomes, R. (Attendee), Malenko, M. (Attendee), Kissich, M. (Attendee), Nagarajan, D. (Attendee), Manjunath, V. (Attendee), Scheipel, T. P. (Attendee), Baunach, M. C. (Coordinator), Kanics, K. (Attendee), Saikia, A. (Attendee) & Batista Ribeiro, L. (Attendee)
1/09/14 → 31/12/24
Project: Research area
Research output
- 1 Comment/debate
-
Correction to: A framework for embedded software portability and verification: from formal models to low-level code (Software and Systems Modeling, (2024), 23, 2, (289-315), 10.1007/s10270-023-01144-y)
Gomes, R. M., Aichernig, B. & Baunach, M., Apr 2024, In: Software and Systems Modeling. 23, 2, p. 317 1 p.Research output: Contribution to journal › Comment/debate › peer-review
Open AccessFile
Cite this
- APA
- Standard
- Harvard
- Vancouver
- Author
- BIBTEX
- RIS