ARM启动分析
文章平均质量分 86
LikeShadows
后来你成熟了,可也不爱笑了
展开
-
ARM启动过程分析
启动代码:所谓的启动代码,就是在启动的时候执行的一段代码,主要任务是初始化处理器模式,设置堆栈,初始化变量等等。由于以上的操作均与处理器架构和系统配置密切相关,所有一般由汇编来编写。启动代码一般分为两部分,一是与ARM7内核相关的部分,包括处理器各异常向量的配置,各处理器模式的堆栈设置,如果有必要,复制向量到RAM,以便remap之后处理器能正确处理异常,初始化数据(RW和ZI),最后跳转到main原创 2015-04-13 20:59:07 · 674 阅读 · 0 评论 -
C代码的内存区域
一直以来, 从未深入理解内存中的代码段, 数据段, BSS段, 堆栈 …, 现在项目需要, 编译的代码大了一点点, flash/ram 不够, 需要优化代码, 因此需要先了解哪些是占 Flash空间, 哪些是占 Ram 空间之后. 才能对应进行优化, 东翻西找了一大堆资料后, 总算是整明白了, 整理成笔记, 方便自己也方便别人, 何乐而不为呢. 1. 名词-五大段 1.1. BSS段 BSS:(B...原创 2018-09-21 17:43:53 · 570 阅读 · 0 评论 -
GNU工具链编译器
1. 获取 GNU 工具链 因为是用 GNU 工具链编译能在 Cortex-m3 上跑的程序,因此在 ARM 官网上找到 GNU 的工具链,GNU 工具链下载 。 注:EABI 是嵌入式应用程序二进制接口的简称。可执行目标文件必须符合该规则,从而可以跨开发工具链使用。 2. 开发流程 GNU 工具链也包含了编译器、汇编器和链接器等等工具,所以我们的代码可以使用 C/C++ 语言,也可以使用汇编语言...翻译 2019-06-21 17:02:59 · 1231 阅读 · 0 评论