Skip to Main content Skip to Navigation
Conference papers

A DSL approach to improve productivity and safety in device drivers development

Abstract : Although peripheral devices come out at a frantic pace and require fast releases of drivers, little progress has been made to improve the development of drivers. Too often, this development consists of decoding hardware intricacies, based on inaccurate documentation. Then, assembly-level operations need to be used to interact with the device. These low-level operations reduce the readability of the driver and prevent safety properties from being checked. This paper presents an approach based on domain-specific languages to overcome these problems. We define a language, named Devil, dedicated to defining the basic communication with a device. Unlike a general-purpose language, Devil allows a description to be checked for consistency. This not only improves the safety of the interaction with the device but also uncovers bugs early in the development process. To assess our approach, we have shown that Devil is expressive enough to specify a large number of devices. To evaluate productivity and safety improvement over traditional development in C, we report a first experiment based on mutation testing.
Document type :
Conference papers
Complete list of metadatas

Cited literature [24 references]  Display  Hide  Download

https://hal.archives-ouvertes.fr/hal-00350233
Contributor : Laurent Réveillère <>
Submitted on : Tuesday, January 6, 2009 - 11:46:47 AM
Last modification on : Friday, September 6, 2019 - 3:22:08 PM
Long-term archiving on: : Tuesday, June 8, 2010 - 6:37:44 PM

File

ase00-devil.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00350233, version 1

Collections

Citation

Laurent Réveillère, Fabrice Mérillon, Charles Consel, Renaud Marlet, Gilles Muller. A DSL approach to improve productivity and safety in device drivers development. 15th IEEE International Conference on Automated Software Engineering, 2000, France. pp.101-109. ⟨hal-00350233⟩

Share

Metrics

Record views

1009

Files downloads

496