【复习】第一章 嵌入式系统开发基础概述
第一章 嵌入式系统开发基础概述
嵌入式系统定义
以应用为中心,以计算机技术为基础,软件硬件可裁剪,功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
嵌入式系统三要素
嵌入、专用、计算机
嵌入式系统的特点(由三要素引出)
-
嵌入性:嵌入到对象体系中,有对象环境要求
-
专用性:软、硬件按对象要求裁剪
-
计算机:实现对象的智能化功能
嵌入式系统重要特征
- 系统内核小;
- 专用性强;
- 系统精简和高实时性os;
- 高效率地设计;
- 创新性和有效性;
- 嵌入式软件开发走向标准化;
- 嵌入式系统开发需要开发工具和环境。
嵌入式技术应用知识体系对比
总线控制器
内部总线与系统总线的连接
- 北桥:用于CPU、内存和显卡,是主板性能的主要决定因素
- 南桥:主要负责IO
嵌入式系统与通用计算机系统
嵌入式系统与单片机系统
嵌入式系统与单片机和PC相比的优势
实时系统
软实时系统
系统的宗旨是使各个任务运行得越快越好,并不要求限定某一任务必须在多长时间内完成(响应时间为数十秒)。
硬实时系统
各任务不仅要执行无误而且要做到准时(响应时间在ms或us级)
SoC
ARM、Cortex及STM32之间的关系
ARM(Advanced RISC Machine)可以理解为公司的名字、一类低功耗高性能处理器内核和架构、还可以理解为一种技术的名称;
Cortex是ARM的新一代处理器架构ARM V7架构,大胆采用新技术,放弃向前兼容,老版本程序必须经过移植才能在Cortex上运行,具体分为A、R、M三个系列;
按照ARM的经营模式,只提供IP核、公司本身不生产和销售集成电路芯片,芯片由合作伙伴完成。STM32就是意法半导体(ST Microelectronics)推出的基于Cortex内核的微处理器。
机器语言、汇编语言和高级语言各自特点及相互关系
机器语言:一种指令集的体系。依赖于硬件,可以直接执行,速度最快,不便于人类阅读和编程。
汇编语言:机器语言的符号化,不同机器有不同的机器语言,就有不同的汇编语言。是低级语言,执行效率虽然略低于机器语言,但比高级语言快。相对于机器语言来说更便于人类理解和编程,但编程效率低。
高级语言:高度封装了的编程语言(与低级语言相对)。更加接近于自然语言的一种计算机程序设计语言。编译器的作用就是把高级语言的源代码转换成对应平台的目标代码。高级语言书写比较简单,但是翻译起来比较复杂,同样的高级语言语句可以有不同的机器语言实现方法。因此,同一段高级语言经过不同的编译器编译之后会得到不同的目标程序,就是说高级语言与汇编/机器语言之间不再是一一对应的关系了。