软考嵌入式系统设计师笔记归纳总结_第1页
软考嵌入式系统设计师笔记归纳总结_第2页
软考嵌入式系统设计师笔记归纳总结_第3页
软考嵌入式系统设计师笔记归纳总结_第4页
已阅读5页,还剩66页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、软考嵌入式系统设计师笔记1. 嵌入式系统的组成 :硬件层、中间层、系统软件层和应用软件层(1) 硬件层:嵌入式微处理器、存储器、通用设备接口和I/O接口。嵌入式核心模块=微处理器 +电源电路 +时钟电路 +存储器Cache:位于主存和嵌入式微处理器内核之间,存放的是最近一段时间微处理器使用最多的程序代码和数据。它的主要目标是减小存储器给微处理器内核造成的存储器访问瓶颈,使处理速度更快。(2) 中间层 ( 也称为 硬件抽象层 HAL 或者 板级支持包 BSP) :它将系统上层软件和底层硬件分离开来,使系统上层软件开发人员无需关系底层硬件的具体情况,根据BSP 层提供的接口开发即可。BSP 有两个

2、特点:硬件相关性和操作系统相关性。设计一个完整的BSP 需要完成两部分工作:A、嵌入式系统的硬件初始化和BSP 功能。片级初始化: 纯硬件的初始化过程, 把嵌入式微处理器从上电的默认状态逐步设置成系统所要求的工作状态。板级初始化: 包含软硬件两部分在内的初始化过程, 为随后的系统初始化和应用程序建立硬件和软件的运行环境。系统级初始化:以软件为主的初始化过程,进行操作系统的初始化。B、设计硬件相关的设备驱动。(3) 系统软件层:由 RTOS、文件系统、 GUI、网络系统及通用组件模块 组成。RTOS是嵌入式应用软件的基础和开发平台。(4) 应用软件:由基于实时系统开发的应用程序组成。2. 嵌入式

3、系统的定义1/71(1) 定义:以 应用为中心 ,以计算机技术为基础 ,软硬件可裁剪 ,适应应用系统对 功能、可靠性、成本、体积、功耗严格要求的专用计算机系统 。(2) 嵌入式系统发展的 4 个阶段:无操作系统阶段、简单操作系统阶段、实时操作系统阶段、面向 Internet 阶段。(3) 知识产权核 (IP 核 ) :具有知识产权的、 功能具体、 接口规范、可在多个集成电路设计中重复使用的 功能模块 ,是 实现系统芯片 (SOC)的基本构件 。(4)IP 核模块有行为、结构和物理 3 级不同程度的设计,对应描述功能行为的不同可以分为三类: 软核、固核、硬核 。3. 实时系统的调度(1) 调度:

4、给定一组 实时任务 和系统资源 ,确定每个任务何时何地执行的整个过程。(2) 抢占式调度:通常是 优先级驱动的调度 ,如 uCOS。优点是实时性好、反应快,调度算法相对简单,可以保证高优先级任务的时间约束; 缺点是 上下文切换多 。(3) 非抢占式调度:通常是按 时间片分配的调度 ,不允许任务在执行期间被中断,任务一旦占用处理器就必须执行完毕或自愿放弃,如WinCE。优点是 上下文切换少 ; 缺点是处理器有效资源利用率低,可调度性不好。(4) 静态表驱动策略:系统在运行前根据各任务的时间约束及关联关系,采用某种搜索策略生成一张运行时刻表,指明各任务的起始运行时刻及运行时间。(5) 优先级驱动策

5、略:按照 任务优先级的高低 确定任务的执行顺序。(6) 实时任务分类:周期任务、偶发任务、非周期任务。(7) 实时系统的通用结构模型:数据采集任务实现传感器数据的采集,数据处理任务处理采集的数据、并将加工后的数据送到执行机构管理任务控制机构执行。4. 实时系统(1) 定义:能在 指定或确定的时间 内完成系统功能和对外部或内部、同步或异步时间做出响应的系统。(2) 区别:通用系统一般追求的是系统的平均响应时间和用户的使用方便; 而实时系统主要考虑的是在 最坏情况下 的系统行为。(3) 特点:时间约束性、可预测性、可靠性、与外部环境的交互性。2/71(4) 硬实时 ( 强实时 ) :指应用的时间需

