自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

随风

无声又无息,留在回忆里!

  • 博客(46)
  • 资源 (9)
  • 收藏
  • 关注

原创 深入linux设备驱动程序内核机制(第十章) 读书笔记

第十章 内存映射与DMA      本文欢迎转载, 请标明出处      本文出处http://blog.csdn.net/dyron    本章讨论驱动如何实现内存映射和进行DMA操作, 内存映射的任务是将设备的地址空间映射到用户空间或直接    使用用户空间的地址, 这样做的目的显然是从提升系统性能的角度出发. 10.1 设备缓存与设备内存    设

2013-06-20 09:22:14 5985 4

原创 深入linux设备驱动程序内核机制(第九章) 读书笔记

第9章 linux设备驱动模型       本文欢迎转载, 请标明出处       本文出处: http://blog.csdn.net/dyron9.1 sysfs文件系统        sysfs文件系统可以取代ioctl的功能.     sysfs文件系统的初始化发生在linux系统的启动阶段: int __init sysfs_init(voi

2013-06-19 09:48:35 2152 1

原创 深入linux设备驱动程序内核机制(第八章) 读书笔记

第八章 时间管理    驱动对时间进行操作, 典型的可以分为两大类:延时与定时. 前者是两个连续的动作A与B之间插入一段时间空    白, 即在A执行后需要等待若干时间才能执行B, 这段时间空白内, 处理哭也许是进入忙等待, 也许是切换到一    个新进程上. 后者是在一个指定的时间点到后执行某此动作, 轮询是最典型的应用.     欢迎转载本文, 请标明出处     本文

2013-06-18 09:07:08 1895

原创 深入linux设备驱动程序内核机制(第七章) 读书笔记

第七章 设备文件的高级操作      本文欢迎转载, 请标明出处.       本文出处:http://blog.csdn.net/dyron7.1 ioctl文件操作    7.1.1 ioctl的系统调用    用户空间ioctl的原型为: int ioctl(int fd, int request, ...);    驱动空间ioctl的原

2013-06-17 09:10:46 3734

原创 深入linux设备驱动程序内核机制(第六章) 读书笔记

第六章 延迟操作    tasklet需要在中断上下文中执行, 所以有些延尽操作无法用它来完成, 为此内核又提供了一个期于进程的延    迟操作实现机制, 工作队列workqueue.本文欢迎转载本文出处:http://blog.csdn.net/dyron6.1 tasklet    tasklet是内核定义的几种softirq之一, 中断处理例程

2013-06-14 09:31:27 2264

原创 深入linux设备驱动程序内核机制(第五章) 读书笔记

第5章 中断处理    外设与处理器交互的手段分为两种:轮询和中断. 对于轮询, 处理器不停的查询外设状态. 而中断, 在外设满    足处处理器要求时, 主动发送信号给处理器.本文欢迎转载出处:http://blog.csdn.net/dyron5.1 中断的硬件框架    处理器一般只有两根左右的中断pin, 而外设很多, 为解决这个问题, 设备的中

2013-06-13 09:36:48 2465 1

原创 深入linux设备驱动程序内核机制(第四章) 读书笔记

第四章 互斥与同步    本文欢迎大家转载    原文出自: http://blog.csdn.net/dyron4.1 并发的来源    并发, 是指可能导致对共享资源的访问出现竞争状态的若干执行路径, 不一定是指严格的时间意义上的并发执行    linux系统下并发的来源主要有:    . 中断处理路径    当系统正在执行当前进程时, 发生中断,

2013-06-09 08:56:04 2853

原创 深入linux设备驱动程序内核机制(第三章) 读书笔记

第三章 分配内存    内存的管理总体上可以分为两大类:一是对物理内存的管理, 二是对虚拟内存的管理. 前者是用于特定的平台    构架上实际物理内存空间管理, 后者用于特定处理器体系架构上虚拟地址空间的管理.本文欢迎转载本文出处:blog.csdn.net/dyron3.1 物理内存的管理    物理内存定义方面, 内存节点, 内存区域和内存页. 对物

2013-06-07 09:32:16 2351

原创 深入linux设备驱动程序内核机制(第二章) 读书笔记

