架 软考架构师知识库 系统架构设计师 · 课件全文检索
已就绪 127 份课件 1966 页

嵌入式操作系统

第六章-嵌入式技术应用 · 20 页 · 4548 字 录播 讲义

嵌入式操作系统

项目 内容
来源 录播
章节 第六章-嵌入式技术应用
标签 讲义
页数 20
总字数 4548
原始课件 基础录播课/第六章-嵌入式技术应用/嵌入式操作系统.pdf

本文由课件自动整理,页内文字按原始讲义阅读顺序还原;[图] 表示该位置存在图示,

图示内容请对照原始课件查看。


目录


第 1 页 · 06

嵌入式操作系统

第 2 页 · 嵌入式操作系统

•

嵌入式操作系统EOS负责嵌入式系统的全部软、硬件资源的分配、任务调度、控制、协调并发活动。

•

与通用操作系统相比, EOS主要有以下特点:

(1)微型化。 EOS的运行平台不是通用计算机,而是嵌入式系统。这类系统一般没有大容量的内存,几乎没有外存,因

此, EOS必须做得小巧,以占用尽量少的系统资源。

(2)代码质量高。 在大多数嵌入式应用中,存储空间依然是宝贵的资源,这就要求程序代码的质量要高,代码要尽量精简。

(3)专业化。 嵌入式系统的硬件平台多种多样,处理器的更新速度快,每种处理器都是针对不同的应用领域而专门设计

的。因此, EOS要有很好适应性和移植性,还要支持多种开发平台。

(4)实时性强。 嵌入式系统广泛应用于过程控制、数据采集、通信、多媒体信息处理等要求实时响应的场合,因此,实时

性成为EOS的又一特点。

(5)可裁减和可配置。 应用的多样性要求EOS具有较强的适应能力,能够根据应用的特点和具体要求进行灵活配置和合

理裁减,以适应微型化和专业化的要求。

第 3 页 · 嵌入式实时操作系统

嵌入式实时系统RTOS:

•

是一种完全嵌入受控器件内部,为特定应用而设计的专用计算机系统。

•

当外界事件或数据产生时,能够接受并以足够快的速度予以处理,其处理的结果又能在规定的时间之内

来控制生产过程或对处理系统作出快速响应,并控制所有实时任务协调一致运行的嵌入式操作系统。

在嵌入式实时系统中,要求系统在投入运行前即具有确定性和可预测性。

•

可预测性是指系统在运行之前,其功能、响应特性和执行结果是可预测的;

•

确定性是指系统在给定的初始状态和输入条件下,在确定的时间内给出确定的结果。

工业控制、军事设备、航空航天等领域对系统的响应时间有苛刻的要求,这就需要使用实时系统。能提供及

时响应与高可靠性是主要特点。具体可以分为:

•

硬实时操作系统--在规定时间内必须完成操作。

•

软实时操作系统--按照任务优先级完成即可。

第 4 页 · 嵌入式实时操作系统

实时操作系统的特征:

①

高精度计时系统

计时精度是影响实时性的一个重要因素。在实时应用系统中,经常需要精确确定实时地操作某个设备或执行某个任

务,或精确的计算一个时间函数。这些不仅依赖于一些硬件提供的时钟精度,也依赖于实时操作系统实现的高精度

计时功能。

②

多级中断机制

一个实时应用系统通常需要处理多种外部信息或事件,但处理的紧迫程度有轻重缓急之分。有的必须立即作出反应,

有的则可以延后处理。因此,需要建立多级中断嵌套处理机制,以确保对紧迫程度较高的实时事件进行及时响应和

处理。

③

实时调度机制

实时操作系统不仅要及时响应实时事件中断,同时也要及时调度运行实时任务。但是,处理机调度并不能随心所欲

的进行,因为涉及到两个进程之间的切换,只能在确保“安全切换”的时间点上进行,实时调度机制包括两个方面,

一是在调度策略和算法上保证优先调度实时任务;二是建立更多“安全切换”时间点,保证及时调度实时任务。

第 5 页 · 考试真题

以下关于RTOS(实时操作系统)的叙述中,不正确的是()。

A.RTOS不能针对硬件变化进行结构与功能上的配置及裁剪

B.RTOS可以根据应用环境的要求对内核进行裁剪和重配

C.RTOS的首要任务是调度一切可利用的资源来完成实时控制任务

D.RTOS实质上就是一个计算机资源管理程序,需要及时响应实时事件和中断