6、求应能够得到完全满足,否则就造成重大安全事故,甚至造成重大的生命财产损失和生态破坏,如:航天、军事。(5) 软实时 ( 弱实时 ) :指某些应用虽然提出了时间的要求,但实时任务偶尔违反这种需求对系统运行及环境不会造成严重影响,如:监控系统、实时信息采集系统。(6) 任务的约束包括:时间约束、资源约束、执行顺序约束和性能约束。5. 嵌入式微处理器体系结构(1) 冯诺依曼结构: 程序和数据共用一个存储空间 ,程序指令存储地址和数据存储地址指向同一个存储器的不同物理位置,采用单一的地址及数据总线,程序和数据的宽度相同。例如: 8086、 ARM7、MIPS(2) 哈佛结构: 程序和数据是两个相互独立

7、的存储器,每个存储器独立编址、独立访问,是一种将程序存储和数据存储分开的存储器结构。例如:AVR、 ARM9、ARM10(3)CISC与 RISC 的特点比较 ( 参照教程22 页 ) 。计算机执行程序所需要的时间P 可以用下面公式计算:P=I × CPI× TI :高级语言程序编译后在机器上运行的指令数。CPI:为执行每条指令所需要的平均周期数。T:每个机器周期的时间。(4) 流水线的思想:在 CPU 中把一条指令的串行执行过程变为若干指令的子过程在CPU中重叠执行 。3/71(5) 流水线的指标:吞吐率 :单位时间里流水线处理机流出的结果数。如果流水线的子过程所用时间不

8、一样长,则吞吐率应为最长子过程的倒数 。建立时间 :流水线开始工作到达最大吞吐率的时间。若m 个子过程所用时间一样,均为 t ,则建立时间T=mt。(6) 信息存储的字节顺序A、存储器单位 :字节 (8 位 )B、字长 决定了 微处理器的寻址能力,即 虚拟地址空间的大小。C、 32 位微处理器的虚拟地址空间 位 232 ,即 4GB。D、小端字节顺序:低字节 在内存 低地址 处,高字节 在内存 高地址 处。E、大端字节顺序:高字节 在内存 低地址 处,低字节 在内存 高地址 处。F、网络设备的存储顺序问题取决于OSI 模型底层中的数据链路层。6. 逻辑电路基础(1) 根据电路是否具有存储功能,

9、将逻辑电路划分为:组合逻辑电路和时序逻辑电路 。(2) 组合逻辑电路:电路在任一时刻的输出,仅取决于该时刻的输入信号,而与输入信号作用前电路的状态无关。常用的逻辑电路有译码器和多路选择器等。(3) 时序逻辑电路:电路任一时刻的输出不仅与该时刻的输入有关,而且还与该时刻电路的状态有关。因此,时序电路中必须包含记忆元件。触发器 是构成时序逻辑电路的基础。常用的时序逻辑电路有寄存器计数器等。(4) 真值表、布尔代数、摩根定律、门电路的概念。( 教程 28、29 页 )4/71(5)NOR( 或非 ) 和 NAND(与非 ) 的门电路称为全能门电 路,可以实现任何一种逻辑函数。(6) 译码器:多输入多

10、输出的组合逻辑网络。每输入一个n 位的二进制代码,在m 个输出端中最 多有一个有效 。当 m=2n 是,为全译码; 当 m<2n 时,为部分译码。(7) 由于集成电路的 高电平输出电流小 ,而低电平输出电流相对比较大 ,采用集成门电路直接驱动 LED时,较多采用 低电平驱动方式 。液晶七段字符显示器 LCD 利用液晶有外加电场和无外加电场时不同的光学特性来显示字符。(8) 时钟信号 是时序逻辑的基础,它用于决定逻辑单元中的状态合适更新。同步 是时钟控制系统中的 主要制约条件。(9) 在选用触发器的时候,触发方式是必须考虑的因素。触发方式有两种:电平触发方式 :具有结构简单的特点,常用来组

11、成暂存器。边沿触发方式:具有很强的抗数据端干扰能力,常用来组成寄存器、计数器等。7. 总线电路及信号驱动(1) 总线是各种信号线的集合,是嵌入式系统中各部件之间传送数据、地址和控制信息的公共通路。 在同一时刻, 每条通路线路上能够传输一位二进制信号。按照总线所传送的信息类型,可以分为:数据总线(DB) 、地址总线 (AB) 和控制总线 (CB) 。(2) 总线的主要参数:总线带宽 :一定时间内总线上可以传送的数据量,一般用MByte/s表示。总线宽度 :总线能同时传送的数据位数(bit),即人们常说的32 位、 64 位等总线宽度的概念, 也叫总线位宽 。总线的位宽越宽, 总线每秒数据传输率越

