会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
CrazyDiode
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
8
9
10
···
13
下一页
2016年12月9日
【转】Android下面打印进程函数调用堆栈(dump backtrace)的方法
摘要: 1. 为什么要打印函数调用堆栈? 打印调用堆栈可以直接把问题发生时的函数调用关系打出来,非常有利于理解函数调用关系。比如函数A可能被B/C/D调用,如果只看代码,B/C/D谁调用A都有可能,如果打印出调用堆栈,直接就把谁调的打出来了。不仅如此,打印函数调用堆栈还有另一个好处。在Android代码里,
阅读全文
posted @ 2016-12-09 14:12 CrazyDiode
阅读(3759)
评论(0)
推荐(1)
2016年11月11日
Tiny4412 Android 启动流程
摘要: Android系统的启动主要包括三个阶段: ①BootLoader启动 ②Linux Kernel启动 ③Android系统启动 前面我们大致分析了前面两个步骤,即u-boot和内核的启动流程(内核启动流程待完善-_-!!),这次就来分析以下Linux内核启动之后是怎样挂载起Android这个“根文
阅读全文
posted @ 2016-11-11 08:59 CrazyDiode
阅读(1453)
评论(0)
推荐(1)
2016年11月6日
Tiny4412 Linux 内核启动流程
摘要: Linux内核的启动分为压缩内核和非压缩内核两种,这里我们以压缩内核为例。压缩内核运行时,将运行一段解压缩程序,得到真正的内核镜像,然后跳转到内核镜像运行。此时,Linux进入非压缩内核入口,在非压缩内核入口中,完成各种初始化操作后跳转到C语言入口处运行。主要流程如下所示。 1.解压缩内核镜像 解压
阅读全文
posted @ 2016-11-06 14:05 CrazyDiode
阅读(1308)
评论(0)
推荐(0)
2016年11月3日
Tiny4412 Linux 内核配置流程
摘要: 1.配置交叉编译器 默认情况下,内核构建的是与宿主机相同的体系架构镜像。如果要交叉编译,需要设置两个变量ARCH和CORSS_COMPILE。 ①ARCH:指明目标体系架构,如x86、arm、mips等。 ②CROSS_COMPILE:指定使用的交叉编译器的前缀。例如arm-linux-。在内核顶层
阅读全文
posted @ 2016-11-03 23:27 CrazyDiode
阅读(2545)
评论(0)
推荐(0)
2016年11月1日
【转载】你知道 Linux 内核是如何构建的吗?
摘要: 内核的根 Makefile 负责构建两个主要的文件:vmlinux (内核镜像可执行文件)和模块文件。内核的 Makefile 从定义如下变量开始: 这些变量决定了当前内核的版本,并且被使用在很多不同的地方,比如同一个 Makefile 中的 KERNELVERSION : 接下来我们会看到很多if
阅读全文
posted @ 2016-11-01 23:21 CrazyDiode
阅读(715)
评论(0)
推荐(1)
2016年10月28日
Tiny4412 u-boot分析(3)u-boot 引导内核流程
摘要: 在u-boot中,通过bootm命令启动内核。bootm命令的作用是将内核加载到指定的内存地址,然后通过R0、R1、R2寄存器传递启动参数之后启动内核。在启动内核之前需要对环境做一些初始化工作,主要有如下几个方面: (1)、cpu 寄存器设置 * R0 = 0 * R1 = 板级 id * R2 =
阅读全文
posted @ 2016-10-28 08:31 CrazyDiode
阅读(1833)
评论(0)
推荐(0)
2016年10月25日
Tiny4412 u-boot分析(2)u-boot启动流程
摘要: 从大方面来说,u-boot的启动分成两个阶段,第一个阶段主要的职责是准备初始化的环境,主要有以下几点 ①设置异常向量表 ②把CPU的工作模式设置为SVC32模式 ③关闭中断、MMU和cache ④关闭看门狗 ⑤初始化内存、时钟、串口 ⑥设置堆栈 ⑦代码搬移 ⑧清bss段 ⑨跳转到c语言中执行(第二阶
阅读全文
posted @ 2016-10-25 09:17 CrazyDiode
阅读(2352)
评论(1)
推荐(0)
2016年10月21日
Tiny4412 u-boot分析(1)u-boot配置流程分析
摘要: 参考Friendlyarm的文档,编译uboot的流程为 这个过程主要涉及到两个文件,顶层的Makefile文件和mkconfig文件,makeconfig文件是一个脚本,通过文件的注释可以了解到它的作用 意思是,mkconfig 是用来创建头文件和链接脚本,并以此来为特定的开发板配置u-boot的
阅读全文
posted @ 2016-10-21 21:58 CrazyDiode
阅读(1856)
评论(2)
推荐(0)
2016年10月20日
Android Tombstone 分析
摘要: 1.什么是tombstone 当一个动态库(native 程序)开始执行时,系统会注册一些连接到 debuggerd 的 signal handlers,当系统 crash 的时候,会保存一个 tombstone 文件到/data/tombstones目录下(Logcat中也会有相应的信息),文件的
阅读全文
posted @ 2016-10-20 12:42 CrazyDiode
阅读(76513)
评论(2)
推荐(5)
2016年10月19日
Android CTS(frome google)
摘要: Compatibility Test Suite How does the CTS work? The Compatibility Test Suite (CTS) is a free, commercial-grade test suite, available for download. The
阅读全文
posted @ 2016-10-19 09:09 CrazyDiode
阅读(4638)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
8
9
10
···
13
下一页