答案:A

以下描述中,()不是嵌入式操作系统的特点。

A.面向应用,可以进行裁剪和移植

B.用于特定领域,不需要支持多任务

C.可靠性高,无需人工干预独立运行,并处理各类事件和故障

D.要求编码体积小,能够在嵌入式系统的有效存储空间内运行

答案:B

第 6 页 · 考试真题

以下以下关于实时操作系统(RTOS)任务调度器的叙述中,正确的是()。

A.任务之间的公平性是最重要的调度目标

B.大多数RTOS调度算法都是抢占方式(可剥夺方式)

C. RTOS调度器都采用了基于时间片轮转的调度算法

D.大多数RTOS调度算法只采用一种静态优先级调度算法

答案:B

试题分析:任务是RTOS中最重要的操作对象,每个任务在RTOS的调度下由CPU分

时执行。任务的调度目前主要有时间分片式、轮流查询式和优先抢占式三种,不同的

RTOS可能支持其中一种或几种,其中优先抢占式对实时性的支持最好。

在非实时系统中,调度的主要目的是缩短系统平均响应时间,提高系统资源的利用率,

或优化某一项指标;而实时系统中调度的目的则是要尽可能地保证每个任务满足他

们的时间约束,及时对外部请求做出响应。

第 7 页 · 考试真题

实时操作系统主要用于有实时要求的过程控制等领域。因此,在实时操作系统中,对

于来自外部的事件必须在()。

A.

一个时间片内进行处理

B.

一个周转时间内进行处理

C.一个机器周期内进行处理

D.被控对象允许的时间范围内进行处理

答案:D

第 8 页 · 07

嵌入式软件

第 9 页 · 嵌入式软件

嵌入式软件是指应用在嵌入式计算机系统当中的各种软件。

嵌入式软件按照功能分类:

•

系统软件:控制和管理嵌入式系统资源,为嵌入式应用提供支持的各种软件,如设备驱动程序、嵌入式

操作系统、嵌入式中间件等。

•

应用软件:嵌入式系统中的上层软件,定义了嵌入式设备的主要功能和用途,并负责与用户交互,一般

面向特定的应用领域,如飞行控制软件、手机软件、地图等。

•

支撑软件:辅助软件开发的工具软件,如系统分析设计工具、在线仿真工具、交叉编译器等。

第 10 页 · 嵌入式软件设计

•嵌入式软件要进行低功耗设计,主要技术有:编译优化技术、软硬件协同设计、算法优化。

•嵌入式系统软件的特点:规模较小、开发难度大、实时性和可靠性要求高、要求固化存储

[图]

第 11 页 · 嵌入式软件开发

嵌入式软件的开发可以分为几个阶段:编码、交叉编译、交叉调试。

•

编辑器:用于编写嵌入式源代码程序,从理论上来说,任何一个文本编辑器都可以用来编写源代码。各种集

成开发环境会提供功能强大的编辑器,如VS系列、eclipse、keil、CSS等。常见的独立编辑器:UE、

Source Insight、vim等。

•

编译器gcc:编译阶段的工作是用交叉编译工具处理源代码,生成可执行的目标文件。在嵌入式系统中,由

于宿主机和目标机系统不一样,需要使用交叉编译,GNU C/C++(gcc)是目前常用的一种交叉编译器,支

持非常多的宿主机/目标机组合。

•

调试器gdb:在开发嵌入式软件时,交叉调试是必不可少的一步。gdb是GNU开源组织发布的一个强大的程

序调试工具。

•

嵌入式软件调试特点:调试器运行在宿主机上,被调试程序运行在目标机上。调试器通过某种通信方式

与目标机建立联系,如串口、并口、网络、JTAG等。在目标机上一般有调试器的某种代理,能配合调

试器一起完成对目标机上运行程序的调试,可以是软件或支持调试的硬件。

第 12 页 · 嵌入式软件开发

•

交叉编译:

•

嵌入式软件开发所采用的编译为交叉编译。所谓交叉编译就是在一个平台上生成可以在另一个平台上执行的代码。

编译的最主要的工作就在将程序转化成运行该程序的CPU所能识别的机器代码,由于不同的体系结构有不同的指

令系统。因此,不同的CPU需要有相应的编译器,而交叉编译就如同翻译一样,把相同的程序代码翻译成不同

CPU的对应可执行二进制文件。

•

嵌入式系统的开发需要借助宿主机(通用计算机)来编译出目标机的可执行代码。