12、大,也就是总线带宽越宽。总线频率 :工作时钟频率以 MHz 为单位,工作频率越高,则总线工作速度越快,也即总线带宽越宽。总线带宽 = 总线位宽×总线频率/8 , 单位是 MBps。5/71常用总线: ISA 总线、 PCI 总线、 IIC总线、 SPI 总线、 PC104 总线和 CAN 总线等。(3) 只有 具有三态输出的设备 才能够连接到 数据总线 上,常用的 三态门 为输出缓冲器 。(4) 当总线上所接的负载超过总线的负载能力时,必须在总线和负载之间加接缓冲器或驱动器,最常用的是三态缓冲器,其作用是驱动和隔离。(5) 采用 总线复用技术 可以实现 数据总线 和地址总线 的共用。

13、但会带来两个问题:A、需要增加外部电路对总线信号进行复用解耦,例如:地址锁存器。B、总线速度相对非复用总线系统低。(6) 两类总线通信协议:同步方式、异步方式。(7) 对总线仲裁问题的解决是以 优先级 ( 优先权 ) 的概念为基础。8. 电平转换电路(1) 数字集成电路可以分为两大类:双极型集成电路(TTL) 、金属氧化物半导体(MOS)。(2)CMOS 电路由于其静态功耗极低,工作速度较高,抗干扰能力较强,被广泛使用。(3) 解决 TTL 与 CMOS电路接口困难的办法是在TTL 电路输出端与电源之间接一上拉电阻 R,上拉电阻R 的取值由TTL 的高电平输出漏电流IOH 来决定,不同系列的T

14、TL 应选用不同的 R 值。9. 差错控制编码(1) 根据码组的功能, 可以分为 检错码和纠错码 两类。检错码是指能自动发现差错的码,例如 奇偶检验码 ; 纠错码是指不仅能发现差错而且能自动纠正差错的码,例如循环冗余校验码。(2) 奇偶检验码、海明码、循环冗余校验码(CRC)。 ( 教程 70 到 77 页 )10. 嵌入式系统的度量项目(1) 性能指标:分为部件性能指标和综合性能指标,主要包括:吞吐率、实时性和各种利用率。(2) 可靠性与安全性6/71可靠性是嵌入式系统最重要、 最突出的基本要求, 是一个嵌入式系统能正常工作的保证,一般用平 均故障间隔时间 MTBF 来度量。(3) 可维护性

15、:一般用 平均修复时间 MTTR 表示。(4) 可用性(5) 功耗(6) 环境适应性(7) 通用性(8) 安全性(9) 保密性(10) 可扩展性性价比中的价格, 除了直接购买嵌入式系统的价格外, 还应包含安装费用、 若干年的运行维修费用和软件租用费。11. 嵌入式系统中信息表示与运算基础(1) 进位计数制与转换:这样比较简单,也应该掌握怎么样进行换算,有出题的可能。(2) 计算机中数的表示:源码、反码与补码。正数的反码与源码相同,负数的反码为该数的源码除符号位外按位取反。正数的补码与源码相同,负数的补码为该数的反码加一。例如 -98 的源码: 11100010B反码: 10011101B补码:

16、 10011110B(3) 定点表示法:数的小数点的位置人为约定固定不变。浮点表示法:数的小数点位置是浮动的,它由尾数部分和阶数部分组成。任意一个二进制 N 总可以写成: N=2P× S。S 为尾数, P 为阶数 。7/71(4) 汉字表示法 ( 教程 67、68 页 ) ,搞清楚 GB2318-80 中国标码和机内码的变换。(5) 语音编码中波形量化参数 ( 可能会出简单的计算题目哦 )采样频率:一秒内采样的次数,反映了采样点之间的间隔大小。人耳的听觉上限是20kHz,因此 40kHz 以上的采样频率足以使人满意。CD 唱片采用的采样频率是 44.1kHz 。测量精度:样本的量化等

17、级,目前标准采样量级有8位和16位两种。声道数:单声道和立体声双道。立体声需要两倍的存储空间。12. 嵌入式系统的评价方法:测量法和模型法(1) 测量法是最直接最基本的方法,需要解决两个问题:A、根据研究的目的,确定要测量的系统参数。B、选择测量的工具和方式。(2) 测量的方式有两种: 采样方式和事件跟踪方式。(3) 模型法分为 分析模型法和模拟模型法 。分析模型法是用一些数学方程去刻画系统的模型,而模拟模型法是用模拟程序的运行去动态表达嵌入式系统的状态,而进行系统统计分析,得出性能指标。(4) 分析模型法中使用最多的是 排队模型 ,它包括三个部分: 输入流、排队规则和服务机构。(5) 使用模

