A Formal Correctness Proof for an EDF Scheduler Implementation
Résumé
The scheduler is a critical piece of software in
real-time systems. A failure in the scheduler can have serious
consequences; therefore, it is important to provide strong cor-
rectness guarantees for it. In this paper we propose a formal
proof methodology that we apply to an Earliest Deadline First
(EDF) scheduler. It consists first in proving the correctness of the
election function algorithm and then lifting this proof up to the
implementation through refinements. The proofs are formalized
in the Coq proof assistant, ensuring that they are free of human
errors and that all cases are considered. Our methodology is
general enough to be applied to other schedulers or other types
of system code. To the best of our knowledge, this is the first time
that an implementation of EDF applicable to arbitrary sequences
of jobs has been proven correct.
Domaines
Systèmes embarquésOrigine | Fichiers produits par l'(les) auteur(s) |
---|