E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
linux设备驱动
Linux设备驱动
程序学习(3)-并发和竞态
Linux设备驱动
程序学习(3)-并发和竞态 今天进入《
Linux设备驱动
程序(第3版)》第五章并发和竞态的学习。 对并发的管理是操作系统编程中核心的问题之一。
·
2015-11-02 18:45
linux
Linux设备驱动
程序学习(2)-调试技术
Linux设备驱动
程序学习(2)-调试技术 今天进入 《
Linux设备驱动
程序(第3版)》 第四章调试技术的学习。
·
2015-11-02 18:43
linux
Linux设备驱动
程序学习(0)-Hello, world!模块
一个学习
Linux设备驱动
程序都会碰到的第一个例程: #include <linux/init.h> #include <linux/
·
2015-11-02 18:43
linux
sd卡驱动
linux设备驱动
那点事儿之SD卡驱动理论篇 (2011-08-01 13:56) 标签: 电子产品 多媒体 存储器 消费类 分类:
linux设备驱动
程序分析 一.SD/MMC
·
2015-11-02 12:29
驱动
I2C驱动
linux设备驱动
那点事儿之I2C驱动理论篇 (2011-08-01 21:31) 分类:
linux设备驱动
程序分析 一:I2C 概述 I2C是philips
·
2015-11-02 12:28
驱动
Linux输入子系统(Input Subsystem)
linux设备驱动
那点事儿之输入子系统理论篇 (2011-08-01 23:41) 分类:
linux设备驱动
程序分析 Linux输入子系统(Input Subsystem) 1.1
·
2015-11-02 12:27
System
深入
Linux设备驱动
程序内核机制
深入
Linux设备驱动
程序内核机制 基本信息 作者: 陈学松 出版社:电子工业出版社 ISBN:9787121150524 上架时间:2012
·
2015-11-02 12:07
linux
Linux设备驱动
之USB hub驱动(续)
5.2.2:接口驱动中的hub_thread()函数 我们之前在分析usb_hub_init()的代码的时候,忽略掉了一部份. 代码片段如下所示: int usb_hub_init(void) { …… khubd_task = kthread_run(hub_thread, NULL, "khubd
·
2015-11-02 10:07
linux
Linux设备驱动
之HID驱动
------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 一:前言 继前面分析过UHCI和HUB驱动之后,接下来以HID设备驱动为例来做一个具体的USB设备驱动分析的
·
2015-11-02 10:06
linux
linux设备驱动
之USB主机控制器驱动分析
------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 一:前言 Usb是一个很复杂的系统.在usb2.0规范中,将其定义成了一个分层模型.linux中的代码也是
·
2015-11-02 10:05
linux
linux设备驱动
之USB数据传输分析
------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 三:传输过程的实现 说到传输过程,我们必须要从URB开始说起,这个结构的就好比是网络子系统中的skb,好比
·
2015-11-02 10:05
linux
Linux设备驱动
之USB hub驱动
------------------------------------------ 本文系本站原创,欢迎转载! 转载请注明出处:http://ericxiao.cublog.cn/ ------------------------------------------ 一:前言 继UHCI的驱动之后,我们对USB Control的运作有了一定的了解.在接下来的分析中,我们对U
·
2015-11-02 10:04
linux
20150220 IMX257
linux设备驱动
之Cdev结构
20150220 IMX257
linux设备驱动
之Cdev结构 2015-02-20 21:17 李海沿 一、CDEV结构 /*
·
2015-11-02 10:27
linux
打开dev_dbg()函数
linux设备驱动
调试,我们在内核中看到内核使用dev_dbg来控制输出信息,这个函数的实质是调用printk(KERN_DEBUG)来输出打印信息。要打开这个开关需要下面两步。
mike8825
·
2015-11-01 22:00
linux
调试
写一本Linux内核方面的书籍
市面上关于Linux的书籍也层出不穷,而这其中大致分为两类,一类是应用方面的书籍,比如介绍如何组建各种服务器;另一类是内核方面的书籍,主要都是对内核源代码进行分析,这方面的书籍则以《
Linux设备驱动
程序
·
2015-11-01 15:04
linux
Linux设备驱动
编程之 内存与I/O操作
对于提供了MMU(存储管理器,辅助操作系统进行内存管理,提供虚实地址转换等硬件支持)的处理器而言,Linux提供了复杂的存储管理系统,使得进程所能访问的内存达到4GB。 进程的4GB内存空间被人为的分为两个部分--用户空间与内核空间。用户空间地址分布从0到3GB(PAGE_OFFSET,在0x86中它等于0xC0000000),3GB到4GB为内核空间,如下图:
·
2015-11-01 13:46
linux
深入
Linux设备驱动
程序内核机制
-- 深入
Linux设备驱动
程序内核机制 陈学松 著 ISBN 978-7-121-15052-4 2012年1月出版 定价:98.00元 16开 540
·
2015-11-01 11:45
linux
20150518
Linux设备驱动
中的并发控制
20150518
Linux设备驱动
中的并发控制 2015-05-18 Lover雪儿 总结一下并发控制的相关知识: 本文参考:华清远见《Linux 设备驱动开发详解》—第7章 Linux 设备驱动中的并发控制
·
2015-11-01 09:42
linux
Linux内核开发之内存与I/O访问(二)
“小涛哥,咱们说
Linux设备驱动
程序说了那么久,怎么从来不说实际设备呢,顶多就说了下内存,总感觉驱动程序是和设备分离的,怎么关联起来..”小王思索着。
·
2015-11-01 08:34
linux
Linux设备驱动
之USB hub驱动(续)
http://blogold.chinaunix.net/u3/111381/showart_2163688.html 5.2.2:接口驱动中的hub_thread()函数 我们之前在分析usb_hub_init()的代码的时候,忽略掉了一部份. 代码片段如下所示: int usb_hub_init(void) { ……
·
2015-11-01 08:19
linux
Linux设备驱动
程序学习(2)-调试技术
进入《
Linux设备驱动
程序(第3版)》第四章调试技术的学习。 一、内核中的调试支持 在前面已经建议过:学习编写驱动程序要构建安装自己的内核(标准主线内核)。
·
2015-10-31 19:58
linux
Linux设备驱动
程序学习(0) -设备驱动介绍& Hello, world!模块
设备驱动程序的作用 设备驱动程序就是这个进入Linux内核世界的大门。设备驱动程序在Linux内核中扮演着特殊的角色。它是一个独立的“黑盒子”,使某个特定硬件响应一个定义好的内部编程接口,这些接口完全隐藏了设备的工作细节。用户的操作通过一组标准化的调用执行,而这些调用独立于特定的驱动程序。 将这些调用映射到作用于实际硬件的设备特有操作上,则是设备驱动程序的任务。
·
2015-10-31 19:58
linux
Linux设备驱动
程序学习系列~~
引用《
Linux设备驱动
程序(第3版)》的原话:“如果想要学习驱动程序的编写,则标准内核是最好的。” &nb
·
2015-10-31 19:54
linux
书籍链接
编程语言 《C语言程序设计》 《C和指针》 《C Primer Plus》 《C++ Primer》 Linux下开发系列 《
Linux设备驱动
》 《Unix环境下高级编程
·
2015-10-31 17:01
链接
linux 设备驱动的重点和难点
编写
linux设备驱动
,要求工程师具备一定的硬件基础,懂得SRAM, Flash, SDRAM, 磁盘的读写方式, UART, I2C, USB等设备的接口,轮询
·
2015-10-31 16:26
linux
Linux设备驱动
程序学习(16)-USB 驱动程序(一)
从此文档开始,内核使用2.6.29.4 很久没有写《LDD3》的学习笔记了,趁着做项目的机会,学习一下USB的驱动程序,并写学习笔记。 。 如果刚开始接触USB,会感觉无从下手,这种感觉就像我第一次接触嵌入式Linux一样。所以要对USB的硬件原理、数据传输和在USB电缆上传输的数据格式有一定的了解。所以推荐一篇《实用USB术语详解》。再去CEPARK ( China Electronics
·
2015-10-31 14:04
linux
Linux设备驱动
程序学习(15) -Linux设备模型(热插拔、mdev 与 firmware)
热插拔 有 2 个不同角度来看待热插拔: 从内核角度看,热插拔是在硬件、内核和内核驱动之间的交互。 从用户角度看,热插拔是内核和用户空间之间,通过调用用户空间程序(如hotplug、udev 和 mdev)的交互。 当需要通知用户内核发生了某种热插拔事件时,内核才调用这个用户空间程序。 现在的计算机系统,要求 Linux 内核能够在硬件从
·
2015-10-31 14:03
linux
Linux设备驱动
程序学习(13) -Linux设备模型(总线、设备、驱动程序和类)
文章的例子和实验使用《LDD3》所配的lddbus模块(稍作修改)。 提示:在学习这部分内容是一定要分析所有介绍的源代码,知道他们与上一部分内容( kobject、 kset、 attribute等等 )的关系,最好要分析一个实际的“flatform device”设备,不然会只学到表象,到后面会不知所云的。 总线 总线是处理器和一个或多个设备之间的通道,在设备模型中, 所
·
2015-10-31 14:02
linux
Linux设备驱动
程序学习(14) -Linux设备模型(各环节的整合)
通过一个设备在内核中生命周期的各个阶段,可以更好地理解Linux设备模型。我将通过分析lddbus和sculld的源码来了解Linux设备模型中各环节的整合。《LDD3》中的(PCI总线)各环节的整合这部分内容作为参考资料,因为嵌入式Linux比较少用到PCI总线。看这部分内容一定要先熟悉一下 lddbus 和 sculld 的源码。 一、lddbus模块:添加总线、导出总线设备和设备驱动
·
2015-10-31 14:02
linux
Linux设备驱动
程序学习(11)-中断处理
可以让设备在产生某个事件时通知处理器的方法就是中断。一个“中断”仅是一个信号,当硬件需要获得处理器对它的关注时,就可以发送这个信号。 Linux 处理中断的方式非常类似在用户空间处理信号的方式。 大多数情况下,一个驱动只需要为它的设备的中断注册一个处理例程,并当中断到来时进行正确的处理。本质上来讲,中断处理例程和其他的代码并行运行。因此,它们不可避免地引起并发问题,并竞争数据结构和硬件。 透彻地理
·
2015-10-31 14:01
linux
Linux设备驱动
程序学习(9)-与硬件通信
在学习有关I/O总线的内容时,最好先看看相关的知识:从PC总线到ARM的内部总线 I/O 端口和 I/O 内存 每种外设都是通过读写寄存器来进行控制。 在硬件层,内存区和 I/O 区域没有概念上的区别: 它们都是通过向在地址总线和控制总线发出电平信号来进行访问,再通过数据总线读写数据。 因为外设要与I\O总线匹配,而大部分流行的 I/O 总线是基于个人计算机模型(主要是
·
2015-10-31 14:00
linux
Linux设备驱动
程序学习(10) -时间、延迟及延缓操作
度量时间差 时钟中断由系统定时硬件以周期性的间隔产生,这个间隔由内核根据 HZ 值来设定,HZ 是一个体系依赖的值,在 <linux/param.h>中定义或该文件包含的某个子平台相关文件中。作为通用的规则,即便如果知道 HZ 的值,在编程时应当不依赖这个特定值,而始终使用HZ。对于当前版本,我们应完全信任内核开发者,他们已经选择了最适合的HZ值,最好保持 HZ 的默认值。 &
·
2015-10-31 14:00
linux
Linux设备驱动
程序学习(8)-分配内存
内核为设备驱动提供了一个统一的内存管理接口,所以模块无需涉及分段和分页等问题。 我已经在第一个scull模块中使用了 kmalloc 和 kfree 来分配和释放内存空间。 kmalloc 函数内幕 kmalloc 是一个功能强大且高速(除非被阻塞)的工具,所分配到的内存在物理内存中连续且保持原有的数据(不清零)。原型: #include <linux/slab.h>
·
2015-10-31 14:59
linux
Linux设备驱动
程序学习(6) -高级字符驱动程序操作[(3)设备文件的访问控制]
提供访问控制对于 一个设备节点来的可靠性来说有时是至关重要的。这部分的内容只是在open和release方法上做些修改,增加一些检查机制既可。 独享设备 最生硬的访问控制方式是只允许一个设备一次被一个进程打开(独享),这是一个设备驱动最简单的访问控制。实现十分简单,具体的代码看实验源码吧! 模块程序链接: scullsingle.tar.gz 模块测试程序链接: scullsi
·
2015-10-31 14:58
linux
Linux设备驱动
程序学习(4) -高级字符驱动程序操作[(1)ioctl and llseek]
今天进入《
Linux设备驱动
程序(第3版)》第六章高级字符驱动程序操作的学习。
·
2015-10-31 14:57
linux
Linux设备驱动
程序学习(3-补) -Linux中的循环缓冲区
参考资料:《Linux内核中的循环缓冲区》作者:西邮 王聪 严重感谢文章作者! 但是(可能是源码版本问题)有些结论并不正确: “而kfifo_init只会接受一个已分配好空间的fifo->buffer,不能和kfifo_free搭配,用kfifo_init分配的kfifo只能用kfree释放。” 阅读源码可以得出这样的结论:kfifo_init和kfifo_alloc分配
·
2015-10-31 14:57
linux
Linux设备驱动
程序学习(3)-并发和竞态
今天进入《
Linux设备驱动
程序(第3版)》第五章并发和竞态的学习。 对并发的管理是操作系统编程中核心的问题之一。 并发产生竞态,竞态导致共享数据的非法访问。
·
2015-10-31 14:56
linux
近期读书计划
6月底 - 8月底: 1、完成《
LINUX设备驱动
程序》第三版的学
·
2015-10-31 13:26
读书
linux man使用方法 和centos安装中文man包
这两天学习<
linux设备驱动
程序开发详解>中的异步通知,其中有一个fcntl()函数,就是找不到,很气愤,在网上搜,也没有好的解决办法, 最终,一个网友给我做了解答:是因为fcntl()
·
2015-10-31 12:16
centos
嵌入式资源免费下载
Vxwork实时操作系统教程.rar 国防科大ucOS实时操作系统教程.rar PowerPC-VxWorks-BSP-分析.rar 嵌入式系统设计(陈天洲).rar
Linux
·
2015-10-31 11:05
免费下载
linux 驱动开发,使能 dev_dbg
linux设备驱动
调试,我们在内核中看到内核使用dev_dbg来控制输出信息,这个函数的实质是调 用printk(KERN_DEBUG )来输出打印信息。要打开这个开关需要下面两步。
·
2015-10-31 11:36
linux
Linux设备驱动
程序学习(19)-USB 驱动程序(四)
编写 USB 驱动程序 (本部分的一些示例源码来自drivers/usb/usb-skeleton.c,它是Linux内核为我们提供的最基础的USB驱动程序,USB骨架程序) 驱动程序把驱动对象注册到 USB 子系统中,之后使用供应商(idVendor)和设备(idProduct)标识来判断对应的硬件是否已经安装. 驱动的设备支持列表 struct usb_device_id 结构提供了这
·
2015-10-31 11:49
linux
Linux设备驱动
程序学习(17)-USB 驱动程序(二)
内核使用2.6.29.4 USB设备其实很复杂,但是Linux内核提供了一个称为USB core的子系统来处理了大部分的复杂工作,所以这里所描述的是驱动程序和USB core之间的接口。 在USB设备组织结构中,从上到下分为设备(device)、配置(config)、接口(interface)和端点(endpoint)四个层次。 对于这四个层次的简单描述如下:
·
2015-10-31 11:49
linux
Linux设备驱动
程序学习(18)-USB 驱动程序(三)
USB urb (USB request block) 内核使用2.6.29.4 USB 设备驱动代码通过urb和所有的 USB 设备通讯。urb用 struct urb 结构描述(include/linux/usb.h )。 urb以一种异步的方式同一个特定USB设备的特定端点发送或接受数据。一个 USB 设备驱动可根据驱动的需要,分配多个 urb 给一个端点或重用单个 urb 给
·
2015-10-31 11:49
linux
linux设备驱动
之USB数据传输分析(续)
uhci_scan_schedule()是这个函数的核心操作.也是经常出现的一个函数.代码如下: static void uhci_scan_schedule(struct uhci_hcd *uhci) { int i; struct uhci_qh *qh;  
·
2015-10-31 10:21
linux
嵌入式linux的驱动程序
[摘至嵌入式
linux设备驱动
开发详解] 1.4 嵌入式linux驱动程序 1.4.1 嵌入式linux的内核空间和用户空间 目前,各种处理器都能防止资源的未经授权访问,包括嵌入式处理器。
·
2015-10-31 10:04
linux
Linux设备驱动
之sysfs
Sysfs文件系统是一个类似于proc文件系统的特殊文件系统,用于将系统中的设备组织成层次结构,并向用户模式程序提供详细的内核数据结构信息。 去/sys看一看,localhost:/sys#ls /sys/block/ bus/ class/ devices/ firmware/ kernel/ module/ power/Block目录:包含所有的块设备Devices目录:包含系统所有的设备
·
2015-10-31 10:49
linux
内核模块编程1
Linux设备驱动
是以模块的形式驻留内存,设备驱动编程基本上遵循内核模块编程 准备文件 /*main.c*/ #include <linux/init.h> #include <
·
2015-10-31 10:29
编程
linux man使用方法 和centos安装中文man包 --转
http://blog.chinaunix.net/uid-25100840-id-302308.html 这两天学习<
linux设备驱动
程序开发详解>中的异步通知,其中有一个fcntl(
·
2015-10-31 09:56
centos
Linux设备驱动
程序学习
前言: 接触ARM-Linux已经有9个多月了,经历了毕业设计和公司的练习设计,对ARM-Linux有了一定的了解,也让我爱上了ARM-Linux,决心以后从事Linux的工作。 8月份开始,我算是从头认认真真,一步一个脚印地学习ARM-Linux。先后对博创UP-NETARM2410-S和友善之臂SBC2440V4进行了
·
2015-10-31 09:23
linux
上一页
18
19
20
21
22
23
24
25
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他