18、型对系统进行评价需要解决3 个问题:设计模型、 解模型、 校准和证实模型 。13.1. 嵌入式微处理器的基本结构(1) 嵌入式硬件系统一般由嵌入式微处理器、存储器和输入/ 输出部分组成 。8/71(2) 嵌入式微处理器是嵌入式硬件系统的核心,通常由控制单元、算术逻辑单元和寄存器 3 大部分组成:A、控制单元:主要负责取指、译码和取数等基本操作并发送主要的控制指令 。B、算术逻辑单元:主要处理数值型数据和进行逻辑运算工作。C、寄存器:用于暂存临时性的数据。2. 嵌入式微处理器的分类 ( 根据用途 )(1) 嵌入式 微控制器 (MCU):又称为单片机,片上外设资源一般比较丰富,适合于控制。最大的特

19、点是单片化,体积小,功耗和成本低,可靠性高。目前约占70%的市场份额。(2) 嵌入式 微处理器 ( EMPU) :又称为 单板机 ,由通用计算机中的CPU 发展而来,它的特征是具有32 位以上的处理器,具有较高的性能。通常嵌入式微处理器把CPU、ROM、RAM 及I/O等模块做到同一个芯片上。(3) 嵌入式 DSP 处理器 (DSP) :专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,使其处理速度比最快的CPU 还快 10 50 倍,在数字滤波、FFT、频谱分析等方面获得了大量的应用。(4) 嵌入式 片上系统 (SOC) :追求产品系统最大包容的集成器件,其最大的特点是

20、成功实现了软硬件的无缝结合,直接在微处理器片内嵌入操作系统的代码模块。3. 典型 8 位微处理器 (具有 8 位数据总线)的结构和特点该部分参考教程8694 页,以 8051 为重点,彻底搞清楚8 位单片机的工作原理,外设控制、存储分布、寻址方式以及典型应用。2007 年 11 月下午的第一道题目就考查了8051的定时器使用、 外部时钟连接、 实际应用的流程设计以及典型的寻址方式。这些考点几乎可以在教程上找到,例如外部时钟连接那个问题的答案就是教程89 页上面的原图。4. 典型 16 位微处理器的结构和特点该部分参考教程 9497 页。典型的微处理器可以参考 MSP430,找一本这方面的书看看

21、关于 MSP430的结构原理以及典型应用。5. 典型 32 位微处理器的结构和特点9/71该部分参考教程97112 页。 32 位处理器采用32 位的地址和数据总线,其地址空间达到了232=4GB。目前主流的32 位嵌入式处理器系统主要有ARM 系列、 MIPS 系列、 PoewrPC 系列等。ARM 微处理器体系结构目前被公认为是嵌入式应用领域领先的32 位嵌入式RISC 处理器结构。按照目前的发展形式,ARM 几乎成了嵌入式应用的代名词。按照我个人的意见,作为嵌入式系统设计师考试,逐渐增加考查ARM体系结构与编程方面的题目是大势所趋。2006 年没有一道关于ARM 的题目, 2007 年出

22、了少量题目,可能在 2008 年会继续增加。 在下午题方面,2006 年考查了X86 方面的应用、 2007 年考查了8051 方面的应用, 这个可能是一个过度过程,以目前ARM 在嵌入式领域的广泛应用和普及程度,下午题目考查ARM 应用方面或者32 位其他的微处理器方面的应用题目可能在不就将来的考试中就会出现。14. 单片机系统的基本概念(1) 单片机组成:中央处理器、存储器、I/O 设备。(2) 存储器: 物理实质是一组或多组具备数据输入/ 输出和数据存储功能的集成电路,用于充当设备缓存或保存固定的程序及数据。A、ROM(只读存储器 ) :一般用于存放固定的程序或数据表格等,数据在掉电后仍

23、然会保留下来。B、RAM(随机存储器 ) :用于暂存程序和数据、中间计算结果,或用作堆栈用等,数据在掉电后就会丢失。(3)I/O端口:单片机与外界联系的通道,它可以对各类外部信号( 开关量、模拟量、频率信号 ) 进行检测、判断、处理,并可控制各类外部设备。现在的单片机I/O口已经集成了更多的特性和功能,对I/O 端口的功能进行了拓展和复用,例如外部中断、ADC 检测以及PWM输出等等。(4) 输出电平:高电平电压 ( 输出“ 1”时 ) 和低电平电压 ( 输出“ 0”时 ) A、 TTL 电平:正逻辑, 5V 为逻辑正, 0V 为逻辑负,例如单片机的输出。B、 RS232电平:负逻辑,-12V

