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内核驱动
ARM
Linux内核驱动
异常定位方法分析--反汇编方式
原创作品,转载请以超链接形式说明出处! 原文链接:http://blog.csdn.net/hunhunzi/article/details/7052032 最近在搞Atmel 的SAM9x25平台,Linux系统,用于工业设备。这也是我首次参与工业设备的研发。在调试Atmel SAM9x25的Linux串口设备的时候,发现无论是读还是写,都会产生异常。相关的异常信息如下:
·
2015-10-30 13:23
linux
我的Linux书架
来自 这里 工作几年来,一直从事
Linux内核驱动
方面的开发。
·
2015-10-27 16:33
linux
在Ubuntu上为Android系统编写
Linux内核驱动
程序(老罗学习笔记1)
这里,我们不会为真实的硬件设备编写内核驱动程序。为了方便描述为Android系统编写内核驱动程序的过程,我们使用一个虚拟的硬件设备,这个设备只有一个4字节的寄存器,它可读可写。想起我们第一次学习程序语言时,都喜欢用“Hello, World”作为例子,这里,我们就把这个虚拟的设备命名为“hello”,而这个内核驱动程序也命名为hel
·
2015-10-27 14:24
android
Android 驱动之旅: 第二章 -- 在Android 系统中增加C 可执行程序来访问硬件驱动程序
在第一篇文章中,我们介绍了如何在Ubuntu 上为Android 系统编写
Linux内核驱动
程序。
·
2015-10-27 14:04
android
在Ubuntu上为Android系统内置C可执行程序测试
Linux内核驱动
程序(老罗学习笔记2)
在前一篇文章中,我们介绍了如何在Ubuntu上为Android系统编写
Linux内核驱动
程序。
·
2015-10-23 08:10
android
【dpdk】使用libpcap-PMD驱动收发包
Libpcappmd使用libpcap库读写报文,读写的源可以是文件,也可以是使用
Linux内核驱动
的物理网卡。 在没有或不方便配置物理网卡的机器上,使用libpcappmd可以帮助dp
赵子清
·
2015-10-22 18:00
Linux字符驱动中动态分配设备号与动态生成设备节点
在编写
Linux内核驱动
程序的时候,如果不动态生成设备号的话,需要自己手动分配设备号,有可能你分配的设备号会与已有设备号相同而产生冲突。因此推荐自动分配设备号。
·
2015-10-21 11:40
linux
Linux内核驱动
加载顺序
【问题】背光驱动初始化先于LCD驱动初始化,导致LCD驱动初始化时出现闪屏的现象。【解决过程】1 mach-xxx.c中platform devices列表如下/* platform devices */static struct platform_device *athena_evt_platform_devices[] __initdata = { //&xxx_led
·
2015-10-21 11:17
linux
Linux内核驱动
接口(dev)
device_create()函数创建节点/dev下面的设备节点一般由两种方式创建的,一者是mknod手动创建,另外就是驱动中创建新设备的时候,会往udev类的用户程序上报一个DEVICE_ADD的事件,udev接收到设备添加事件后就会在/dev下创建设备节点了##/dev目录生成,/dev目录下的节点生成???#devt这个是major和minor设备组合出来的值fmt字符串就是在/dev下面生
hongzg1982
·
2015-10-09 11:00
linux
kernel
Linux内核驱动
:ion memory
高通msm平台为例,以下是这个平台定义的几个ion内存。qcom,ion{ compatible="qcom,msm-ion"; #address-cells=; #size-cells=; qcom,ion-heap@25{ reg=; qcom,ion-heap-type="SYSTEM"; }; qcom,ion-heap@21{ reg=; qcom,ion-heap-type="SY
hongzg1982
·
2015-10-08 17:00
Linux内核驱动
接口(kset,kobj)
structkobject*power_kobj; staticstructattribute*g[]={ &state_attr.attr, #ifdefCONFIG_PM_TRACE &pm_trace_attr.attr, #endif #ifdefCONFIG_PM_SLEEP &pm_async_attr.attr, #ifdefCONFIG_PM_DEBUG &pm_test_att
hongzg1982
·
2015-10-06 21:00
linux
kernel
基于ARM 构架(带MMU)的copy_from_user与copy_to_user详细分析
[转自:http://blog.chinaunix.net/uid-20543672-id-3195249.html] 在学习
Linux内核驱动
的时候,一开始就会碰到copy_from_user和copy_to_user
cgj
·
2015-09-23 12:00
动态建立设备节点class_creat/device_creat
原文:http://www.cnblogs.com/zhuyp1015/archive/2012/05/22/2514008.html在编写
Linux内核驱动
程序的时候,如果不动态生成设备号的话,需要自己手动分配设备号
linglongqiongge
·
2015-08-20 17:00
linux
Class
class_creat
device_creat
关于Android的HAL的一些理解
之前一直在学习基于Linux内核的一些字符型驱动的编程,对
Linux内核驱动
也算有了一些基本的了解吧,后来也做过一些基于Linux内核的驱动开发,像基于Android的CC1101高频模块的驱动开发,以及基于
JansonZhe
·
2015-08-04 09:56
android平台
Android平台添加外设的架构流程(kernel->HAL->JNI->API->APP)之学习提高篇
Android的硬件抽象层,简单来说,就是对
Linux内核驱动
程序的封装,向上提供接口,屏蔽低层的实现细节。
maochengtao
·
2015-07-12 12:00
Android硬件抽象层(HAL)概要介绍和学习计划
Android的硬件抽象层,简单来说,就是对
Linux内核驱动
程序的封装,向上提供接口,屏蔽低层的实现细节。
linshijun33
·
2015-07-11 22:00
android
linux
技术
硬件
linux内核驱动
中_IO, _IOR, _IOW, _IOWR 宏的用法与解析
在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动程序请求处理内容的值。cmd除了可区别数字外,还包含有助于处理的几种相应信息。 cmd的大小为 32位,共分 4 个域: bit31~bit30 2位为 “区别读写” 区,作用是区分是读取命令还是写入命令。 bit29~
·
2015-06-24 16:00
linux
Android硬件抽象层(HAL)概要介绍和学习计划
Android的硬件抽象层,简单来说,就是对
Linux内核驱动
程序的封装,向上提供接口,屏蔽低层的实现细节。
lqxandroid2012
·
2015-05-29 11:00
学习韦东山视频心得(二)
Linux内核驱动
模块一般由模块加载函数,模块卸载函数,模块许可申明等等组成。在字符设备驱动中在模块加载函数中注册主设备,注册操作方法,创建设备结点等操作。字符设备驱动移植步骤:(1)在模块加载
企鹅Tux
·
2015-05-08 12:40
字符设备
韦东山
视频心得
统一Linux驱动第一步:AMD发布新版AMDGPU内核驱动
经过近一年的等待,AMD在4月20日宣布推出最新的AMDGPU
Linux内核驱动
。AMDGPU内核驱动支持最新的RadeonR9285显卡、即将推出的GPU和Carrizo等APU。
张天雷
·
2015-04-30 00:00
linux内核驱动
学习(七)----驱动分类 | 学习方法 | 硬件访问
驱动分类:对于驱动,我们一般按两种方法进行分类:常规分类法和总线分类法。按照常规分类法,可以分为以下三类:1、字符设备:以字节为最小访问单位的设备。一般通过字符设备文件来访问字符设备驱动程序。字符驱动程序则负责驱动字符设备,,这样的驱动通常支持open、close、read、write系统调用,应用程序可以通过设备文件(比如/dev/ttySAC0等)来访问字符设备(串口)。例如:串口\led\按
u011467781
·
2015-03-14 20:00
地址映射
Linux内核模块
硬件访问
驱动分类
Linux内核驱动
学习(一)----内核简介 | 配置 | 编译| 安装(PC平台下)
Linux内核驱动
学习(一)----内核简介|配置|编译|安装(PC平台下)http://blog.csdn.net/u011467781/article/details/43532141Linux体系结构
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(二)----根文件系统的构成 (root filesystem)
1、建立根文件系统目录和文件1.1创建目录1.2创建设备文件(命令mknod);必须创建设备文件---consle\null1.3创建配置文件---复制已有的/etc目录下的文件1.4添加内核模块进入Linux内核目录下,(注意,应该先编译内核,即命令makeuImageARCH=arm CROSS_COMPILE=arm-linux-)1.4.1、编译内核模块---命令makemodulesAR
zdy0_2004
·
2015-03-08 23:00
linux
linux内核
Linux内核驱动
学习(三)----内核模块基础 | 设计 | 可选项
Linux内核驱动
学习(三)----内核模块基础|设计|可选项http://blog.csdn.net/u011467781/article/details/43674551内核模块基础--特点及其命令使用
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(四)----内存管理子系统
Linux内核驱动
学习(四)----内存管理子系统http://blog.csdn.net/u011467781/article/details/43675311摘要:本文主要讲述Linux对内存的管理
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(五)----进程管理子系统
Linux内核驱动
学习(五)----进程管理子系统http://blog.csdn.net/u011467781/article/details/436763611、Linux进程的要素1.1程序与进程程序
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(六)----内核链表
Linux内核驱动
学习(六)----内核链表http://blog.csdn.net/u011467781/article/details/44106229回顾链表的概念Linux内核链表:双向循环链表
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(七)----系统调用揭秘
Linux内核驱动
学习(七)----系统调用揭秘http://blog.csdn.net/u011467781/article/details/44106429?
zdy0_2004
·
2015-03-08 23:00
linux内核
Linux内核驱动
学习(六)----内核链表
回顾链表的概念Linux内核链表:双向循环链表。内核链表的设计思想:实现尽可能的代码重用可以使大量的链表设计为单个链表。内核链表的结构(代码位于include/linux/list.h中):structlist_head { structlist_head*next,*prev; }list_head结构包含两个指向list_head结构的指针prev和next,由此可见内核的链表具有双链表的功能
u011467781
·
2015-03-06 22:00
链表结构
内核链表
Linux内核驱动
编程
Linux内核驱动
编程2015-02-12驱动程序基础的东西这儿就不罗嗦了,百度上有更好的资料,此处我们只是注重实际用处。
Jaimex8
·
2015-02-12 21:00
Linux内核
Linux内核驱动
编程
Linux内核驱动
编程2015-02-12驱动程序基础的东西这儿就不罗嗦了,百度上有更好的资料,此处我们只是注重实际用处。
Jaimex8
·
2015-02-12 21:00
Linux内核
Linux内核驱动
学习(五)----进程管理子系统
1、Linux进程的要素1.1程序与进程程序:存放在磁盘上的一系列代码和数据的可执行映像,是一个静止的实体。。进程:是一个正在执行的程序,它是动态的实体1.2进程的四要素参考书目:《Linux情景分析》1.2.1-->有一段程序供其执行,这段程序不一定是某个进程所专有,可以与其他进程共用1.2.2-->有进程专用的内核空间堆栈。1.2.3-->在内核中有一个task_struct数据结构,即通常所
u011467781
·
2015-02-09 21:00
LINUX进程
进程管理
Linux内核驱动
学习(四)----内存管理子系统
摘要:本文主要讲述Linux对内存的管理,主要涉及Linux虚拟地址空间的分布、虚拟地址到物理地址的映射管理,Linux物理内存的分配。Linux内存管理子系统由七大部分组成。。如下图:a>系统调用接口(SCI)、b>进程管理(PM)、c>内存管理(MM)、d>关于处理器代码(arch)、e>虚拟文件系统(VFS)、f>网络协议栈、 g>设备驱动(DD) 图:内存管理模型原图地
u011467781
·
2015-02-09 20:00
linux内存管理
Linux内存分配
Linux内核驱动
学习(三)----内核模块基础 | 设计 | 可选项
内核模块基础--特点及其命令使用1、模块本身并不被编译进内核文件(zImage或bzImage)2、可以根据需要在内核运行时动态加载、卸载----》进而达到节省空间的目的命令详解(以下载驱动DNW为例):insmod模块名称(注意有.ko后缀)--安装insmoddnw_usb.kolsmod-->查看安装的内核模块rmmod模块名称(注意没有.ko后缀)---->卸载内核模块rmmoddnw_u
u011467781
·
2015-02-09 19:00
Linux内核模块
内核模块参数
模块调试
Linux内核驱动
学习(二)----根文件系统的构成 (root filesystem)
1、建立根文件系统目录和文件1.1创建目录1.2创建设备文件(命令mknod);必须创建设备文件---consle\null1.3创建配置文件---复制已有的/etc目录下的文件1.4添加内核模块进入Linux内核目录下,(注意,应该先编译内核,即命令makeuImageARCH=arm CROSS_COMPILE=arm-linux-)1.4.1、编译内核模块---命令makemodulesAR
u011467781
·
2015-02-05 19:00
嵌入式
nfs挂载
制作根文件系统
Linux内核驱动
学习(一)----内核简介 | 配置 | 编译| 安装(PC平台下)
Linux体系结构:由上图知:Linux架构分为用户空间和内核空间划分成用户空间与内核空间的原因?保护操作系统,使应用程序和内核拥有不同的权限。为不同的代码制造不同的等级。。。内核空间与用户空间是程序执行的两种不同的状态,通过系统调用和硬件中断能够完成从用户空间到内核空间的转换内核的构成:a-->系统调用接口(SCI)、b-->进程管理(PM)、c-->内存管理(MM)、d-->关于处理器代码(a
u011467781
·
2015-02-05 19:00
源码
配置
编译
linux内核
linux内核驱动
-内核初涉
一、为什么要学习内核?有些人要学习内核,而有些人则可以不学习它。你如果以后要从事系统研发或驱动开发的话,就要学习内核。刚刚接触内核,主要学习内核的接口函数。不要深入的去读内核,因为你读也读不懂,内核代码庞大如野兽一般不可驾驭。学习内核主要掌握层次学习法,即从头开始学习,一环紧扣一环。内核学习的四步学习法:1、核心理论学习-概念与函数原型2、范例程序分析3、思维导图设计4、亲自编写代码二、linux
maochengtao
·
2015-01-04 18:00
linux内核驱动
模块编程框架---(hello world模块)
驱动模块框架 helloworld是软件中的经典!! 和平常写一般代码一样,vim新建一个hello.c文件:#include//模块加载卸载需要的头文件 #include//需要内核的一些认证和许可 //上面两个头文件对一个内核模块程序来说是必不可少的 //这是模块初始化函数,在模块加载时触发被调用 staticint__inithello_init(void) { prin
YuZhiHui_No1
·
2014-10-18 13:00
makefile
linux内核
驱动框架
驱动模块编程
模块常用操作命令
在Ubuntu上为Android增加硬件抽象层(HAL)模块访问
Linux内核驱动
程序
接着,在Ubuntu上为Android系统编写
Linux内核驱动
程序一文中举例子说明了如何在Linux内核编写驱动程序。在这一篇文章中,我们将继续介绍Android系统硬件驱动程序的另一
Tommy_wxie
·
2014-10-15 19:00
linux内核驱动
2.6和2.4的区别
随着Linux2.6的发布,由于2.6内核做了新的改动,各个设备的驱动程序在不同程度上要进行改写。为了方便各位Linux爱好者我把自己整理的这分文档share出来。该文当列举了2.6内核同以前版本的绝大多数变化,可惜的是由于时间和精力有限没有详细列出各个函数的用法。1、使用新的入口必须包含module_init(your_init_func);module_exit(your_exit_func)
黄兔之
·
2014-10-10 14:00
[置顶] linux内核notifier机制 linux通知链
熟悉使用notifier有助于
linux内核驱动
开发。notifier_block结构:struct
eqwewr
·
2014-09-23 21:00
linux通知链
我的Linux书架
http://www.cnblogs.com/wwang/archive/2011/01/27/1944406.html#2812048工作几年来,一直从事
Linux内核驱动
方面的开发。
lionfire
·
2014-09-05 15:00
SPI模块的HAL访问
Linux内核驱动
程序
1、在hardware/libhardware/modules下创建spihal文件夹。2、在spihal中创建spihal.c、Android.mk文件。spihal.c#defineLOG_TAG"SpiStub" #include #include #include #include #include #include #include #include #include
hanbo622
·
2014-08-30 15:00
linux
android
C语言
ARM
hal
Linux内核驱动
fsync机制实现图解
在Linux内核中的IO模型基本分为4类:1、同步阻塞I/O2、同步非阻塞I/O3、异步阻塞I/O4、异步非阻塞I/O同步:应用显式地通过函数访问数据,在此函数返回时就会得到结果(成功或失败)。异步:应用会显示地通过函数提出访问或关注申请。数据到达时,硬件和驱动会通知应用,此时代码一般不在读写访问函数中,而是得到通知了再去有目的的访问数据。阻塞:在等待数据的过程中会休眠在此处,而非阻塞即函数不休眠
华清远见
·
2014-08-18 15:54
linux
Linux内核驱动
fsync机制
linux内核驱动
模块加载方式
在类unix操作系统中,驱动加载方式一般分为:动态加载和静态加载,下面分别对其详细论述。一、动态加载 动态加载是将驱动模块加载到内核中,而不能放入/lib/modules/下。 在2.4内核中,加载驱动命令为:insmod,删除模块为:rmmod; 在2.6以上内核中,除了insmod与rmmod外,加载命令还有modprobe; insmod与modprobe不同之处:
sflfqx
·
2014-08-01 18:00
修改UBOOT和LINUX调试串口(TI达芬奇芯片--DM6467)
3.
linux内核驱动
。 使用的代码及版本请参考:ht
zhangjikuan
·
2014-07-25 14:00
linux
uboot
DM6467
调试串口
保存的链接
blog.csdn.net/pirate310/article/details/7101024 http://wenku.baidu.com/view/95c69448e518964bcf847c2f.html
Linux
u010837360
·
2014-07-02 11:00
链接
linux 开发书籍
工作几年来,一直从事
Linux内核驱动
方面的开发。从接触Linux到现在,读过不少Linux方面的书籍,现把认为很不错的一部分列出来和大家分享一下。
a491057947
·
2014-06-21 23:00
Device Tree常用方法解析
DeviceTree在
Linux内核驱动
中的使用源于2011年3月17日LinusTorvalds在ARMLinux邮件列表中的一封邮件,他宣称“thiswholeARMthingisaf*ckingpainintheass
pwan1987
·
2014-06-18 15:21
device
Tree常用方法解析
Linux内核驱动
fsync机制实现图解
在Linux内核中的IO模型基本分为4类:1、同步阻塞I/O2、同步非阻塞I/O3、异步阻塞I/O4、异步非阻塞I/O同步:应用显式地通过函数访问数据,在此函数返回时就会得到结果(成功或失败)。异步:应用会显示地通过函数提出访问或关注申请。数据到达时,硬件和驱动会通知应用,此时代码一般不在读写访问函数中,而是得到通知了再去有目的的访问数据。阻塞:在等待数据的过程中会休眠在此处,而非阻塞即函数不休眠
lubing521
·
2014-06-11 21:04
LINUX
上一页
3
4
5
6
7
8
9
10
下一页
按字母分类:
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
其他