
Linux Driver(Android)
文章平均质量分 56
wchinaw
这个作者很懒,什么都没留下…
展开
-
重温Linux Driver基础之Hello World
<br />Linux驱动手动加载 insmod 手动卸载 rmmod<br />测试环境 Fedora10<br /> <br />Linux设备驱动第三版:<br /> <br />/*********************************************/<br />hello.c<br /> <br />#include <linux/init.h><br />#include <linux/module.h><br />MODULE_LICENSE("Dual BSD/GPL")原创 2011-03-28 17:15:00 · 643 阅读 · 0 评论 -
GCC安装与编译
首先在配置gcc的过程中会出现错误:gcc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+说明要安装gcc需要GMP、MPFR、MPC这三个库,可从ftp://gcc.gnu.org/pub/gcc/infrastructure/下载相应的压缩包。由于MPFR依赖GMP,而MPC依赖GMP转载 2012-01-10 14:39:40 · 3913 阅读 · 0 评论 -
Android 源码下载遇到 403错误 的解决办法
用repo进行源码下载时遇到一个问题:./repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1fatal: https://gerrit.googlesource.com/git-repo/info/refs download error - The requested U原创 2012-07-11 13:40:54 · 4966 阅读 · 0 评论 -
ubuntu 12.04 install flash
How to install flash for firefox in ubuntu 12.04?step1. download tar.gz package from adobe flash download site.step2. unzip tar.gz package.step3. copy libflashplayer.so library to /usr/lib/f原创 2012-11-29 19:54:58 · 1219 阅读 · 0 评论 -
Android源码编译环境建立
1. sudo apt-get install eclipse 用于导入android源码工程和应用程序开发。原创 2013-05-08 14:32:08 · 1012 阅读 · 0 评论 -
android-4.0.4_r1.1 编译SDK时错误的解决办法
Module 'Gallery' in PRODUCT_PACKAGES has nothing to install!. Stop.解决办法 :build/target/sdk.mk 将 Gallery 删除即可。原创 2013-07-31 16:53:54 · 1790 阅读 · 0 评论 -
Gerrit简易安装入门
简介Gerrit 是一个基于 Web 的代码评审和项目管理的工具,面向基于 Git 版本控制系统的项目.官网背景下载文档 下文以gerrit-2.1.7-rc1在Ubuntu10.04上的安装为例:创建Gerrit用户(可选)$ sudo adduser gerrit2$ sudo su gerrit2$ cd ~gerrit2安装Gerrit下载ger转载 2013-08-02 10:42:23 · 1665 阅读 · 0 评论 -
Gerrit安装
参考了转载的一篇文章。自己同时也遇到一些问题。终于安装成功。http://my.oschina.net/zhongl/blog/33017在启动apache2之前,需要运行命令: 否则出现解析 httpd.conf出现错误的情况。a2enmod proxy_http 启动apache2 sudo /etc/init.d/apache2 start在gerri原创 2013-08-02 13:27:09 · 1403 阅读 · 0 评论 -
less 命令
less 命令:显示文件时允许用户既可以向前又可以向后翻阅文件less 命令和more命令功能相似,显示文件时允许用户既可以向前又可以向后翻阅文件。可以按pageup键向前翻,按pagedown键向后翻,要退出则按q键。less命令格式为:less [选项] 文件名 less命令的常用选项及其说明见表6.25。表6.25 less命令选项及其说明选转载 2011-11-11 13:28:45 · 1209 阅读 · 0 评论 -
Android CTS 测试
Android的CTS测试,英文为Compatibility Test Suite,意为兼容性测试。只有通过CTS测试的设备才有可能获得Android的商标和享受Android Market的权限。以下分享我对Android CTS的认识。一、取得Compatibility转载 2011-10-08 10:31:46 · 589 阅读 · 0 评论 -
splint安装与配置
<br />splint安装与配置<br /> <br /> 一.splint是免费的,可以从http://www.splint.org/download.html下载。 二.下面以在windows上为例,说明其安装过程 1.首先解压。如果解压到C:/splint-3.1.1则不用调整环境变量。可执行文件在bin下。 如果放到其它路径下,需要修改环境变量。在用户变量中加上 LARCH_PATH - <你安装splint的路径>/lib LCLIMPORTDIR - <你安装splint的路径>/im转载 2011-04-18 14:40:00 · 6562 阅读 · 0 评论 -
Linux Driver 基本架构
<br />驱动程序在整个系统中的位置:<br />应用程序->操作系统API->驱动中独立于设备的接口->驱动中硬件操作->硬件。<br /> <br />Linux将存储器和外设分为3个基础类型:<br />1.字符设备 必须以串行顺序依次访问 如触摸屏,鼠标,LCD驱动 使用文件系统操作接口访问:open(),close(),read(),write()...<br />2.块设备 可以用任意顺序进行访问,以块为单位操作,如硬盘。<br />3.网络设备 面向数据包的接收和发送,并不对应于文件系统的原创 2011-03-29 16:38:00 · 922 阅读 · 0 评论 -
Linux kernel
<br />Linux kernel主要由进程调度,内存管理,虚拟文件系统,网络接口和进程间通信等5个系统构成。<br /> <br />进程调度:<br /> 设备驱动中,当请求的资源得不到满足,一般会调度其他进程执行,并使驱动对应的进程进入睡眠状态,直到其请求的资源被释放才被唤醒而进入就绪状态。睡眠分为可被打断的和不可被打断的睡眠。可被打断的睡眠在收到信号的时候会醒来。<br /> <br />内存管理:<br /> CPU提供MMU(内存管理单元)时,Linux内存管理完成每个进程虚拟内存到物理内原创 2011-03-29 16:48:00 · 725 阅读 · 0 评论 -
内核模块与应用程序之区别
<br />事件驱动的编程, 但是虽然不是所有的应用程序都是事件驱动的, 每个内核模块都是。<br />一个终止的应用程序可以在释放资源方面懒惰, 或者完全不做清理工作, 但是模块的退出函数必须小心恢复每个由初始化函数建立的东西, 否则会保留一些东西直到系统重启.<br />每一个环境是如何处理错误: 在应用程序开发中段错误是无害的, 一个调试器常常用来追踪错误到源码中的问题, 而一个内核错误至少会杀掉当前进程, 如果不终止整个系统.<br />A module runs in kernel space,原创 2011-03-30 09:53:00 · 2174 阅读 · 0 评论 -
Linux CodingStyle
<br /><br /> Linux kernel coding style<br />This is a short document describing the preferred coding style for the<br />linux kernel. Coding style is very personal, and I won't _force_ my<br />views on anybody, but this is what goes for anything that I h原创 2011-04-01 11:26:00 · 1869 阅读 · 1 评论 -
Linux内核经典书籍与资源
《Linux 内核设计与实现》 简称 LKD,从入门开始,介绍了诸如进程管理、系统调用、中断和中断处理程序、内核同步、时间管理、内存管理、地址空间、调试技术等方面,内容比较浅显易懂,个人认为是内核新人首先必读的书籍。新人得有此书,足矣! 《深入理解 Linux 内核》 简称 ULK,相比于 LKD 的内容不够深入、覆盖面不广,ULK 要深入全面得多。 前面这两本,一本提纲挈领,一本全面深入。 《Linux 设备驱动程序》 简称 LDD,驱动开发者都要人手一本了。 《深入理解 Linux 虚拟内存管理》 简称原创 2011-04-01 13:45:00 · 1663 阅读 · 0 评论 -
Linux文件系统
<br />Linux目录结构:<br />根目录"/"<br />/bin 可执行文件目录<br />/boot 内核引导文件:vmlinuz,initrd.img等<br />/dev 设备文件存储目录,应用程序对这些文件读写和控制可访问实际设备<br />/etc 系统配置和一些服务器配置文件的位置,如帐号及密码配置文件。<br />/home 普通用户目录<br />/lib 库文件目录<br />/lost+found Ext2,Ext3文件系统中当系统意外崩溃或意外关机时产生的文件碎片位置<br原创 2011-03-31 10:08:00 · 511 阅读 · 0 评论 -
Linux字符设备驱动结构
<br />Linux字符设备驱动组成:<br />1.字符设备驱动模块加载与卸载函数 加载函数:实现设备号申请和cdev注册 卸载函数:实现设备号释放和cdev注销<br />2.file_operations结构体中的成员函数实现 这些成员函数是字符设备驱动与内核的接口,是用户空间对Linux进行系统调用最终的落实者。如 read(),write(),ioctl().<br /> <br />重要的结构体:<br /> <br />cdev<br /> <br />struct cdev {<b原创 2011-03-31 17:41:00 · 607 阅读 · 0 评论 -
__range_ok 宏定义分析
<br />#define __range_ok(addr,size)({/<br /> unsigned long flag,sum;/<br /> __chk_user_ptr(addr);/<br /> __asm__("adds %1,%2,%3; sbcccs %1,%1,%0;movcc %0,#0"/<br /> :"=&r"(flag),"=&r"(sum)/<br /> :"r"(addr),"Ir"(原创 2011-04-07 17:42:00 · 2796 阅读 · 1 评论 -
ubuntu12.04软件配置
**************************************安装QQ**************************************1.到兼容内核论坛下载deb安装包 http://www.longene.org/forum/viewtopic.php?f=6&t=47002.64位系统安装ia32-libs :sudo apt-get instal原创 2012-12-16 15:38:10 · 3864 阅读 · 0 评论