24、 为逻辑正, +12V 为逻辑负,例如PC 的输出。注:因此在单片机和PC 进行通讯的时候需要一个MAX232芯片进行电平转换。(5) 堆栈:它是一种线性的数据结构,是一个只有一个进出口的一维空间。A、堆栈特性: 后进先出 (LIFO)10/71B、堆栈指针:用于指示栈顶的位置( 地址 ) ,当发生压栈或者出栈操作时,导致栈顶位置变化时,堆栈指针会随之变化。C、堆栈操作:压栈操作(PUSH)和出栈操作 (POP)。D、堆栈类型:“向上生长 ”型堆栈,每次压栈时堆栈指针加1; “向下生长”型堆栈,每次压栈堆栈时指针减1。E、堆栈应用:调用子程序、响应中断时, 堆栈用于保护现场; 还可以用作临时数

25、据缓冲区来使用。F、使用注意:堆栈溢出问题,压栈和出栈的匹配问题。(6) 定时 / 计数器:实质都是计数器。 用作定时器时是对单片机内部的时钟脉冲进行计数,而在用作计数器时是对单片机外部的输入脉冲进行计数,其作用如下:A、计时、定时或延时控制;B、脉冲技术 ;C、测量脉冲宽度或频率( 捕获功能 )(7) 中断:优先级更高的事件发生,打断优先级低的时间进程。引起中断的事件称为中断源。一个单片机可能支持多个中断源,这些中断源可以分为可屏蔽中断和非可屏蔽中断,而这些中断源并不都是系统工作所需的,我们可以根据系统需求屏蔽那些不需要的中断源。A、中断嵌套:当一个低级中断尚未执行完毕,又发生了一个高级优先

26、级的中断,系统转而执行高级中断服务程序,待处理完高级中断后再回过头来执行低级中断服务程序。B、中断响应时间是指从发出中断请求到进入中断处理所用的时间; 中断处理时间是指中断处理开始到中断处理结束的时间。C、中断响应过程:a、保护现场:将当前地址、累加器ACC、状态寄存器 保存到堆栈中。b、切换 PC 指针:根据不同的中断源所产生的中断,切换到相应的入口地址。c、执行中断服务处理程序。d、恢复现场:将保存在堆栈中的主程序地址、累加器ACC、状态寄存器恢复。11/71e、中断返回:从中断处返回到主程序,继续执行。D、中断入口地址: 单片机为每个中断源分配了不同的中断入口地址 ,也称为 中断向量 。

27、(8) 复位:通过外部电路给单片机的复位引进一个复位信号,让系统重新开始运行。A、复位发生时的动作:a、 PC 指针从起始位置开始执行( 大多数单片机都时从0x0000 处开始执行 ) 。b、 I/O端口设置成 缺省状态 ( 高阻态、或者输出低电平) 。c、部分专用控制寄存器SFR 恢复到缺省状态。d、普通 RAM 不变 ( 如果时上电复位,则是随即数) 。B、两种不同的复位启动方式:a、冷启动:也叫上电复位,指在断电状态下给系统加电,让系统开始正常运行。b、热启动:在不断电的状态下,给单片机复位引进一个复位信号,让系统重新开始。C、两种类型的复位电路:高电平复位和低电平复位。D 注意事项:a

28、、注意复位信号的电平状态及持续时间必须满足系统要求。b、注意避免复位信号抖动。(9) 时钟电路:单片机是一种时序电路,必须提供脉冲电路才能正常工作。时钟电路相当于单片机的心脏,它的每一次跳动( 振动节拍 ) 都控制着单片机的工作节奏。振荡得慢时,系统工作速度就慢,振荡得快时,系统工作速度就快( 功耗也增大 ) 。A、振荡周期:振荡源的振荡节拍。B、机器周期:单片机完成一个基本操作需要的振荡周期( 节拍 ) 。C、指令周期:执行一条指令需要几个机器周期。不同的指令需要的机器周期数不同。15. 地址映射地址映射也叫地址重定位。12/71逻辑地址和物理地址是完全不同的,不能用逻辑地址来直接访问内存单

