Integration of Linux USB Device Drivers into a Component-Based Embedded Operating System

碩士 === 國立暨南國際大學 === 資訊管理學系 === 97 === In recent years, the booming of embedded systems provides more and more applications, and the corresponding device drivers must be developed in time when numerous peripheral devices have been promoted. However, the development of device drivers needs a lot of ti...

Full description

Bibliographic Details
Main Authors: chung-Wei Tsai, 蔡忠瑋
Other Authors: Mei-Ling Chiang
Format: Others
Language:zh-TW
Published: 2009
Online Access:http://ndltd.ncl.edu.tw/handle/86282075136350383201
Description
Summary:碩士 === 國立暨南國際大學 === 資訊管理學系 === 97 === In recent years, the booming of embedded systems provides more and more applications, and the corresponding device drivers must be developed in time when numerous peripheral devices have been promoted. However, the development of device drivers needs a lot of time, human effort, and resources. How to speed up the development of device drivers of embedded systems and to avoid the duplicated development effort have become significant issues. Our previous experience of successful transplanting device drivers into component-based embedded operating systems indicates that if we take the popular Linux operating system as the source codes for transplanting device drivers into embedded operating systems, then the time of developing device drivers can be significantly shortened. Universal Serial Bus (USB) is a serial bus standard for connecting devices to a host computer. Currently, USB is the most popular serial bus standard supported by numerous peripheral products and widely used in computers. This thesis discusses how we transplant Linux USB device drivers into a component-based embedded operating system. We take the source codes of device drivers in Linux 2.6 kernel and integrate them into our component-based embedded operating system named LyraOS after making the source codes wrapped with wrappers. Our major tasks include (1) transplanting USB host controller drivers, USB Core, USB keyboard driver, and USB mouse driver into LyraOS, (2) implementing the required data structure and functions of device drivers in wrappers, and (3) integrating the transplanted USB device drivers into LyraOS’s Device Manager component named LyraDD.