基于Linux的USB网络设备驱动分析及实现技术研究
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
Linux 的源代码开放和巨大的嵌入式设备市场,使得许多公司都在进行商
    用和专有嵌入式操作系统及其应用的研发。
     由于 Linux 是免费的操作系统,在价格上极具竞争力,适合中国的国情。
    Linux 的另一个技术优势就是它采用了可移植的 UNIX 标准应用程序接口,支
    持多种 CPU,包括 x86、68k、powerPC、ARM 等。同时,Linux 内核的结构在
    网络方面非常完整,提供了包括十兆、百兆、千兆的以太网络,以及无线网络、
    令牌环、光纤甚至卫星的支持,所以 Linux 完全适合于信息家电的开发。
     本文即介绍家庭智能网关之子项目-无线网卡驱动在 ARM 硬件平台上的
    实现。家庭智能网关的目标就是要构建一个家庭网络,通过 http server 向家中
    控制电器的 station 发送各种命令,使得人们可以随时随地的控制家用电器,生
    活更加方便。
     本文按内容大体分为两部分:第一部分首先介绍 Linux 的网络架构,在此
    基础上分析 Linux 网络设备驱动的原理和结构。由于本项目的嵌入式开发多倾
    向于 USB 接口的设备,因此,Linux 下的 USB 驱动是关键,本文对这点给予了
    详细的分析和说明。最后简要介绍了嵌入式开发的相关流程。第二部分阐述了
    实际的无线网卡开发过程,以及其中遇到的问题,问题的分析和解决,从而对
    嵌入式开发和 USB 驱动原理有了更深入的理解。
Many advanced high-tech appliances are more and more used in modern lives. So
    embedded development based on Linux is a hotspot of research. This paper introduces
    the realization of Wireless LAN-the component of home gateway.
    The target of home gateway is constructing a network to make people control the
    appliances expediently wherever they are. The approach is that through the http server
    to send the commands to the station at home, then the station can regulate the
    appliances, such as turning on the water heater or air conditioner before off-duty, or
    inspecting the status of them to avoid the accident, etc.
    There are many applications on the station, such as IrDA, JPEG, Audio, MP3 and so
    on, and their common ground is that they all use USB ports. The devices which use
    USB ports can be plugged easily and switched conveniently. All projects are based on
    the special hardware platform, first of all, the USB driver should be completed to
    support the USB device, and all other USB device drivers can be developed on it. So
    the technology concerned in this paper includes Linux network device driver
    development, Linux USB device driver analysis and embedded software development
    process. Furthermore, it explains the detailed USB system structure on Linux, and
    describes how to resolve the problems when device driver isn’t compatible with lower
    USB driver.
    The USB driver is a complicated system, concerns lots of logic and arithmetic, its
    realization on ARM still has problems, and has many spaces to improve. But with the
    advance of development, the station and all kinds of applications on it will be more
    and more perfect. Till now, it has been put into the market and enters the people’s
    lives, bring them more convenience. In the future of high-tech, this kind of products
    will play increasingly important roles in modern lives.
引文
参考文献
    [1] Alessandro Rubini & Jonathan Corbet, Linux Device Driver, 2nd Edition,
     2004.2
    [2] 陈莉君著, 深入分析 Linux 内核源代码 北京:人民邮电出版社 2002.8
    [3] 毛德操 胡希明著, Linux 内核源代码情景分析 浙江:浙江大学出版社
     2001.5
    [4] 李善平 刘文峰 李程远 王焕龙 王伟波 编著, Linux 内核 2.4 版源代码分析
     大全 机械工业出版社 2002.1
    [5] W.Richard Stevens, UNIX 网络编程 清华大学出版社
    [6] Compaq, Microsoft, National Semiconductor, OpenHCI Open Host Controller
     Interface Specification for USB, 1999
    [7] 天夜创作室, Linux 网络编程技术 北京:人民邮电出版社,2001.11
    [8] Kurt Wall 著, GNU/Linux 编程指南(第二版) 清华大学出版社 2002.6
    [9] W.RichardStevens 著,Advanced Programming in the UNIX Environment/UNIX
     环境高级编程(英文版) 机械工业出版社 2002.6
    [10] include/linux/skbuff.h
    [11] net/core/skbuff.c
    [12] include/linux/netdevice.h
    [13] linux-2.4.18/drivers/usb/usb-ohci.h
    [14] linux-2.4.18/drivers/usb/usb-ohci.c
    [15] linux-2.4.18/drivers/usb/hub.c
    [16] include/linux/netdevice.h
    [17] linux-2.4.18/include/linux/socket.h
    [18] http://www-900.ibm.com/developerWorks/cn/linux/l-usb/index1.shtml
    [19] http://www-900.ibm.com/developerWorks/cn/linux/l-usb/index2.shtml
    [20] http://www.chinaunix.net/jh/36/60374.html
    [21] http://www.yesky.com/20010615/185122.shtml
    [22] http://www.yesky.com/20010615/185124.shtml
    [23] http://www.yesky.com/20010615/185126.shtml
    [24] http://www.yesky.com/20010615/185130.shtml
    [25]http://software.ccidnet.com/pub/disp/Article?articleID=43222&columnID=322

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700