- 博客(27)
- 资源 (801)
- 收藏
- 关注
原创 Linux系统平台下关于GCC编译及使用的方法(-Werror,它要求GCC将所有的警告当成错误进行处理 )
Linux系统平台下关于GCC编译及使用的方法 编译: 第一步、是进行预编译,使用-E参数可以让GCC在预处理结束后停止编译过程: gcc -E hello.c -o hello.i 预处理的宏定义插入到hello.i中 第二步、是将hello.i编译为目标代码,这可以通过使用-c参数来完成: gcc -c hello.i -o hello.o 也可以通过源文件直接生成 gcc -c hello.c 第三步、是将生成的目标文件链接成可执行文件: gcc hello.o -o hello 也可以通过源文件直
2010-12-26 19:04:00 29798 1
原创 DDR2内存参数设置
<br />DDR2内存参数设置<br />DDR2内存已经成为目前绝大部分用户的标配产品,而如何合理设置DDR2的参数就成为了不少用户(尤其是菜鸟用户)的最想了解的地方。当你超频的时候,如何平衡内存频率和参数之间的关系;究竟如何合理选取内存频率,什么参数才是带来最高性能呢?相信这些问题是目前最多用户最想了解。<br /> 其实要了解这些东西,首先要明白DDR2内存在BIOS中的参数设置情况。因为要提高系统整体性能,并不只是简单超频CPU外频,调高内存频率这么简单,将一大堆数字合理地分配和组合才是最为重要
2010-12-25 23:38:00 6452
原创 Android刷机原理之recovery内部工作原理
<br />现在Android版本更新太快,2.1是最普遍的版本,不过马上都开始升级2.2版本了,目前网路上提供了很多自制作的andorid ROM,通过刷机工具进行刷机,最普遍的是利用android的recovery机制进行update,现将recovery的<br />内部工作原理摘录如下 <br />/*<br /> * The recovery tool communicates with the main system through /cache files.<br /> * /cache/
2010-12-25 01:58:00 6075
原创 android恢复出厂设置以及系统升级流程
<br />恢复出厂设置流程概括: <br />一. 设置模块中进行恢复出厂设置操作,系统一共做了两件事: <br />1. 往 /cache/recovery/command 文件中写入命令字段: <br />2. 重启系统 <br />二. 重启系统会必须进入 recovery 模式 <br />进入 recovery 模式的几种方式 <br />1. 通过读取 /cache 分区中文件 /cache/recovery/command 内容进入 <br />2. 通过按键操作进入 (G1 通过同时按
2010-12-24 01:43:00 2822
转载 android平台刷机包的制作研究
【转】android平台刷机包的制作研究 1~2(研究2.2rom用到的知识)最近有朋友问偶如何制作android平台的刷机包的问题。总算说服自己研究一下如何制作一个android平台的刷机包,可能我了解的方法还不是很全面,也走了不少的弯路,但是以此做为一串探索的足迹,希望能为来者节约宝贵的时间,也请对此感兴趣的各位同仁尽量避免偶曾经犯过的错误。<br /><br />在此先要明确声明一下:<br />由于android平台的更新换代过于频繁,偶的做法不一定好用,也不一定完全正确(只是记录一下偶在自己的ne
2010-12-24 01:18:00 2824 1
转载 关于boot.img和recovery.img的编辑和修改
<br />以下是偶翻译的关于boot.img和recovery.img的编辑和修改方面的文章,希望能够为感兴趣的朋友节约一些看资料的时间。感谢本文的作者:Alansj, DarkriftX, RyeBrye, Will, Try OP9, Tonyb486, Timmmm, Lxrose还有好多不知名的作者们在wiki上的不懈努力。<br /><br />如何解包/编辑/大包boot.img文件<br /><br />很多人用自己的方式解决了boot.img的解包/编辑/打包的问题,有人要求我来写一篇关于
2010-12-24 01:16:00 42631 1
原创 gpio 的配置
arm的gpio可以配置输入,输出,特殊功能(比如串口,mmc),使用前一定要配置,否则状态不确定。GPIO引脚是一个连接的端子,通过软件配置设置多路选择器选择到GPIO的输入还是输出还是特殊功能的控制器。设置为GPIO功能,可以选择输入功能或者输出功能。设置为GPIO的输入功能后,还可以配置为上拉还是下拉功能,上拉还是下拉的电阻大小选择比如,2MA,4MA,8MA,16MA设置为
2010-12-23 23:25:00 5452 5
原创 SD操作
<br />SD操作学习笔记<br />SD卡操作一、 概述1、简介<br />SD卡是基于flash的存储卡。<br />SD卡和MMC卡的区别在于初始化过程不同。<br />SD卡的通信协议包括SD和SPI两类。<br />SD卡使用卡内智能控制模块进行FLASH操作控制,包括协议、安全算法、数据存取、ECC算法、缺陷处理和分析、电源管理、时钟管理。<br />2、功能介绍2.1 特点<br />1) 主机无关的FLASH内存擦除和编程<br />读或写数据,主机只要发送一个带地
2010-12-23 01:16:00 1473
原创 linux sd卡驱动分析,基于mini2440,sdio mmc sd卡驱动
linux sd卡驱动分析,基于mini2440,sdio mmc sd卡驱动<br />1. 硬件基础:<br />SD/MMC/SDIO 概念区分概要<br />SD (Secure Digital )与 MMC (Multimedia Card )<br />SD 是一种 flash memory card 的标准,也就是一般常见的 SD 记忆卡,而 MMC 则是较早的一种记忆卡标准,目前已经被 SD 标准所取代。<br />SDIO 是目前我们比较关心的技术,SDIO 故名思义,就是 SD 的 I/
2010-12-22 23:39:00 3078
原创 Linux MMC/SD/SDIO体系结构
Linux MMC/SD/SDIO体系结构有关MMC/SD/SDIO相关的知识这里就不多讲了,请参考相关资料。这里主要涉及Linux下MMC相关内容。内核版本(2.6.36)首先说一下Linux相关MMC的代码分布,主要有两个目录,一个头文件目录和一个源代码目录。分别位置如下:include/linux/mmcdrivers/mmc要阅读MMC相关代码就必须要看这两个目录。在drivers/mmc目录下分别有三个子目录,其将对应接下来要讲的MMC的体系结构。这三个子目录分别为:
2010-12-22 22:59:00 2806 1
原创 Linux驱动设备驱动模型
<br />Linux驱动设备驱动模型<br /><br />序言<br />从这一章开始,我们将详细的介绍Linux的设备驱动模型。Linux设备驱动模型是一个相当复杂的系统,对于初学者来说真有些无从入手。而且更加困难的是,随着新的Linux Kernel的release,Linux的设备驱动模型总会有或大或小的变化,我们将尽量展现 Linux Kernel 的这种变化。<br /><br />早期的Linux内核(版本2.4之前)并没有实现一个统一的设备模型,设备节点的创建一般是mknod命令手动创建或
2010-12-17 01:03:00 3976
原创 androidLCD和键盘 背光亮度设置
<br /> 亮度设置<br /> 应用设计<br />1.1 设置进度条范围<br />背光设置是在:设置->声音和显示->亮度,通过进度条来设置的。<br />文件:packages/apps/Settings/src/com/android/settings/BrightnessPreference.java<br />private static final int MINIMUM_BACKLIGHT = android.os.Power.BRIGHTNESS_DIM + 10;<br />priv
2010-12-17 00:33:00 8616 4
原创 android 静音与振动
<br />android 静音与振动<br />1,设置静音和振动<br />静音和振动都属于来电后的动作.所以在设置静音和振动时都只是设置一些标识,并往数据库写入相应标识.<br />文件:packages/apps/settings/src/com/android/settings/SoundAndDisplaySettings.java<br />private CheckBoxPreference mSilent;<br />private CheckBoxPreference mVibrate;
2010-12-16 23:02:00 16360 6
原创 bash shell 常用快捷键
bash shell 常用快捷键 CTRL 键相关的快捷键: Ctrl + a - Jump to the start of the line Ctrl + e - Jump to the end of the line Ctrl + f - Move forward a char Ctrl + b - Move back a char Ctrl + c - Terminate the command //用的最多了吧? Ctrl + d - Delete from under the cursor Ctr
2010-12-15 01:13:00 1137
原创 patch 用法
<br />patch 用法 <br />因为在u-boot移植过程中,有几处通用文件要修改,如果每次都要手动修改就太麻烦了。制作补丁可以解决这个问题。<br />学习资料的收集比较简单,方法一类似于这种初级问题网上资料非常丰富,google或者baidu搜索一下,然后选择有价值的资料,方法二是阅读man在线文档。完成收集工作,当然最终要在自己的Linux上作实验,比较总结,消化吸收为自己的东西。要除去这么一种错误思想:一定要学全。要知道,一次学全是不可能的,只能先学习最为常用的,在以后不断实践的过程中逐步
2010-12-15 01:07:00 2172
原创 linux proc接口
linux proc接口的建立与使用 /proc 文件系统是一个虚拟文件系统,通过它可以使用一种新的方法在 Linux® 内核空间和用户空间之间进行通信。在 /proc 文件系统中,我们可以将对虚拟文件的读写作为与内核中实体进行通信的一种手段,但是与普通文件不同的是,这些虚拟文件的内容都是动态创建的。 /proc 文件系统是为了提供有关系统中进程的信息。但是由于这个文件系统非常有用,因此内核中的很多元素也开始使用它来报告信息,或启用动态运行时配置。/proc 文件系统包含了一些目录(用作组织信息的方式)和虚
2010-12-15 00:22:00 7915
原创 输入设备驱动
输入设备驱动输入设备(如按键、键盘、触摸屏、鼠标等)是典型的字符设备,其一般的工作机理是底层在按键、触摸等动作发送时产生一个中断(或驱动通过timer 定时查询),然后CPU通过SPI、I2 C或外部存储器总线读取键值、坐标等数据,放入1个缓冲区,字符设备驱动管理该缓冲区,而驱动的read()接口让用户可以读取键值、坐标等数据。2 {3 .gpio = S3C64XX_GPN(0),4 .code = KEY_DOWN,5 .desc = "Down",6 .active_low = 1,7 },8 {9
2010-12-14 23:08:00 2404 1
原创 Android的传感器编程小结
Android的传感器编程小结<br /> <br /> <br />传感器编程中,<br />1. Accelrator的x,y,z轴的正负向:<br /> 手机屏幕向上水平放置时: (x,y,z) = (0, 0, -10) 而不是 (0, 0, 10)<br /> 当手机顶部抬起时: y减小,且为负值<br /> 当手机底部抬起时: y增加,且为正值<br /> 当手机右侧抬起时: x减小,且为负值<br /> 当手机左侧抬起时: x增加,且为正值<br />2. Accel
2010-12-12 12:07:00 1444
原创 Android中G-Sensor相关流程
<br />Android中G-Sensor相关流程 1.使G-sensor正常工作需要做的事:<br /><br />G-sensor driver文件包括:<br /><br />driver/i2c/chips/lis331dl.c<br />driver/i2c/chips/sensorioctl.h<br />include/linux/lis331dl.h<br /><br />并在/kernel/arch/arm/mach-s3c6410/mach-ur6410.c文件中i2c chanel1
2010-12-12 11:55:00 2524
原创 等待队列
<br />等待队列 <br />定义:<br />view plaincopy to clipboardprint?<br />include/linux/wait.h <br />struct __wait_queue_head { <br />spinlock_t lock; <br />struct list_head task_list; <br />}; <br />typedef struct __wait_queue_head wait_queue_head_t
2010-12-10 23:49:00 1134
原创 信号量与自旋锁
信号量和自旋锁内核同步措施 为了避免并发,防止竞争。内核提供了一组同步方法来提供对共享数据的保护。 我们的重点不是介绍这些方法的详细用法,而是强调为什么使用这些方法和它们之间的差别。 Linux 使用的同步机制可以说从2.0到2.6以来不断发展完善。从最初的原子操作,到后来的信号量,从大内核锁到今天的自旋锁。这些同步机制的发展伴随 Linux从单处理器到对称多处理器的过度;伴随着从非抢占内核到抢占内核的过度。锁机制越来越有效,也越来越复杂。 目前来说内核中原子操作多用来做计数使用,其它情况
2010-12-10 23:03:00 1129
原创 RTC 时间设置
<br /> MMI<br /> |<br /> |<br /> alarm.c----alarm_ioctl(struct file *file, unsigned int cmd, unsigned long arg)--case ANDROID_ALARM_SET_RTC:<br /> |<br /> |<br /> interfac
2010-12-10 02:12:00 13939
原创 Linux内核的配置系统
<br />Linux内核的配置系统由三个部分组成,分别是:<br />Makefile:分布在 Linux 内核源代码中的 Makefile,定义 Linux 内核的编译规则; <br />配置文件(config.in):给用户提供配置选择的功能; <br />配置工具:包括配置命令解释器(对配置脚本中使用的配置命令进行解释)和配置用户界面(提供基于字符界面、基于 Ncurses 图形界面以及基于 Xwindows 图形界面的用户配置界面,各自对应于 Make config、Make menucon
2010-12-09 23:51:00 1213
原创 键盘驱动的原理
键盘驱动的设置1,一般要初始化矩阵键盘的行数和列数,设置矩阵的扫描驱动线的开始gpio,设置矩阵的扫描输入线的开始gpio,利用循环分别对每个扫描驱动线的gpio初始化为输出脚,利用循环分别对每个扫描输入线的gpio初始化为输入脚。2, 在模块加载函数中注册输入设备。注册输入设备的函数为:int input_register_device(struct input_dev *dev);3,在probe函数申请一个输入设备,告知input子系统它可以报告的事件。设备驱动通过set_bit()告诉input子系
2010-12-08 23:45:00 3465
原创 Linux输入子系统
Linux输入子系统按键与触摸屏的设备驱动,在Linux系统中实现这类设备驱动的方法是利用input子系统。Linux系统提供了input子系统,按键、触摸屏、键盘、鼠标等输入都可以利用input接口函数来实现设备驱动,按键和触摸屏设备驱动都可以作为input设备驱动而实现。在Linux内核中,input设备用input_dev结构体描述,使用input子系统实现输入设备驱动的时候,驱动的核心工作是向系统报告按键、触摸屏、键盘、鼠标等输入事件(event,通过input_event结构体描述),不再需要关心
2010-12-08 23:09:00 3373 2
原创 LINUX LED驱动
LINUX LED驱动向用户空间提供/sys/class/leds/keyboard-backlight和/sys/class/leds/lcd-backlight接口1,在/sys/class目录创建leds子目录static int __init leds_init(void){ leds_class = class_create(THIS_MODULE, "leds"); if (IS_ERR(leds_class)) return PTR_ERR(leds_class); leds_class->
2010-12-08 01:53:00 3153
jdk-1_5_0_19-linux-i586.bin for linux
2014-12-30
utraedit-32 16.20
2012-10-31
How to use CPU frequency scaling
2012-05-16
Easy CD-DA Extractor
2012-05-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人