Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering (2000)
Sept. 11, 2000 to Sept. 15, 2000
L. Reveillere , IRISA/INRIA, Rennes I Univ., France
Although new peripheral devices are emerging at a frantic pace and require the fast release of drivers, little progress has been made to improve the development of such device 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 (DSLs) to overcome these problems. We define a language, named Devil (DEVice Interaction Language), 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 asses our approach, we have shown that Devil is expressive enough to specify a large number of devices. To evaluate productivity and safety improvements over traditional development in C, we report an experiment based on mutation testing.
DSL, Productivity, Product safety, Safety devices, Decoding, Hardware, Documentation, Assembly, Domain specific languages, Computer bugs
L. Reveillere, F. Merillon, C. Consel, R. Marlet and G. Muller, "A DSL approach to improve productivity and safety in device drivers development," Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering(ASE), Grenoble, France, , pp. 101-109.