第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C++编写程序很方便,但汇编源程序用于系统最基本的初始化,如初始化堆栈指针、设置页表、操作 ARM的协处理器等。初始化完成后就可以跳转到C代码执行。需要注意的是,GNU的汇编器遵循AT&T的汇编语法,可以从GNU的站点 (www.gnu....
分类:
其他好文 时间:
2014-08-19 16:04:44
阅读次数:
322
附录A 体系结构相关知识
A.1 概述
为便于扩展到新的体系结构,内核严格隔离了体系结构相关和体系结构无关的代码。内核中特定于处理器的部分,包含定义和原型的头文件保存在include/asm-arch/(例如,include/asm-arm/)目录下,而C语言和汇编程序源代码实现则保存在arch/arch/(例如,arch/arm/)目录下。
联编系统也考虑到一般代码可能需要...
分类:
系统相关 时间:
2014-08-18 18:45:12
阅读次数:
333
linux kernel从入口到start_kernel的代码分析本文的很多内容是参考了网上某位大侠的文章写的>,有些东西是直接从他那copy过来的。最近分析了一下u-boot的源码,并写了分文档, 为了能够衔接那篇文章,这次又把arm linux的启动代码大致分析了一下,特此写下了这篇文档。一来是...
分类:
系统相关 时间:
2014-08-18 18:16:32
阅读次数:
431
编译过程如下: 用到的安装包下面的过程最好按照顺序进行!有一些库也是依赖关系。export PREFIX=/usr/export HOSTTPL=arm-none-linux-gnueabiexport INSTALLDIR=/home/linux/linphone/installtslib$ su...
分类:
其他好文 时间:
2014-08-18 12:04:34
阅读次数:
401
ARM微处理器支持加载/存储指令用于在寄存器和存储器之间传送数据,加载指令用于将存储器中的数据传送到寄存器,存储指令则完成相反的操作。常用的加载存储指令如下:
— LDR 字数据加载指令
— LDRB 字节数据加载指令
— LDRH 半字数据加载指令
— STR 字数据存储指令
— STRB 字节数据...
分类:
其他好文 时间:
2014-08-17 22:52:13
阅读次数:
235
编译的一个ARM的程序,会得到这样的信息:============================================================================== Code (inc. data) RO Data RW Data ZI D...
分类:
其他好文 时间:
2014-08-16 18:18:40
阅读次数:
196
初入领悟:1、bank、L-bank的概念2、 s3c2440内部管理SDRAM寄存器配置Frist part:原理分析S3c2440为32位微处理器,其可访问空间为4G;但其中提供1G外设访问空间,这1G空间有8个bank组成;及平均每个bank有128M的访问空间;其中8bank的特性为:1、b...
分类:
其他好文 时间:
2014-08-15 23:46:29
阅读次数:
361
给自己挖了个坑,一切都得从“HelloWorld”开始。hello.S.data
msg:
.ascii"Hello,World!\n"
len=.-msg
.text
.globl_start
_start:
/*syscallwrite(intfd,constvoid*buf,size_tcount)*/
mov%r0,$1/*fd->stdout*/
ldr%r1,=msg/*buf->msg*/
ldr%r2,=len/*count->le..
分类:
移动开发 时间:
2014-08-15 02:49:58
阅读次数:
235
在暑假剩余的时间,买一块最新技术天嵌Cortex-a8开发板学习。
回到学校,还不是接受老师、同学、妹子的羡慕嫉妒恨啊!
暑期开学季,天嵌来助你!
分类:
其他好文 时间:
2014-08-14 13:48:48
阅读次数:
216