•

交叉调试:

•

嵌入式软件经过编译和链接后即进入调试阶段,调试是软件开发过程中必不可少的一个环节,嵌入式软件开发过

程中的交叉调试与通用软件开发过程中的调试方式有很大的差别。

•

在嵌入式软件开发中,调试时采用的是在宿主机和目标机之间进行的交叉调试,调试器仍然运行在宿主机的通用

操作系统之上,但被调试的进程却是运行在基于特定硬件平台的嵌入式操作系统中,调试器和被调试进程通过串

口或者网络进行通信,调试器可以控制、访问被调试进程,读取被调试进程的当前状态,并能够改变被调试进程

的运行状态。

第 13 页 · 嵌入式数据库系统

按照数据库存储位置的不同而进行分类是目前广泛采用的分类方法,它可以划

分为三类:

•基于内存方式(Main Memory Database System,MMDB)

•基于文件方式(File Database,FDB)

•基于网络方式(Netware Database,NDB)

第 14 页 · 嵌入式数据库系统

提示:本页以图示为主,下列文本为图中标注文字。

[图]

第 15 页 · 嵌入式数据库系统

1.使用环境的特点:

(1)设备随时移动性。嵌入式数据库主要用在移动信息设备上,设备的位置经常随使用者一

起移动。

(2)网络频繁断接。移动设备或移动终端在使用的过程中,位置经常发生变化,同时也受到

使用方式、电源、无线通信和网络条件等因素的影响。所以,一般并不持续保持网络连接,而

是经常主动或被动地间歇性断接和连接。

(3)网络条件多样化。由于移动信息设备位置的经常变化,导致它们与数据库服务器在不同

的时间可能通过不同的网络系统连接,这些网络在带宽、通信代价、网络延迟和Qos等方面可

能有所差异。

(4)通信能力不对称。由于受到移动设备资源的限制,移动设备与服务器之间的网络通信能

力是非对称的。移动设备的发送能力都非常有限,使得数据库服务器到移动设备的下行通信带

宽和移动设备到数据库服务器之间的上行带宽相差很大。

第 16 页 · 嵌入式数据库系统

2.系统组成

•

一个完整的EDBMS由若干子系统组成,包括主数据库、同步服务器、嵌入式数据库和连接网

络等几个子系统:

•

嵌入式移动数据库在实际应用中必须解决好数据的一致性(复制性)、高效的事务处理和数

据的安全性等关键问题。

[图]

第 17 页 · 考试真题

以下关于嵌入式系统开发的叙述,正确的是()。

A.宿主机与目标机之间只需要建立逻辑连接

B.宿主机与目标机之间只能采用串口通信方式

C.在宿主机上必须采用交叉编译器来生成目标机的可执行代码

D.调试器与被调试程序必须安装在同一台机器上

答案:C

第 18 页 · 考试真题

嵌入式系统设计一般要考虑低功耗,软件设计也要考虑低功耗设计,软件低功耗设计一

般采用()。

A.结构优化、编译优化和代码优化

B.软硬件协同设计、开发过程优化和环境设计优化

C.轻量级操作系统、算法优化和仿真实验

D.编译优化技术、软硬件协同设计和算法优化

答案:D

试题分析:软件设计层面的功耗控制可以从以下几个方面展开:

①软硬件协同设计,即软件的设计要与硬件的匹配,考虑硬件因素。

②编译优化,采用低功耗优化的编译技术。

③减少系统的持续运行时间,可从算法角度进行优化。

④用“中断”代替“查询”。

⑤进行电源的有效管理。

第 19 页 · 考试真题

基于网络的数据库系统(Netware Database System,NDB)是基于4G/5G的移动通信之上,在逻辑上可以把嵌

入式设备看作远程服务器的一个客户端。以下有关NDB的叙述中,不正确的是()。

A. NDB主要由客户端、通信协议和远程服务器等三部分组成

B. NDB的客户端主要负责提供接口给嵌入式程序,通信协议负责规范客户端与远程服务器之间的通信,远

程服务器负责维护服务器上的数据库数据

C. NDB具有客户端小、无需支持可剪裁性、代码可重用等特点

D. NDB是以文件方式存储数据库数据。即数据按照一定格式储存在磁盘中,使用时由应用程序通过相应的

驱动程序甚至直接对数据文件进行读写

答案:D

第 20 页 · T H E E N D

功不唐捐,玉汝于成!

开

启

新

征

程