1.论述外设寄存器的作用、分类,以及每种分类完成的功能。
答:外设寄存器又称为“I/O端口”,处理器对为外部设备的访问,就是通过对外设寄存器读写完成的。
外设寄存器分为3种:
控制寄存器,用来控制外设行为。
状态寄存器,用来指示外设的当前状态。
数据寄存器,用来存储外设用例的数据。
2.论述嵌入式软件开发中程序优化的原则、分类,以及每种分类优化的内容。
答:嵌入式程序优化遵循三个原则:等效原则、有效原则、经济原则。
嵌入式程序优化分为3类:
运行速度优化,在充分掌握软硬件特性的基础上,通过应用程序结构调整等手段,来缩短完成指令任务所需的运行时间。
代码尺寸优化,在能够正确实现所需功能需求的前提下,尽可能减小程序的代码量。
低功耗优化,在满足需求的前提下,运行时间尽可能少的小孩硬件资源,以达到节能降耗的目的。
3.论述嵌入式操作系统中的文件系统的作用,以及它的层次和每个层次的作用。
答:文件系统提供了在线存储和访问包括数据和程序在内的文件内容的机制。
I/O控制层,为文件系统的最低层,实现内存与磁盘间的信息转移。
基本文件系统层,向适合的设备驱动程序发送指令,以完成对磁盘上的物理块进行读写。
文件组织模块层,将逻辑块地址转换成基本文件系统所用的物理地址。
逻辑文件系统层,管理元数据。
4.从软件的架构层次来论述嵌入式软件系统模型。
答:从软件的架构层次啦论述嵌入式软件模型共有3种。
没有OS和BSP的模型,这种,模型没有OS的概念,在硬件层上直接是应用程序,应用程序是高的相关的,直接与硬件打交道。
有OS没有BSP的模型,这种模型有嵌入式OS负责与硬件交互、管理资源、应用程序,利用OS的API和库间接与硬件打交道。
有OS和BSP的模型,这种模型在OS与硬件层之间多了一层BSP,BSP负责与硬件交互。
5.论述层次化的存储模型中,都有哪些存储器,以及它们典型的大小。
答:层次化存储模型中一般有5种存储器:
寄存器,一般位于处理器内部,速度最快,容量最小,一般4-64B;
高速缓存,一般位于处理器和主存储之间,一般为10-1000KB;
主存储器,即通常所说的内存,一般为10-1000MB;
本地外存,一般指机器上的区别于内存的存储器,此存储器上的数据不能直接被处理器使用,必须先送入内存,然后在提交给处理器,一般为10-1000GB
远程外存,一般只通过网络与本机互联的外部设备,一般为1TB到无穷。
6.论述代码尺寸优化的途径。
答:代码尺寸优化一般有3种途径:
基于指令集的代码尺寸优化,即根据具体的处理器的指令集进行相关代码的优化。
代码压缩优化,即通过对代码进行重新编码,以减少输出序列的形式,但是这个序列是不可以直接运行的。
代码编写技巧,即采用各种代码编写的技巧和方法,比如尽量删除不必要的全局变量位操作,不改变的变量尽量申明为常量等。
7.论述物理内存直接寻址的含义,以及使用物理地址的弊端。
答:所谓物理内存直接寻址是指,在进行硬件设计的时候,把处理器的地址总线直接与主存储器相连,处理器就可以通过地址总线对主存储器中的数据进行访问。
使用物理地址的弊端主要有4点:
在使用物理地址的情况下,处理器可以使用的实际内存数量就是物理内存的总量,如果想访问更多的内存地址,只有增减物理内存数量。
在物理内存情况下,处理器对所有内存的访问权是一致的,物理内存中的所有代码,数据等信息读写权限都是一样的。
如果在多任务的情况下,物理寻址也无法为每个独立的任务提供相应的保护机制,因为所存的任务是运行在同一个地址空间内。
物理内存寻址方式下的内存,无法按照随需的原则来使用。
8.论述运行速度优化的方法。
答:运行速度优化主要方法如下:
采用好的算法和数据结构,高效算法与恰当的数据结构可以使应用程序获得更高的优化性能,比如二分法查找比顺序查找要高效,递归的时间效率和空间效率都比较差。
减小运行强度,在程序中尽量不要进行复杂的运算,比如浮点数的开放等,对于耗时、耗资源的运算,可以采用空间换时间的方法,多使用移位的和自增指令。
采用循环优化和函数优化,对于不需要循环变量参加的语句,放到循环外,对于循环条件的尽量减少判断。
9.论述基本的计算机体系结构,以及各个部分的主要任务。
答:基本的计算机的体系结构主要由4部分组成:
微处理器,从内存获取机器语言指令,编译,执行,根据指令代码,管理自己的寄存器,根据指令或自己的需要修改内存内容,相应其他硬件的中断请求。
存储器,用来存储指令和数据。
输入输出模块,负责在处理器、存储器和外部设备之间交换数据。
系统总线,为处理器、存储器和输入输出模块提供数据,控制等信号通道和传输的设施。
10.论述复杂的嵌入式软件系统架构模型的组成,以及这种模型的优点。
答:复杂的嵌入式软件系统架构由4部分组成
板极支持包,介于开发板硬件和操作系统之间的一层软件抽象,主要的目的是抽象操作系统对硬件的操作
操作系统,统一管理硬件资源的软件系统
应用编程接口,是操作系统提供给应用程序的编程接口
应用程序,位于最顶层负责系统功能和业务逻辑的实现
这种模型在操作系统与硬件之间对增加了一层BSP由BSP直接与硬件交互,这样嵌入式操作系统的代码变成了与硬件无关的代码,提高了程序的移植性,方便嵌入式系统跨平台移植。