TY - GEN
T1 - A DSL approach to improve productivity and safety in device drivers development
AU - Réveillère, L.
AU - Mérillon, F.
AU - Consel, C.
AU - Marlet, R.
AU - Muller, G.
N1 - Publisher Copyright:
© 2000 IEEE.
PY - 2000/1/1
Y1 - 2000/1/1
N2 - 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.
AB - 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.
UR - https://www.scopus.com/pages/publications/0012943323
U2 - 10.1109/ASE.2000.873655
DO - 10.1109/ASE.2000.873655
M3 - Conference contribution
AN - SCOPUS:0012943323
T3 - Proceedings ASE 2000: 15th IEEE International Conference on Automated Software Engineering
SP - 101
EP - 109
BT - Proceedings ASE 2000
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 15th IEEE International Conference on Automated Software Engineering, ASE 2000
Y2 - 11 September 2000 through 15 September 2000
ER -