linux
文章平均质量分 78
专注android开发
这个作者很懒,什么都没留下…
展开
-
linux 内核文章锦集
文章: 内核中的并发Linux内核分析笔记帖: Linux内核开发理论帖:Linux内核开发之阻塞/非阻塞IO---- 等待对列 轮询操作 Linux内核开发之异步通知与异步I/O(一-四) Linux内核开发之中断与时钟(一) Linux内核开发之内存与I/O访问(一)Linux内核开发之转载 2012-09-28 14:52:30 · 1009 阅读 · 0 评论 -
linux 同步机制之complete
在Linux内核中,completion是一种简单的同步机制,标志"things may proceed"。要使用completion,必须在文件中包含,同时创建一个类型为struct completion的变量。这个变量可以静态地声明和初始化:DECLARE_COMPLETION(my_comp);或者动态初始化:struct completion my_comp;ini转载 2013-01-10 16:49:04 · 10983 阅读 · 0 评论 -
Android在标准linux基础上对休眠唤醒的实现
Android在标准linux基础上对休眠唤醒的实现(一)转载 2013-01-12 14:14:56 · 771 阅读 · 0 评论 -
linux tar 命令
tar 命令详解 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文原创 2013-02-18 09:41:21 · 673 阅读 · 0 评论 -
find 、 grep 命令
find 命令语法:find 搜索路径 匹配表达式功能:该命令用于在指定路径中查找符合条件的文件,搜索路径可以是多个目录,不同目录之间以空格分隔 (1)匹配表达式1 -name filename :要查找的文件名。可以使用通配符“*”,“?”,但要用双引号将文件名引起来 例子:【root@localhost tmp】# find –转载 2012-10-13 10:57:37 · 851 阅读 · 0 评论 -
android 传感器相关文章
Android"重力加速度传感器"从驱动到应用层全程分析重力传感器驱动分析原创 2013-02-26 13:55:41 · 1020 阅读 · 0 评论 -
Android"重力加速度传感器"从驱动到应用层全程分析
1. 体系结构2. 数据结构3. 四大函数本文以重力感应器装置G-sensor为例探索Android的各层次结构。1. 体系结构 Android的体系结构可分为4个层次。 第一层次 底层驱动层,包括标准Linux,Android核心驱动,Android相关设备驱动,G-sensor的设备驱动程序即存在于此转载 2013-02-26 11:31:39 · 7919 阅读 · 1 评论 -
linux 定时器
hrtimer和work工作队列的使用关于定时器:可以参考如下文章:2.6 内核中的计时器和列表 1.hrtimers - 为高分辨率kernel定时器,可作为超时或周期性定时器使用1). hrtimer_init初始化定时器工作模式。 hrtimer_init(&vibe_timer, CLOCK_MONOTONIC, HRTIMER_MODE_REL); vib转载 2013-03-14 11:32:37 · 1009 阅读 · 0 评论 -
kernel 异常处理
ARM Linux内核驱动异常定位方法分析--反汇编方式 原文链接:http://blog.csdn.net/hunhunzi/article/details/7052032最近在搞Atmel 的SAM9x25平台,Linux系统,用于工业设备。这也是我首次参与工业设备的研发。在调试Atmel SAM9x25的Linux串口设备的时候,发现无论是读还是写,都会产生异常。原创 2013-03-15 18:14:06 · 7677 阅读 · 0 评论 -
input 输入事件
1) 触摸设备驱动应当只需要注册轴、与轴对应的键值和真正支持的按钮。注册过多的轴或键值可能会迷惑设备分类算法或导致系统不能正确地检测设备的能力。 比如:如果设备驱动报告了BTN_TOUCH键值, Android系统将认为BTN_TOUCH总是被用于指示触摸工具是否真正地接触触摸屏或仅仅在上方盘旋。 2) 单点触摸(Single-touch)设备支持以下Linu原创 2013-03-20 11:10:49 · 2513 阅读 · 0 评论 -
make menuconfig/.config/Kconfig解析
在对linux进行编译,常用的命令是make menuconfig,使用图形界面来对整个系统进行裁剪。当然,除了这条指令,还包括很多配置命令,比如make defconfig, make oldconfig等。这里主要就make menuconfig的执行过程进行解析。一.准备工作包括(交叉)编译环境的建立,linux源码的下载与解压等。二.初步介绍 跟make m转载 2013-03-20 15:54:09 · 1189 阅读 · 0 评论 -
工作队列
Linux 2.6内核使用了不少工作队列来处理任务,他在使用上和 tasklet最大的不同是工作队列的函数可以使用休眠,而tasklet的函数是不允许使用休眠的。工作队列的使用又分两种情况,一种是利用系统共享的工作队列来增加自己的工作,这种情况处理函数不能消耗过多时间,这样会影响共享队列中其他任务的处理;另一种是创建自己的工作队列并添加工作。(一)利用系统共享的工作队列添加工作:转载 2012-05-15 12:34:25 · 1212 阅读 · 0 评论 -
request_irq() | 注册中断服务
参考 : ARM Linux 中断机制分析.pdflinux-2.6.26内核中ARM中断实现详解(1)一、中断注册方法在linux内核中用于申请中断的函数是request_irq(),函数原型在Kernel/irq/manage.c中定义:int request_irq(unsigned int irq, irq_handler_t handler,转载 2012-05-14 22:16:28 · 82535 阅读 · 4 评论 -
android下操作FrameBuffer
可以同时参考另外几篇详细文章:基于S3C2440的嵌入式Linux驱动——Framebuffer子系统解读 linux LCD驱动(二)--FrameBufferLinux LCD驱动(三)--图形显示贺人龙的专栏:android framebuffer driver 小结[msm7627为例]转载 2012-09-07 15:02:32 · 1556 阅读 · 0 评论 -
全面的framebuffer详解
可以同时参考另外几篇详细文章:基于S3C2440的嵌入式Linux驱动——Framebuffer子系统解读 linux LCD驱动(二)--FrameBuffer Linux LCD驱动(三)--图形显示android framebuffer driver 小结[msm7627为例] 一、FrameBuffer的原理 Fr转载 2012-09-08 09:37:25 · 5742 阅读 · 0 评论 -
android display
参考:对fb.h fbmen.c board文件和panel驱动的详细代码分析:基于S3C2440的嵌入式Linux驱动——Framebuffer子系统解读 linux LCD驱动(1-4)--硬件分析 高通和android下的代码分析:Android display Path analysis android framebuffer driver原创 2012-10-12 14:18:27 · 4089 阅读 · 0 评论 -
grep:字符串查找
引自:http://hi.baidu.com/hzslqt/blog/item/dbd0ea4e5145f819b3de05d6.html1. grep简介 grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并转载 2012-09-25 09:58:10 · 33388 阅读 · 0 评论 -
Linux驱动调试中的Debugfs的使用简介
Linux驱动调试中的Debugfs的使用简介 (2012-03-31 14:14) 在调试linux驱动的时候,可以用debugfs来调试,debugfs类似字符设备驱动一样,甚至更简单,不需要主设备号次设备号等等,只需要实现一个file_operations,然后通过debugfs_create_file就可以在debugfs中建立一个文件结点,就像字符设备驱动那样,只需要对这个文件结转载 2012-09-18 15:54:54 · 35211 阅读 · 0 评论 -
linux内核同步机制中的概念介绍和方法
Linux设备驱动中必须解决的一个问题是多个进程对共享资源的并发访问,并发访问会导致竞态,linux提供了多种解决竞态问题的方式,这些方式适合不同的应用场景。 Linux内核是多进程、多线程的操作系统,它提供了相当完整的内核同步方法。内核同步方法列表如下:=========================内核中采用的同步技术: 中断屏蔽原子操作 (分为整数原子操作和转载 2012-09-08 11:43:06 · 8026 阅读 · 1 评论 -
《Linux内核修炼之道》精华分享与讨论——设备模型
《Linux内核修炼之道》精华分享与讨论(11)——设备模型(上)分类: 《Linux内核修炼之道》 2010-03-24 09:23 12216人阅读 评论(67)收藏举报推荐博文: Linux内核“问题门”——学习问题、经验集锦推荐下载:《Linux内核修炼之道》精华版之方法论 对于驱动开发来说,设备模型的理解是根本,毫不夸张得说,理解了设备模型,再去看转载 2012-09-06 10:28:00 · 1762 阅读 · 0 评论 -
详解Linux2.6内核中基于platform机制的驱动模型
http://blog.csdn.net/zhengmeifu/article/details/6124558【摘要】本文以Linux 2.6.25 内核为例,分析了基于platform总线的驱动模型。首先介绍了Platform总线的基本概念,接着介绍了platform device和platform driver的定义和加载过程,分析了其与基类device 和driver的派生关系及转载 2012-07-16 19:32:14 · 841 阅读 · 0 评论 -
Linux中的宏
linux下 container_of()宏的简要解析ARRAY_SIZE 宏还是比较有意思的,其实是个c 的编程技巧,这个技巧很有用哦!可以在include/linux/kernel.h 中找到它的定义:#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))该宏可以方便的求出一个数组中有多少数据成员,这在很多情况下是很有用转载 2012-07-10 19:53:34 · 2664 阅读 · 0 评论 -
DEVICE_ATTR 和 sysfs 的东西 -- sysfs_create_group
说道sysfs接口,就不得不提到函数宏 DEVICE_ATTR原型是#define DEVICE_ATTR(_name, _mode, _show, _store) struct device_attribute dev_attr_##_name = __ATTR(_name, _mode, _show, _store)函数宏DEVICE_ATTR内封装的是__ATTR(_name转载 2012-05-24 13:27:41 · 11764 阅读 · 4 评论 -
linux设备和驱动加载的先后顺序
Linux驱动先注册总线,总线上可以先挂device,也可以先挂driver,那么究竟怎么控制先后的顺序呢。Linux系统使用两种方式去加载系统中的模块:动态和静态。 1 系统初始化调用函数集分析(静态)1.1 函数定义 在linux内核代码里,运用了subsys_initcall来进行各种子系统的初始化,具体怎么初始化的呢?其实并不复杂。以2.6.29内核作为例子。在下就能转载 2013-04-15 14:29:50 · 1711 阅读 · 0 评论