android
龙图腾
驱动工程师真心喜欢学习真心喜欢技术
展开
-
Android.mk的用法和基础
一个Android.mk file用来向编译系统描述你的源代码。具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次。你可以在每一个Android.mk file中定义一个或多个模块,你也可以在几个模块中使用同一个源代码文件。编译系统为你处理许多细节问题。例如,你不需要在你的Android.mk中列出头文件和依赖文件。NDK编译系统将会为你自动处理这些问题。转载 2012-11-08 19:27:31 · 545 阅读 · 0 评论 -
Android 电源管理 -- wakelock机制
Wake Lock是一种锁的机制, 只要有人拿着这个锁,系统就无法进入休眠, 可以被用户态程序和内核获得. 这个锁可以是有超时的 或者 是没有超时的, 超时的锁会在时间过去以后自动解锁。如果没有锁了或者超时了, 内核就会启动休眠的那套机制来进入休眠.PowerManager.WakeLock 有加锁和解锁两种状态,加锁的方式有两种:第一种是永久的锁住,这样的转载 2014-12-24 19:37:22 · 783 阅读 · 0 评论 -
android 休眠唤醒机制分析(一) — wake_lock
Android的休眠唤醒主要基于wake_lock机制,只要系统中存在任一有效的wake_lock,系统就不能进入深度休眠,但可以进行设备的浅度休眠操作。wake_lock一般在关闭lcd、tp但系统仍然需要正常运行的情况下使用,比如听歌、传输很大的文件等。本文主要分析driver层wake_lock的实现。一、wake_lock 定义和接口[cpp] view转载 2014-12-17 18:11:58 · 2039 阅读 · 0 评论 -
android 休眠唤醒机制分析(三) — suspend
前面我们分析了休眠的第一个阶段即浅度休眠,现在我们继续看休眠的第二个阶段 — 深度休眠。在深度休眠的过程中系统会首先冻结所有可以冻结的进程,然后依次挂起所有设备的电源,挂起顺序与设备注册的顺序相反,这样保证了设备之间电源的依赖性;直至最后进入省电模式,等待用户或者RTC唤醒;在唤醒过程中则会按照设备注册的顺序依次恢复每个设备的电源进入正常工作状态,解冻相关的进程,然后再进行浅度休眠的唤醒流程。转载 2014-12-17 18:14:42 · 1034 阅读 · 0 评论 -
android 休眠唤醒机制分析(二) — early_suspend
early_suspend是Android休眠流程的第一阶段即浅度休眠,不会受到wake_lock的阻止,一般用于关闭lcd、tp等设备为运行的应用节约电能。Android的PowerManagerService会根据用户的操作情况调整电源状态,如果需要休眠则会调用到HAL层的set_screen_state()接口,在set_screen_state()中会向/sys/power/state节点转载 2014-12-17 18:13:22 · 893 阅读 · 0 评论 -
Android 的 init.rc 文件简介
init.rc由许多的Action和Service组成。每一个语句占据一行,并且各个关键字被空格分开.由 # (前面允许有空格)开始的行都是注释行(comment)一个actions 或 services 的开始隐含声明了一个新的段,所有commands 或 options 属于最近的声明。在第一个段之前的 commands 或 options 都会被忽略每一个action转载 2014-03-01 23:13:36 · 706 阅读 · 0 评论 -
android源码结构
Android 2.1|-- Makefile|-- bionic (bionic C库)|-- bootable (启动引导相关代码)|-- build (存放系统编译规则及generic等基础开发包配置)|-- cts转载 2014-03-01 18:51:07 · 878 阅读 · 0 评论 -
Android自带的toolbox分析及扩展
转自:http://blog.csdn.net/a345017062/article/details/6250619 折腾了几天,被Android那点儿少得可怜的shell命令折磨的死去活来,终于下定了革命的决心。看一下怎么把渺小的toolbox替换成伟大的busybox吧。先大致描述一下Android系统中的shell程序部分。shell实现分为两部分:一、shell解释器和内置转载 2014-03-01 18:29:16 · 723 阅读 · 0 评论 -
A20 编译
android 源码编译分为 2 个部分,一部分是 linux 内核编译,这部分包括 uboot,另一部分是 android 源码编译。所以编译时各自单独编译,编译成功能,最近单独打包成最终烧录的镜像文件。2.1 源码结构说明首先把源码包 A20-420-V12.tar.bz2 复制在 XHD-A20 目录下,并解压xinhangdao@xinhangdao:~/XHD-A20$转载 2014-02-27 09:57:55 · 1546 阅读 · 1 评论 -
Android学习--第一个程序
紧接上一篇环境搭建好之后,我照着Android文档里面的例子做了一遍Hello World!我喜欢探究程序是怎样运行的,而IDE集成了所有的功能,使我看不到它背后的东西。所以打算不适用IDE来做第一个练习,而直接使用SDK提供的工具。 首先将SDK 的tools文件夹路径及Ant的bin路径添加到系统环境变量里,这样我就可以直接在命令行下使用Android 跟Ant 里面的工具了。必须的工具转载 2012-11-08 19:23:50 · 473 阅读 · 0 评论 -
Android.mk 用法介绍
一个Android.mk file用来向编译系统描述你的源代码。具体来说:该文件是GNU Makefile的一小部分,会被编译系统解析一次或多次。你可以在每一个Android.mk file中定义一个或多个模块,你也可以在几个模块中使用同一个源代码文件。编译系统为你处理许多细节问题。例如,你不需要在你的Android.mk中列出头文件和依赖文件。NDK编译系统将会为你自动处理这些问题。这也意味着,转载 2014-12-23 18:29:09 · 653 阅读 · 0 评论