第二章    字符设备驱动程序本文 欢迎转载, 原文地址: blog.csdn.net/dyron    内核为了简化设备驱动程序员的工作, 从各异的设备中提取出了共性的特征, 将其化分为三大类: 字符设备    ,块设备,网络设备。内核针对每一类设备都提供了驱动模型框架。2.1 应用程序与设备驱动程序互动实例    书上实现了一个调用设备驱动程序的实例, 包括

2013-06-06 09:33:43 2736

原创 深入linux设备驱动程序内核机制(第一章) 读书笔记

第一章  内核模块1.1 内核模块的文件模式   本文 欢迎转载, 原文地址: blog.csdn.net/dyron    . 内核模块都是ko形式存在的, 类似于动态库的so, 数据组织形式上是elf(Executable and      Linkable Format)格式, 是一种普通的可重定位的目标文件。    . elf模式中,我们关心头部的elf

2013-06-04 15:24:04 4090 2

原创 C程序员转JAVA要点

1. char c 可以存一个中文字符2. 如果你已经增加了一个有参的构造函数, 编译器将不会再增加无参的构造函数。需要注意此时new 时要加参数。3. this 代表调用函数的这个对象。 一般情况可以被省略,如果方法的参数与成员变量同名,则this不可以被省略。4. this 可以在一个构造函数中调用另外一个构造函数, this等于调用本类当中的另一个构造函数。 this(addr,

2013-03-17 21:49:42 1128

转载 嵌入式程序员应知道的0x10个基本问题

嵌入式程序员应知道的0x10个基本问题1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1) #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)2)懂得预处理器将为你计算常数表达式的值,因此,直接写出你是

2013-03-01 17:40:43 637

转载 C指针声明解读之左右法则

C指针声明解读之左右法则        C语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是相反的。右左法则的英文原文是这样说的:         Th

2013-03-01 17:39:16 606

原创 vim配置+cscope +ctags + taglist

set softtabstop=4                                                                                                       set shiftwidth=4

2013-03-01 17:07:53 636

原创 ubuntu12.04 下android编译环境自动安装脚本及资源

ubuntu12.04 下android编译环境自动安装脚本及资源

2013-01-06 09:03:31 833

原创 搭建distcc 分布式编译脚本

sudo apt-get install distccapt-get install distccmon-gnomevi ~/.profile =>       add "/usr/local/arm-linux-androideabi-4.4.x/bin" to PATHsudo vi /etc/default/distcc =>       STARTDISTCC="tru

2012-12-24 17:31:57 1302

转载 杂音 & pop 音的解决方法

杂音 & pop 音的解决方法1. 喇叭有严重的“吱吱”破音,绝大多数的原因有可能在于V(out)电压不稳定,所以最好测一下无负载时的输出电压。同时也可以测量 VCC –即boost 的输出/输入电压。正常的VCC   可以通过客户的 反馈电阻和 VCC负载电阻求得。2、客户有杂音:估计是信号的干扰,一般是电源的干扰因素占最大的比重,建议测量静态电流 IQ  。3、POP

2012-11-08 13:53:53 14898

原创 linux 3.0.8 alsa数据流程分析

ALSA打开数据流程     soc_pcm_open => cpu_dai->driver->ops->startup => platform->driver->ops->open => codec_dai->driver->ops->startup \    => rtd->dai_link->ops->startup       ALSA的HW_param流程     s

2012-11-06 19:44:38 2456

原创 linux 3.0.8 camera 驱动分析

留用:  注册v4l2_device, 初始化isp, 注册i2c, 注册video_device, 初始化video_subdevices.镜头=>传感器=>AMP放大=>ADC=>ISP=> MIPI||DVP =>DDR =>MMAP =>user space

2012-10-25 16:32:41 1126

原创 手动从动态库中加载函数接口

#include #include #include int main(int argc, char *argv[]){ int ret = 0; void *function; char *pzerror; char name[20] = {0}; char soname[20] = {0}; void (*test)(int, int); while ((ret

2012-06-28 16:00:18 1104 1

转载 [转]手工释放linux内存——/proc/sys/vm/drop_caches

总有很多朋友对于Linux的内存管理有疑问,之前一篇[转]理解Linux的性能日志似乎也没能清除大家的疑虑。而在新版核心中,似乎对这个问题提供了新的解决方法,特转出来给大家参考一下。最后,还附上我对这方法的意见,欢迎各位一同讨论。     当在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching。这个问题,貌似有不少人在问,不过都没

