摘要: 一. 为什么需要链接脚本 1.1. 从源码到可执行程序(主要有三个步骤:预编译、编译、链接) 1.1.1. 预编译 a. 预编译器执行。譬如C中的宏定义就是由预编译器处理,注释等也是由预编译器处理的。 1.1.2. 编译 a. 由编译器来执行。把源码.c .S编程机器码.o文件。所以可以看到每个源码 阅读全文
posted @ 2019-01-07 23:35 三七鸽 阅读(1248) 评论(0) 推荐(0) 编辑
摘要: 一. 什么是cache 1.1. cache简介 a. Cache 即高速缓冲存储器,是位于 CPU 与内存之间的高速存储器,它的容量比内存小但交换速度快。 b. ARM处理器的主频为上百M甚至几G,而一般的SDRAM的存储周期是很慢的,相对于CPU来说,这时,如果我们把程序和数据都存储在SDRAM 阅读全文
posted @ 2019-01-07 22:19 三七鸽 阅读(1499) 评论(0) 推荐(0) 编辑
摘要: 一. 设置栈 1.1. C语言运行时需要和栈的意义 1.1.1. “C语言运行时(runtime)”需要一定的条件,这些条件由汇编来提供。C语言运行时主要是需要栈 1.1.2. C语言与栈的关系 a. C语言中的局部变量都是用栈来实现的。如果我们汇编部分没有给C部分预先设置合理合法的栈地址,那么C代 阅读全文
posted @ 2019-01-07 00:06 三七鸽 阅读(544) 评论(0) 推荐(0) 编辑