29、元。为了保证 CPU 在执行指令的时候,可以正确地访问内存单元,需要将用户程序中的逻辑地址转换为运行时由机器直接寻址的物理地址。这个过程称为:地址映射。地址映射由存储管理单元MMU来完成。地址映射主要有两种方式:静态地址映射和动态地址映射。静态地址映射: 当用户程序被装入内存时, 直接对指令代码进行修改, 一次性地实现逻辑地址到物理地址的转换。动态地址映射: 当用户程序被装入内存时, 不对指令代码做任何修改, 而是在程序的运行过程中,当它需要访问内存单元的时候,再来进行地址转换。在具体实现时, 这项转换工作一般是由硬件的地址映射机制来完成的。通常设置一个基地址寄存器,或者叫重定位寄存器。 当一

30、个任务被调度运行时, 就把它所在分区的起始地址装入到整个寄存器中。然后, 在程序运行的过程中,当需要访问某个内存单元时,硬件就会自动地将其中的逻辑地址加上基地址寄存器中的内容, 从而得到实际的物理地址, 并且按照这个物理地址区执行。这个基地址寄存器位于MMU的内部,整个地址映射过程是自动运行的。从理论上说,每访问一次内存都要进行一次地址映射。16. ARM体系结构的基本概念(1)ARM: Advanced RISC Machine 。(2)ARM 体系结构中支持两种指令集:ARM 指令集和 Thumb 指令集 。(3)ARM 内核有 T、 D、 M、I 四个功能模块:A、 T 模块:表示16

31、位 Thumb,可以在兼顾性能的同时减少代码尺寸。B、D 模块: 表示 Debug,内核中放置了用于调试的结构 ,通常为一个边界扫描链JTAG。C、 M 模块:表示8 位乘法器。D、 I模块:表示EmbeddedICE Logic ,用于 实时断点观测及变量观测的逻辑电路部分。13/71(4)ARM 处理器有7 种运行模式:A、用户模式 (User) :正常程序执行模式,用于应用程序。D、快速中断模式(FIQ) :快速中断处理,用于高速数据传输和通道处理。C、外部中断模式(IRQ) :用于通用的中断处理。D、管理模式 (SVE) :供操作系统使用的一种保护模式。E、数据访问中止模式(Abort

32、):用于虚拟存储及存储保护。F、未定义指令中止模式(Undefined):当未定义指令执行时进入该模式。G、系统模式 (System) :用于 运行特权级的操作系统任务。除了 用户模式之外的其他6 种处理器模式称为特权模式,在这些模式下, 程序可以访问所有的系统资源,也可以任意地进行处理器模式切换,其中,除了系统模式外,其他的5种特权模式又称为异常模式。处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下,这时,应用程序不能访问一些受操作系统保护的系统资源, 应用程序也不能直接进行处理器模式切换。当需要进行处理器模式切换时,应用程序可以

33、产生 异常处理 ,在异常处理中进行处理器模式的切换。这种体系结构可以使操作系统控制整个系统的资源。当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式种都有一组寄存器, 供相应的异常处理程序使用,这样就可以保证进入异常模式时,用户模式下的寄存器不被破坏。 系统模式并不是通过异常过程进入的,它和用户模式具有完全一样的寄存器,但是系统模式属于特权模式,可以访问所有的系统资源,也可以直接进行处理器模式切换,它主要供操作系统任务使用。17. 嵌入式操作系统概述(1) 内核内核是指操作系统中的一个组件,它包含了OS 的主要功能,即OS 的各种特性及其相互之间的依赖关系,这些功能主要包括:

34、A、任务管理 :对系统中运行的软件进行描述和管理,并完成处理器资源分配和调度。14/71B、存储管理 :提高内存的利用率,方便用户使用,提供足够的存储空间。C、设备管理 :方便设备的使用,提高CPU 和 I/O设备的利用率。D、文件管理 :解决文件资源存储、共享、保密和保护等问题。注:不同嵌入式操作系统的内核设计各不相同,取决于系统设计和实际需求。(2) 嵌入式操作系统分类:A、按系统类型:商业系统、专用系统、开源系统。B、按响应时间:硬实时系统、软实时系统。C、按软件结构:单体结构 (uCOS)、分层结构 (MS-DOS)、微内核结构 (Vxworks) 。18. 嵌入式软件基础(1) 嵌入

