一篇不错的介绍linux下usb驱动的文章
转载自 http://www.builder.com.cn/2007/1015/556732.shtml
Linux环境下USB的原理、驱动和配置
开发者在线 Builder.com.cn
更新时间:2007-10-15
作者:北京中科红旗软件技术有限公司 嵌入式工程师 梁国军
来源:CSDN
本文关键词: Linux
USB
作者为北京中科红旗软件技术有限公司 嵌入式工程师 梁国军
随着生活水平的提高,人们对USB设备的使用也越来越多,鉴于Linux在硬件配置上尚不能全部即插即用,因此关于Linux如何配置和使用,成为困扰我们的一大问题。
什么是
USB
?
USB是英文Universal Serial
Bus的缩写,意为通用串行总线。USB最初是为了替代许多不同的低速总线(包括并行、串行和键盘连接)而设计的,它以单一类型的总线连接各种不同的类型
的设备。USB的发展已经超越了这些低速的连接方式,它现在可以支持几乎所有可以连接到PC上的设备。最新的USB规范修订了理论上高达480Mbps的
高速连接。Linux内核支持两种主要类型的USB驱动程序:宿主系统上的驱动程序和设备上的驱动程序,从宿主的观点来看(一个普通的宿主也就是一个PC
机),宿主系统的USB设备驱动程序控制插入其中的USB设备,而USB设备的驱动程序控制该设备如何作为一个USB设备和主机通信。
USB
的具体构成
在动手写USB驱动程序这前,让我们先看看写的USB驱动程序在内核中的结构,如下图:
USB驱动程序存在于不同的内核子系统和USB硬件控制器之间,USB核心为USB驱动程序提供了一个用于访问和控制USB硬件的接口,而不必考虑
系统当前存在的各种不同类型的USB硬件控制器。USB是一个非常复杂的设备,linux内核为我们提供了一个称为USB的核心的子系统来处理大部分的复
杂性,USB设备包括配置(configuration)、接口(interface)和端点(endpoint),USB设备绑定到接口上,而不是整个
USB设备。如下图所示:
USB通信最基本的形式是通过端点(USB端点分中断、批量、等时、控制四种,每种用途不同),USB端点只能往一个方向传送数据,从主机到设备或
者从设备到主机,端点可以看作是单向的管道(pipe)。所以我们可以这样认为:设备通常具有一个或者更多的配置,配置经常具有一个或者更多的接口,接口
通常具有一个或者更多的设置,接口没有或具有一个以上的端点。驱动程序把驱动程序对象注册到USB子系统中,稍后再使用制造商和设备标识来判断是否已经安
装了硬件。USB核心使用一个列表(是一个包含制造商ID和设备号ID的一个结构体)来判断对
相关文档:
xp下从硬盘安装Linux,包括redflag6 RedHat9 fc4都类似(都不新!),但是安装过程绝对详细!
1。首先是准备条件
(1) 腾出地方:xp下要有地方放Linux的镜像(.iso),而且所在磁盘要为fat32格式,可以用norton partitionmagic(很不错的工具,网上很多下载!)将磁盘格式转换 不过因为软 ......
这几天我安装了一个Linux系统,想在里面学一下C语言的编写,发现在里面运行有一个好奇怪的现象:如下面
#include<stdio.h>
void mian(){
printf("hello world!");
}
输出没有结果!搞的我看了半天,程序没有错误啊!怎么这样!后来我把程序改为
#include<stdio.h>
void mian(){
printf("hello ......
在ubuntu中,终止一个进程或终止一个正在运行的程序,一般是通过 kill 、killall、pkill、xkill 等进行。
-------------------------------------------------------------------
先看两个例子:
例子一:结束某个程序,如Firefox
键入命令:
pkill firefox
例子二: 结束某个进程,如find&n ......
我把我整合apache+tomcat+mod_webapp.so的过程发上来。其中包括了许多前人的心得与经验
1.所需的软件包
j2sdk-1_4_1_02-linux-i586.bin(jdk1.4.1)
Apache2.0.40 (Red Hat Linux8.0自带)   ......
cat awk '{print}'
cat -s awk '{blank = NF == 0 ? ++blan ......