ARM
windtakers
这个作者很懒,什么都没留下…
展开
-
ARM 堆栈
堆栈严格来说应该叫做栈,栈(Stack)是限定仅在一端进行插入或删除操作的线性表。因此,对栈来说,可以进行插入或删除操作的一端称为栈顶(top),相应地,另一端称为栈底(bottom)。不含元素的空表称为空栈。由于堆栈只允许在一端进行操作,因而按照后进先出(LIFO-Last In First Out)的原理运作。 从栈顶的定义来看,栈顶的位置是可变的。空栈时,栈顶和栈底重合...转载 2013-10-10 15:47:36 · 1697 阅读 · 1 评论 -
Linux kernel memory management (ARM)
本文以 linux mainline 代码分析,v3.19-rc5 + (SHA-1 : b97f880c8342fd6e49a02c9ef7507a678722b2b3)以ARM vexpress 为例进行分析,用到的调试命令如下:make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- distclean ; make ARCH=arm CR原创 2015-01-30 17:06:47 · 1503 阅读 · 0 评论 -
BLSP接口
http://huaqianlee.github.io/2016/04/27/Uav/Qualcomm-uav-blsp-port/概述BLSP是高通对于低速接口的一种管理方式,8074 平台含有两个BLSP(BAM Low-Speed Peripheral) 块,对应于12个BLSP端口。 每一个BLSP块含有最多六个Qualcomm Universal Pe转载 2017-07-11 14:50:07 · 21690 阅读 · 1 评论 -
int or unsigned int
int 声明的变量默认是signed int 带符号的,如果需要无符号整型,必须明确声明 unsigned int.#include <stdio.h>#include <stdlib.h>int main(int argc, char *argv[]) { int i = 2147483645; int j = 2147483649; ...原创 2013-10-31 08:45:47 · 860 阅读 · 0 评论 -
Full Descending Stack
Demo:#define LOG_TAG "QIANG_DEMO_TEST"#define ATRACE_TAG ATRACE_TAG_ALWAYS#include <stdio.h>#include <stdlib.h>#include <string.h>#include <time.h>#ifdef __ANDROID__...原创 2019-07-13 16:45:21 · 908 阅读 · 0 评论 -
ARM MDK & ARM DS-5 & RVDS & ARM Development Studio
ARM MDK: Microcontroller Development Kit, 原先的 Keil 公司开发,后来被 ARM公司收购。面向 ARM 微控制器,单核ARMTDMI,Cortex-M,Cortex-R处理器。RVDS:RealView Development Suite, 包括以前 MMP 平台上用到的 RVCT 编译器,是 ADS (ARM Development Suite...原创 2019-07-13 16:56:10 · 1631 阅读 · 0 评论 -
ARM 汇编语言
1. 什么是汇编语言?计算机处理器,执行的是 二进制的 10101010001,这些机器码对应的助记符就是汇编指令。处理器 fetch 到的指令是 1001010101, 可能就是 对应汇编语言中 ADD 的加法指令, 处理器执行 加法操作,并把结果输出到目的寄存器。ARM (RISC)指令长度固定为 32 bits。2. ARM 指令集ARM 指令集可以分为下面六类:...原创 2019-07-11 15:30:25 · 6009 阅读 · 0 评论 -
ARM 汇编实例
ARM NDK 下载地址:https://dl.google.com/android/repository/android-ndk-r20-linux-x86_64.zipmain.cint main() { int i = 0x11111111; int j = 0x22222222; int k = 0; if (i > j) { k = i; ...原创 2019-07-11 16:25:24 · 7257 阅读 · 2 评论 -
ARM C / C++ calling ASM
参考 ARM官方文档实现 C inline assemly code, 运行环境 ARM DS-5 (arm6 compiler):1. Writing inline assembly codehttp://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.100748_0606_00_en/ddx1471430827125.html...原创 2019-07-16 16:13:29 · 1210 阅读 · 0 评论 -
Getting Started with ARM DS-5 Development Studio
https://developer.arm.com/tools-and-software/embedded/legacy-tools/ds-5-development-studio/resources/tutorials/getting-started-with-ds-5-development-studioGetting Started with DS-5 Development Studi...转载 2019-07-12 16:45:19 · 1207 阅读 · 0 评论 -
Tiny6410 led 驱动实现分析
原创作品,转载请注明:http://write.blog.csdn.net/postedit/8984547本文作为学习自己写驱动的基础贴,重在总结写驱动程序从看开发板硬件使用手册,到开发板data sheet, 原理图,再到coding 的整个流程。以Tiny6410 开发板实现led 驱动为例:1. 看Tiny6410 硬件使用手册关于 LED 的介绍部分(要实现L原创 2013-05-28 15:09:52 · 3175 阅读 · 0 评论 -
ARM 体系结构 整理总结帖
最近,打算写长篇博客介绍ARM 的体系结构,也算是学习笔记,两年工作的一些积累的总结吧:Topic 1:大小端大小端(big- endian, little- endian)影响到数据在存储器中的存放顺序。大端模式(big- endian), 高字节放在放低地址,低字节放在高地址;小端模式(little- endian), 高字节放在高地址,低字节放在低地址。助记: 以低字节存...原创 2012-12-19 09:03:14 · 2186 阅读 · 0 评论 -
AMSS - Advanced Mobile Subscriber Software
http://blog.csdn.net/dulijun_98103207/article/details/5327225http://zhidao.baidu.com/link?url=Vfm4eR1GiMpDNABolRwa_VsG83MrWmvRAjvYPTaDT4BDn0Sb6lpWRew6mudnVWRcPD2r5s85Ok3lfCmCuaymmK在高通7系列的架构中转载 2014-02-13 09:07:53 · 1069 阅读 · 0 评论 -
内存对齐
在嵌入式底层开发中经常会遇到内存对齐的问题,整理一下吧:1. 内存对齐的概念对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。2. 内存对齐的原因需要内存对齐的根本原因在于CPU访问数据的效率问题。假设整型变量的地址不是自然对齐,比如为0x000原创 2013-03-05 11:37:26 · 816 阅读 · 0 评论 -
进程和线程的区别
http://www.cnblogs.com/lmule/archive/2010/08/18/1802774.html转载 2013-03-06 10:34:26 · 813 阅读 · 0 评论 -
栈
栈的使用很频繁,准确的理解栈很重要。首先,回顾下ARM 上的栈:转载: http://blog.163.com/modeng_2005/blog/static/26561120097753251708/?fromdm&fromSearch&isFromSearchEngine=yes以下是我在学习ARM指令中记录的关于堆栈方面的知识:1、寄存器 R13 在 ARM 指...原创 2013-03-07 15:41:31 · 1150 阅读 · 0 评论 -
I2S 分析
I2S(Inter—IC Sound)总线是飞利浦公司为数字音频设备之间的音频数据传输而制定的一种总线标准,该总线专责于音频设备之间的数据传输,广泛应用于各种多媒体系统。原创 2013-02-27 15:57:01 · 817 阅读 · 0 评论 -
硬件相关知识整理
从事嵌入式底层开发不懂硬件电路的话很被动,整理下一些硬件中的重要知识点:1. 直流耦合:直流耦合(DC Coupling)就是直流,交流一起通过,并不去掉交流分量。比如在3V的直流电平上叠加一个1Vpp的正弦波,如果用直流耦合,看到的是以3V 为基准,+/-0.5V 的正弦波。在功率放大中有重要的应用。2. 交流耦合交流耦合(AC Coupling),是通过隔直电容耦合,因此会原创 2013-02-28 10:26:17 · 653 阅读 · 0 评论 -
正式入手s3c6410 开发板,ARM 开发板,我来了~~
从事嵌入式 ARM开发已经快3年了,忙碌的工作让自己没能抽出时间好好的系统学习ARM开发。现在赶个闲季,钻研下广大嵌入式爱好者起步用的s3c6410开发板,希望也能凭借绵薄之力为嵌入式行业的XDJM们整理点资料,share 一下自己的心得~~ 1. Tiny 6410 刷机指南(自带的光盘里面也有,不过杯具的是这电脑竟然没有光驱,吐血中~~)http://www.doc88.com/p原创 2013-02-27 11:31:33 · 1354 阅读 · 0 评论 -
Tiny6410 led 驱动程序
转载:http://blog.csdn.net/yf210yf/article/details/7360336转载注明出处:袁方的技术博客 http://blog.csdn.net/yf210yf/article/details/7360336首先分析原来:1.查看用户手册led1、led2、led3、led4 连接的分别是 GPK4、GPK5、GPK6、GPK转载 2013-03-04 14:13:22 · 777 阅读 · 0 评论 -
linux 下 USB 摄像头实现分析
首先理解一下USB相关的几个重要的概念:1. USB ,是英文Universal Serial BUS(通用串行总线)的缩写,而其中文简称为“通串线,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯。是应用在PC领域的接口技术。USB接口支持设备的即插即用和热插拔功能。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。2.USB设备分为Host(主原创 2013-02-18 16:18:12 · 3905 阅读 · 0 评论 -
C 中for 循环语句执行顺序之我是汇编
for(i = 0; i 这样的for 语句可能再基础不过,可是理解不清楚还是容易犯错误。现在我用ARM 汇编指令分析一下这样的语句到底是怎么执行的(当你看C代码不知道代码到底是怎么执行的时候,要么查C标准,要么看熟悉的ARM 汇编)。测试用例:/* ===============================================================原创 2013-10-14 09:53:39 · 1784 阅读 · 0 评论 -
linux kernel setup_arch
在 linux kernel booting 阶段,asmlinkage void __init start_kernel(void)中很重要的一个步骤是 setup arch,setup_arch(&command_line);对于不同的体系结构,比如 ARM 和 MIPS,它们分别需要实现这个函数,在编译的时候链接进来。linux 内核公共部分并不关心各个体系结构的原创 2013-10-21 13:57:12 · 2074 阅读 · 0 评论 -
ROP 返回导向编程 攻击
之前工作中一直研究ARM 体系结构函数调用标准(AAPCS),分析栈中内存溢出对ARM 体系结构函数调用产生的影响。Android 的流行促进了hacker 对 Android root 的研究,最出名的莫过于 基于堆栈溢出攻击的 ROP gadgets ROOT方法。首先看下ROP的基本概念(摘自wiki):http://zh.wikipedia.org/wiki/%E8%B原创 2013-10-29 13:07:39 · 4273 阅读 · 0 评论 -
Android 堆栈攻击之 ARM 栈分析 + ARM汇编解读
想要劫持ARM 处理器,让它执行你想要的代码,从 ARM 栈攻击(Buffer overrun)入手,分析 ARM 栈溢出的原理,利用 ARM 汇编作为跳板指令,执行攻击程序。1. 栈 (Stack)介绍栈结构的文章网上很多,摘取一篇作为参考:http://hi.baidu.com/trical/item/585a24087f9b1a036c9048f0对ARM堆栈的理解 ...原创 2013-10-29 14:38:46 · 8652 阅读 · 0 评论 -
电话机工作原理分析
大学曾经学过的专业知识太长时间没看了,都忘得差不多了,最近需要用到写电话机的工作原理的知识点,还是总结一下吧。回想大学时候,最遗憾的就是做的电子设计之类的东西没有写博客,现在都无从查起。 首先,总结下电话机的工作原理: 电话通信是通过声能与电能相互转换、并利用“电”这个媒介来传输语言的一种通信技术。两个用户要进行通信,最简单的形式就是将两部电话机用一对线路连接起来。 a)原创 2013-02-20 10:26:18 · 12220 阅读 · 0 评论