35、式软件的特点:A、规模较小 。B、开发难度大。C、实时性和可靠性要求高。D、要求 固化存储 。(2) 嵌入式软件分类:A、系统软件 :控制和管理嵌入式系统资源,如嵌入式操作系统、驱动程序、中间件等。B、应用软件 :定义嵌入式设备的主要功能和用途,负载与用户进行交互。C、支撑软件 :辅助软件开发的工具软件 。(3) 无操作系统的嵌入式软件的两种实现方式:A、循环轮转优点:简单、直观、开销小、可预测。缺点:过于简单,所有代码顺序执行 ,无法处理异步事件,缺乏并行处理能力。15/71B、前后台系统( 在循环轮转的基础上增加了中断处理功能)前台 ( 事件处理级 ) :中断服务程序,负载处理异步事件。后

36、台 ( 任务级 ) :一个无限循环,负载资源分配、任务管理和系统调度。(4) 有操作系统的三大优点:A、提高系统的可靠性。B、提高了系统的开发效率,降低了开发成本,缩短了开发周期。C、有利于系统的扩展与移植 。(5) 设备驱动层 ( 也叫板级支持包 BSP:包含了嵌入式系统中所有与硬件相关的代码)大多数的嵌入式硬件设备都需要某种类型软件的初始化和管理。 这部分工作由设备驱动层来完成的, 它负责直接与硬件大交道, 对硬件进行管理和控制, 为上层软件提供所需的驱动支持,类似 PC 系统中的 BIOS 和驱动程序。19. 设备管理(1) 设备管理基础一个 I/O单元通常由两个部分组成:A、机械部分:

37、I/O设备本身。B、电子部分:设备控制器或设备适配器。硬件寄存器的编址方式有三种:A、 I/O 独立编址:对于各种设备控制器中的每一个寄存器,分配一个唯一的I/O 端口编号,也叫 I/O 端口地址,然后用专门的 I/O 指令对这些端口进行操作。这些端口地址构成的地址空间是完全独立的, 与内存地址空间没有任何关系 。B、内存映象编址:把各种设备控制器当中的每一个寄存器都映射为一个内存单元,这内存单元专门用于 I/O 操作。端口地址空间与内存地址空间是统一编址的,端口地址空间是内存地址空间的一部分。16/71C、混合编址:对于设备控制器当中的寄存器采用独立编址的方法,每个寄存器有一个独立的 I/O

38、端口地址 ; 而对于设备的数据缓冲区,则采用内存映象编址的方法,把他们统一到内存地址空间当中。(2)I/O控制方式:A、程序循环检测:要一直占用CPU,浪费 CPU 的时间。B、中断驱动方式:前后台系统。C、直接内存访问 : DMA 控制 ,减少了中断的次数。20. 任务管理(1) 嵌入式操作系统的任务管理可以分为:A、单道程序技术 :操作系统中,任何时候只能有一个程序在运行。B、多道程序技术 :操作系统中,允许多个程序同时存在并运行。(2) 进程进程,简单的说,是一个正在运行的程序。进程与程序既有联系又有区别,主要表现为下面结构方面:A、程序由数据和代码两部分内容组成,它是一个静态的概念。而

39、进程是正在执行的程序,它也由两部分组成: 程序和该程序的运行上下文 。它是一个动态的概念。B、程序和进程之间并不是一一对应的 。一个进程在运行的时候可以启动一个或多个程序。反之,同一个程序也可能由多进程同时执行。C、程序可以作为一种软件资源长期保存,以文件的形式存放在光盘或硬盘上,而进程则是一次执行的过程,它是暂时的,是动态的产生和终止。一个进程至少应包括三个方面:相应的程序、 CPU上下文、一组系统资源。进程有三个特性:A、动态性:进程是正在运行的程序,而程序的运行状态是不断变化的。B、独立性: 进程是系统资源的使用单位,每个进行有自己的运行上下文和内部状态。17/71C、并发性:宏观来看,

40、系统中同时有多个进程存在,它们相互独立地运行。注:对于并发的理解。在单 CPU 的情况下,所谓的并发性指的是宏观上的并发运行,而微观上还是顺序进行,各个进程轮流去使用CPU 资源。在单核CPU 中,真正的、物理上的PC 寄存器只有一个,进程在轮流执行的时候,物理 PC 的取值也在不断变化。而逻辑 PC 其实就是一个内存变量。每个进程都有一个逻辑PC,当一个进程要运行的时候,就把它的逻辑PC 装载到物理PC 中去; 反之,当一个进程暂不运行的时候,就把物理PC中的值保存在它的逻辑PC 当中。(3) 线程线程就是 进程当中的一条执行流程。进程其实包含两个部分:资源平台和执行流程( 线程 ) 。在一

