嵌入式学习笔记(一)

来源:互联网 发布:淘宝客服的奖金制度 编辑:程序博客网 时间:2024/06/05 08:27

学习笔记(一)

1、什么是嵌入式?

嵌入式就是在已有的硬件平台上移植操作系统。

2、移植操作系统的优点:1.提高软件的移植性。2.软件开发人员不需要懂硬件。3.操作系统提供了很多开源的软件、工具、库。4.可以实现多任务。5.提供了大量的网络协议栈。

3、移植操作系统的缺点:由于硬件性能的提升相应的成本提高了。

4、嵌入式软件和非嵌入式软件的区别:嵌入式软件是在软硬件之间加入了操作系统。

5、移植操作系统主要做哪些事:(1)移植bootloader。(2)裁剪和编译内核。(3)制作文件系统。

6、嵌入式操作系统分类:1、按收费模式分为商用型和免费型。商用型主要有Vxworks、Symbian、WinCE等。

免费型主要有linux、eCos等。2、按实时性分为硬实时、软实时和无实时。硬实时主要有Vxworks。软实时主要有WinCE。无实时主要有linux等。

7、gcc编译过程可细分为四个阶段:预处理、编译、汇编、链接。预处理阶段主要任务是:头文件展开,宏替换,条件编译。编译阶段主要检查代码规范性,是否存在语法错误,以确定代码实际要做的工作,检查无误后,gcc把代码编译成汇编语言。汇编阶段把编译阶段生成的“.S"文件转成目标文件。

8、< > VS ""  :1、< >:系统的头文件目录去找。""  :先在当前目录搜索,然后到系统的头文件。

类型:< >  :系统自带的头文件。""  :自定义的头文件。

9、交叉编译:在一种计算机环境中运行的程序,能编译出在另外一种环境下运行的代码,我们称这种编译器支持交叉编译。
10、为什么需要交叉编译?因为不同的cpu有不同的汇编,不同的汇编生成的机器码不同。

11、静态库:是在执行程序之前就已经加入到执行代码中,成为执行程序的一部分来执行的,后缀为“.a”。

动态库:是在执行程序启动时加载到执行代码中,后缀为“.so”。

区别:1、静态库执行速度快。2、动态库编译速度快。3、静态库体积大,代码臃肿。4、动态库比静态库更易于升级。5、动态库代码不易部署。

12、库文件的特点:可以调用函数和变量但看不到定义。

1 0
原创粉丝点击