arm安卓运行linux程序设计,安卓逆向学习之Android与ARM处理器

今天我们一起来学习一下Android与ARM处理器,这节课东西有点多,大家可以拿小本本记好,不懂的也可以来问我哦。

首先我们先来了解一下咱们今天要讲解的内容。

目录

[if !supportLists]1、[endif]初步认识ARM

[if !supportLists]2、[endif]初步了解ARM与Android之间关系

初步认识ARM

AMR处理器的概率:

ARM处理器是一个32位精简指令集处理器架构,广泛的使用在许多嵌入式系统的一个设计。

ARM类型:

ARM指令 32位

Thumb指令 16位

Thumb2指令 32位

除了thumb指令是16位,其他两个都是32位的。

ARM处理器的特点

优点:

设计目标低成本、高性能、低耗电

ARM的优势不在于性能强大,而在于它的效率,ARM采用的是RISC流水线指令集,在完成综合性能方面根本就处于一种

缺点:

存储、内存等性能扩展难以进行

ARM与Android的关系

当然我们在c语言中也是可以编写ARM指令的,我们在这里大概去了解一下就行了。

Android操作系统

[if !supportLists]1、[endif]Android嵌入式智能操作系统是基于linux内核

[if !supportLists]2、[endif]Linux是基于ARM平台

首先我们必须先了解ARM平台、Android移植与驱动核心开发(当然也可以是x86或者是其他平台)并不是开发很多,Android嵌入式智能操作系统是基于liunx内核,既然我们Android操作系统的底层是liunx内核,那我们就非常好理解,嵌入式系统liunx这个基于ARM平台,liunx是基于ARM平台。

原生程序与arm汇编的关系

可执行程序->.mk文件->相关配置->才能在Android平台运行

可执行程序就是原生程序,我们编写的可执行程序,在两个.mk文件里做了一些相关的配置才使得我们写的这个程序才能在Android平台下运行起来,所以依赖的就是我们的一个ARM平台

反编译可执行程序

.dex文件  ->smail汇编

可执行程序->ARM汇编

我们之前学过将.dex文件反编译成smail文件,也就是smail汇编语言。我们的可执行程序,还有我们的动态链接都是可以反编译的,但是可执行程序反编译出来的是我们这次所学的ARM汇编并不是smail汇编,这两者的区别还是挺大的,后面我们会有所讲解。

小结

我们本次学习了ARM的优点:执行快、可嵌入式开发。也学习了ARM和Android的关系:Android是基于linux内核,采用的是ARM处理器。

不知道我们大家有没有了解今天小编给大家讲解的内容呢?没听懂没关系,来跟着小编,小编带着大家一起学习安卓逆向知识,不懂得都可以私聊小编.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值