2012-02-14 10:24:00 606

原创 ubuntu下自动配置android环境脚本

#!/bin/bash#auto isntall android development envsudo add-apt-repository "deb http://mirrors.163.com/ubuntu hardy main multiverse"sudo add-apt-repository "deb http://mirrors.163.com/ubuntu hardy-upd

2011-12-16 11:13:18 959

原创 LinuxI2C总线驱动深入分析

LinuxI2C总线驱动深入分析Kernel版本:2.6.32平台: mips  本文目的: 在工作闲暇之余,写点东西,留个念想,也证明一下自己曾经年轻过,主要的内容以I2C总线注册,设备注册,驱动注册为主线,介绍了详细的注册过程及I2C传输数据的过程。欢迎大家来探讨这些技术细节,mall:http://blog.csdn.net/dyron I2C 总线及device

2011-12-12 16:35:13 3485

原创 驱动程序中的时间消耗计算

驱动程序中的时间消耗计算 我们在驱动程序调试中,经常需要测试两个点的运行时间,来判断驱动中哪里占用了过多的时间,特别是在一些特殊的keyboard驱动中。 作者: http://blog.csdn.net/dyron欢迎大家在此讨论相关内容。         在计算消耗时间的时候,一般需要注意以下几点:1.      计算时间时,最好不要在打印时间点,因为串口打印会占用大量

2011-12-09 13:10:49 1150

转载 EXT3与EXT4的主要区别

鉴于大家可能对为什么要在Data2SD的时候费半天劲选择EXT4,而不是选择较容易实现的EXT3,我找了一下资料,对技术感兴趣的TX可以参考,对于不是技术狂热分子的人士们,可以绕道。哈哈哈哈~~~~Ext4,Ext3的特点和区别            今天,有个后辈问我Ext4的优点,一下子不知道该怎么说,以前只知道Ext4启动快点,对文件恢复和碎片整理好一点。但具体怎样,怎没研究过。就顺

2011-12-07 14:00:10 688

原创 电流的产生和电能的转换

电能的产生与电能的转换 首先理解发电机的原理,举例火力发电, 通过煤在发电锅炉中燃烧,加热补给水,在过热器中加热成高温高压的过热蒸汽,过热蒸汽进入带动汽轮机高速旋转,汽轮机带动发电机一起旋转,发电机通过高速旋转不停的切割磁感线, 产生电力,这样就消耗了机械能转换出了电能。 切割磁感线原理, 当一根导体棒做切割磁感线运动时,那根导体棒上的电子会向某一端运动,这端的电动势就会减小,相反

2011-11-17 14:21:19 1215

原创 关于无名结构体的见解

