Browse > Article

Design of an Automatic Generation System of Device Drivers Using Templates  

Kim, Hyoun-Chul (서강대학교 전자공학과 CAD & ES. 연구실)
Lee, Ser-Hoon (서강대학교 전자공학과 CAD & ES. 연구실)
Hwang, Sun-Young (서강대학교 전자공학과 CAD & ES. 연구실)
Abstract
Applications running under embedded systems require various device drivers designed for different types and versions of the OS to manage resources effectively. In this paper, an automated device driver generator system which can generate the device drivers to be used in newer versions the target OS is proposed. In the proposed system, the structures of device drivers of specific OS are designed in the templates and stored in a library, and the target device drivers are generated by adding codes to the stored templates. Once device drivers are generated, they are registered into the kernel. The experimental results show that data transfer time has been slightly increased when compared against manually created drivers for TFT-LCD driver, USB interface keyboard/mouse driver, and AC'97 controller drivers. The code size for the generated drivers after compilation has also been increased slightly when compared with manually designed device drivers.
Keywords
Embedded system; Device driver; Automatic generation;
Citations & Related Records
Times Cited By KSCI : 1  (Citation Analysis)
연도 인용수 순위
1 Jungo, Windriver, http://www.jungo.com/support/support_windriver.html
2 Krueger, "Software reuse", ACM Computing Surveys(CSUR), Vol.24, Issue 2, pp.131-184, Jun. 1992   DOI
3 C. McClure, The Three Rs of Software Automation: Re-engineering, Repository, Reusability, Prentice-Hall Pub., 1992
4 Q. Zhang, M. Zhu, and S. Chen, "Automatic Generation of Device Drivers", ACM SIGPLAN Not., Vol.38, Issue 6, pp.60-69, June 2003
5 황선영, 김현철, 이서훈, "인터페이스 회로와 디바이스 드라이버 통합 자동생성 시스템 설계", 한국통신학회 논문지, 제 32권, 제6호, pp.325-333, 2007년 6월   과학기술학회마을
6 A. Rubini, J. Corbet, and G. Kroah- Hartman, Linux Device Drivers, 3rd Edition, O'Reilly Pub., 2005
7 M. Zhu, L. Luo, and G. Xiong, "The Minimal Model of Operating Systems", ACM SIGOPS Operating Systems Review, Vol.35, Issue 3, pp.22-29, July 2001   DOI
8 T. Katayama, K. Saisho, and A. Fukuda, "Proposal of a Support System for Device Driver Generation", in Proc. Software Engineering Conf., pp.494-497, Dec. 1999
9 E. Tuggle, "Introduction to Device Driver Design", in Proc. 5th Annual Embedded Sys. Conf., Vol.2, pp.455-468, 1993
10 김선자, 김홍남, 김채규, "정보가전용 임베디드 운영체제 기술" 한국통신학회지(정보와 통신), 제 18권, 제12호, pp.72-81, 2001년 12월
11 Y. Ma and C. Lim, "Test System for Device Drivers of Embedded Systems", in Proc. ICACT2006, Vol.1, pp.550-552, Feb. 2006.
12 T. Katayama, K. Saisho, and A. Fukuda, "Prototype of the Device Driver Generation System for UNIX-like Operating Systems", in Proc. Int. Symp. Principles of Software Evolution, pp.302-310, Nov. 2000
13 Y. Choi, W. Kwon, and H. Kim, "Code Generation for Linux Device Driver", in Proc. ICACT2006, Vol.1, pp.734-737, Feb. 2006
14 M. Zhu, L. Luo, and G. Xiong, "High-Availability in $\sigma$-CORE: A Formal Derivation", Dedicated Systems Magazine, Vol.3, pp.38-46, July 2001
15 마이크로 소프트, Windows Driver Development kit, http://www.microsoft.com/whdc/ devtools/ddk/default.mspx
16 Compuware, DriverStudio,http://www.compuware.com/products/driverstudio/default.htm
17 D. Jensen, J. Madsen, and S. Pedersen, "The Importance of Interfaces: A HW/SW Codesign Case Study", in Proc. 5th Int. Workshop on Hw/Sw Codesign CODES'97, pp.87-91, March 1997