41、个进程当中,或者说在一个资源平台上,可以同时存在多个线程; 可以用线程作为CPU 的基本调度单位,使得各个线程之间可以并发执行; 对于同一个进程当中的各个线程来说,他们可以共享该进程的大部分资源。每个线程都有自己独立的CPU运行上下文和栈,这是不能共享的。21. 文件系统(1) 嵌入式文件系统概述文件系统就是操作系统中用以组织、存储、命名、使用和保护文件的一套 管理机制 。常见的嵌入式文件系统有:A、 FAT: VxWorks、 QNX、WindowsCE 等B、 NFS:网络文件系统,基于远程调用和扩展数据表示。C、 FFS:用于 Flash存储器的文件系统。(2) 文件和目录A、当一个文件

42、被创建时,必须给它指定一个名字,用户就是通过文件名来访问这个文件的。B、文件命是一个有限长度的字符串,由两部分组成:文件名和扩展名。18/71C、文件的逻辑结构主要有三种:无结构、简单的记录结构和复杂结构。现代文件系统通常采用的是无结构的形式。D、除了文件名之外,操作系统会给每个文件附加一些其他信息,称为文件的属性。E、文件的存取方法有两种:顺序存取和随机存取。F、目录也称为文件夹,它是一张表格,记录了在该目录下每个文件名和其他的一些管理信息。G、在多级目录结构中,访问文件或目录主要有两种方法:绝对路径名和相对路径名。22. 存储器系统的层次架构计算机系统的存储器被组织城一个金字塔的层次结构。

43、自上而下为: CPU 内部寄存器、芯片内部高速缓存 (cache) 、芯片外部高速缓存 (SRAM、SDRAM、 DRAM)、主存储器 (FLASH、 EEPROM)、外部存储器 ( 磁盘、光盘、 CF 卡、 SD 卡 ) 和远程二级存储器 ( 分布式文件系统、WEB服务器 ) ,6 个层次的结构。上述设备从上而下,依次速度更慢、容量更大、访问频率更小,造价更便宜。22. 高速缓存 (cache)工作原理 ( 参照教程126 页,博客画不了图) :主要利用了程序的局部性特点。19/71地址映象 是指把主存地址空间映象到cache 的地址空间。地址变换 是指当程序或数据已经装入到cache 后,

44、在实际运行过程中,把主存地址如何编程 cache 空间的地址。常用的地址映象和地址变换的方式有:( 教程 127 页)直接映象和变换:速度快,造价低,但有局限性,不能充分利用cache 的好处。组相联地址映象和变换:速度稍慢但是命中率高。全相联地址映象和变换:可以任意映射 。常用的 cache 替换算法: 轮转法和随机替换算法。高速缓存的分类:统一 cache 和独立的数据 / 指令 cache写通 cache 和写回 cache读操作分配cache 和写操作分配cache23. 存储管理单元(MMU)MMU在 CPU 和物理内存之间进行地址转换,将地址从逻辑空间映射到物理空间,这个过程称为

45、内存映射 。MMU主要完成下面的工作:A. 虚拟存储空间到物理空间的映射。B. 存储器访问权限的控制。C. 设置虚拟存储空间的缓冲特性。嵌入式系统中常常采用页式存储管理 。为了管理这些页引入了页表的概念。页表是位于内存中的表,它的每一行对应虚拟存储空间的一个页,该行包含了该虚拟内存页对应的物理内存页的地址、该页的访问权限和该页的缓冲特性等。20/71从虚拟地址到物理地址的变换过程就是查询页表的过程。由于页表存储在内存中的,整个查询过程需要付出很大的代价。根据程序局部性的特点,增加了一个小容量、 高速度的存储部件来存放当前访问需要的地址变换条目, 这个存储部件称为: 地址转换后备缓冲器 (TLB) 。当 CPU 访问内存时, 首先在 TLB 中查找需要的地址变换条目,如果该条目不存在,CPU再从内存中的页表中查询,并把相应的结果添加到TLB 中,更新它的内容。嵌入式系统中虚拟存储空间到物理空间的映射以内存块 为单位进行。 即虚拟存储空间中一块连续的存储空间被映射到物理存储空间中同样大小的一块连续存储空间。在页表和 TLB 中,每一个地址变换条目实际上记录了一个虚拟存储空间的内存块的基地址与物理存储空间相对应的一个内存块的基地址之间的对应关系。在 MMU中实现虚拟地址到物理地址的映射是通过两级页表 来实现的。禁止 MMU时,所有物理地址和虚拟地址相等,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论