struct T1 { char a; char b; struct { char a; };};struct T1 { char a; char b; struct T2 { char a; };};struct T3 { char a; char b; stru

2011-11-09 13:08:34 2757 2

原创 wifi批量安装及自动化测试脚本

wifi的连接测试脚本#!/bin/bashcnt=0echo $cntbusybox cp /system/etc/wifi/wpa_supplicant.conf /data/misc/wifi/insmod /system/lib/wifi/modules/8192cu.kobusybox ifconfig wlan0 up/system/bin/

2011-11-08 14:23:43 3833

原创 Linux audio(OSS)子系统分析

Linux audio(OSS)子系统分析简介         在linux声卡的驱动中存在两种架构,一种是OSS(开放声音系统),一种是ALSA(先进Linux声音架构)。OSS是一个商业声卡驱动程序,需要花钱购买。一般我们现在使用的是ALSA的声音架构。 但是有些厂商提供了OSS架构的代码,一时让我无从下手,我就遇到了这样的问题,故在此留下自己分析的过程,难免有疏漏,欢迎大

2011-10-14 17:50:09 5317

原创 bootloader(xboot)起动流程分析

1.   引言      本文先引用一段《Boot Loader 技术内幕》中的一段话来简介bootloader基本概念,再通过xboot的实例分析来分析xboot接口。作者: http://blog.csdn.net/dyron欢迎大家来讨论相关内容。2.  BootLoader 的概念      简单地说,Boot Loader 就是在操作系统内核运行之前运行的一段小程序。

2011-10-14 11:10:23 8900 7

原创 linux+audio(OSS)驱动的读写buff分析(jz4760B)

ADUIO OSS 的buff 分析接上文的OSS驱动分析,现在分析OSS中的播放与录音缓冲, 作者: http://blog.csdn.net/dyron,欢迎大家来讨论统一术语1.      JZ                                            君正4760b mips2.      Audio buff

2011-10-13 15:35:55 2850

原创 选择排序的c实现代码

#includestdio.h>int sort(int arr[],int n){ int i, j,min, t; for (i = 0; i n-1; i++) {  min = i;  for (j = i + 1; j n; j

2011-10-12 15:43:07 740 2

原创 GNU工具链简介(全)

Mips GNU工具链简介  1 . 总括          本文分三部分来介绍mips的工具链,首先工具链的总括,其次是每个工具链的简介,最后是各工具链的实际应用举例。我们的项目使用的工具链就如图1所示,声明,本文所述的内容实乃GNU工具链的九牛之一毛, 日后会陆续更新。  http://blog.csdn.net/dyron

2011-10-12 14:51:04 6653 2

原创 在使用svn的时候禁用svn保存密码功能

-N   [--non-recursive]           :   只在单个目录操作     -q   [--quiet]                           :   打印尽可能少     --diff3-cmd   参数

2011-10-12 14:50:24 1271

原创 君正4760B的linux audio(OSS)驱动分析

君正4760B的audio(OSS) 驱动分析    君正的audio驱动使用了传统的OSS模式, 真是BT,大家都在用ALSA,他还用OSS, 在网上详细资料甚少,在这里记录一下自己的过程,希望有人能够用到。 文章作者: http://blog.csdn.net/dyron, 文章不断完善中....系统环境: CPUJz4760bDai

2011-10-12 14:49:54 5356

原创 linux audio(alsa) 驱动注册的简明流程.

本文以max98088为参照设备进行。我自己也在学习audio, 本着多多交流,相互进步的原则写下流程,欢迎大家来拍砖, 学习中有不正确的地方还请指出来。大体结构: cpu_dai-------指的是I2C通路.codec_dai-----codec的

2011-10-12 14:48:21 4680

原创 wireless流程简明分析

一, 注册流程 1. 首先注册SDIO卡,进行一些初始化。  2. 进入sdio的probe, 里边调用wlan_add_card()接口。 3. 在这里创建了两个主要的线程  1. wlan_service_main_thread    主要的IO处理  2

2011-10-12 14:47:47 2036

原创 优化的冒泡排序C代码

#includestdio.h>void bsort(char*arr, int len){    int i, j, k, t, cnt= 0;;    for(i = len - 1; i> 0; i = k) {

2011-10-12 14:45:46 681

原创 framebuff操作程序

/* * Usage: * */#include unistd.h>#include sys/mman.h>#include stdio.h>#include stdlib.h>#include string.h>#incl

2011-10-12 14:44:23 2321

原创 linux内核层与应用层通讯方法

最近因工作需要,计划完成一个内核检测程序。       查找内核与用户态的通讯方法,主要方法有socket,信号,brk等。 由于信号与brk只可以与本机通讯,不适合做远程调试程序,故选择socket方法实现。     在内核态实现socket通讯的方法有三种,n

2011-10-12 14:43:24 10953

Linux的SD卡驱动程序的设计与实现

基于linux系统的SD卡驱动详细设计, 给穷人兄弟们.

2009-09-03

SD 卡规范1.0(中文版)

SD卡规范1.0的中文版本, 里边有详细的SD卡协议描述, 下载吧

2009-07-20

Gtk与 Directfb的移植全过程

移植全过程, 保证可用. 下载来试用一下吧.

2008-11-04

数字电路精华部分

提取了数字电路的精华部分,让学嵌入式的朋友,快速学会数电,看懂时序图。

2008-04-09

李家同教授的英语语法大全

这是专为国人打造的语法宝典.学英语的人应该学习学习

2007-12-12

PCI-E2.0 的datasheet

这个版本好不容易搞到的,大家下来看看吧,写驱动的好东东哦

2007-12-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除