嵌入式操作系统复习

嵌入式操作系统复习
嵌入式操作系统复习

μC/OS-II

?Micrium公司产品

?公开源码(教育免费,商业收费)

?实时操作系统

?基于优先级抢占式多任务调度

?功能不完善:多任务管理和简单内存管理

?内核精简:几KB~几十KB

?可裁减性好、可移植性好

?最新版本2.86

?工具链:GCC, Keil MDK-ARM, IAR EWARM等

第一章

操作系统:一组控制和管理计算机软、硬件资源,为用户提供便捷使用计算机的程序的集合,是连接硬件和软件的桥梁

作用:OS作为用户与计算机之间的接口;OS作为计算机系统资源的管理者;

对资源的管理体现在:

(1)处理机管理——用于分配和控制处理机

(2)存储器管理——主要负责内存的分配和回收

(3)I/o设备管理——负责I/O设备的分配与操纵

(4)文件管理——负责文件的存取、共享和保护。

特点:并发性、共享性、虚拟性和不确定性(异步);

构成:任务管理、存储器管理、设备管理、文件管理、用户接口

1、什么是嵌入式操作系统

嵌入式操作系统(E OS)

一种支持嵌入式系统应用的操作系统软件,是嵌入式系统极为重要的组成部分

通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面等具有通用操作系统的基本特点

能够有效管理越来越复杂的系统资源

能够把硬件虚拟化,简化的驱动程序移植和维护

能够提供库函数、驱动程序、工具集以及应用程序

2、嵌入式操作系统的优缺点

?优点(利大于弊)

程序的设计和扩展变得容易,移植性好

任务分析成模块,简化应用程序的设计

对实时性要求苛刻的事件得到了快速、可靠的处理

通过有效的系统服务,使得系统资源得到更好的利用

?缺点

额外的存储开销

2~5%的CPU额外负荷

内核的费用

3、嵌入式操作系统的构成

1)初始化工作

a)应用初始化:初始化任务的运行环境

b)请求分配内存

c)创建任务

d)创建队列

e)创建管道

f)创建事件组

g)创建信号量

h)注册中断处理程序

2)多任务管理

任务管理是嵌入式操作系统的核心

a)任务控制例程

b)任务调度

c)任务调度策略

d)任务状态设置

e)任务通信

3)内存管理

4)I/O管理

5)文件系统

6)图形用户接口

7)备注:操作系统内核包括:任务管理、内存管理

4、嵌入式系统的组成

?嵌入式系统一般由嵌入式硬件和软件组成

?硬件以微处理器为核心集成存储器和系统专用的输入/输出设备

?软件包括:初始化代码及驱动、嵌入式操作系统和应用程序等,这些软件有机地结合在一起,形成系统特定的一体化软件。

5、嵌入式操作系统与通用操作系统的区别

?嵌入式系统是不同于通用计算机系统的一种专用计算机系统

?不以独立的物理设备的形态出现,即:它没有一个统一的外观,它的部件根据主体设备以及应用的需要,嵌入在该设备的内部,发挥着运算、处理、存储以及控制等作用。

书本P7 区别体现在:

(1)地址空间

(2)内存管理

(3)应用方式

课件:

通用计算机与嵌入式系统对比

6、嵌入式系统的一些特点

嵌入式操作系统在嵌入式系统中并不是必须的

1、嵌入式系统通常是形式多样、面向特定应用的

1)一般用于特定的任务,其硬件和软件都必须高效率地设计,量体裁衣、

去除冗余,而通用计算机则是一个通用的计算平台。

2)它通常都具有低功耗、体积小、集成度高等特点,能够把通用微处理器

中许多由板卡完成的任务集成在芯片内部。

3)嵌入式软件是应用程序和操作系统两种软件的一体化程序。

2、嵌入式系统得到多种类型的处理器和处理器体系结构的支持

1)通用计算机采用少数的处理器类型和体系结构,而且主要掌握在少数大公司

手里。

2)嵌入式系统可采用多种类型的处理器和处理器体系结构。

3)在嵌入式微处理器产业链上,IP设计、面向应用的特定嵌入式微处理器的设

计、芯片的制造已相成巨大的产业。大家分工协作,形成多赢模式。

4)有上千种的嵌入式微处理器和几十种嵌入式微处理器体系结构可以选择。

3、嵌入式系统通常极其关注成本

4、嵌入式系统有实时性和可靠性的要求

1)一方面大多数实时系统都是嵌入式系统

2)另一方面嵌入式系统多数有实时性的要求,软件一般是固化运行或直接加载

到内存中运行,具有快速启动的功能。并对实时的强度要求各不一样,可分

为硬实时和软实时。

3)嵌入式系统一般要求具有出错处理和自动复位功能,特别是对于一些在极端

环境下运行的嵌入式系统而言,其可靠性设计尤其重要。

4)在大多数嵌入式系统的软件中一般都包括一些机制,比如硬件的看门狗定时

器,软件的内存保护和重启动机制。

5、嵌入式系统使用的操作系统一般是适应多种处理器、可剪裁、轻量型、实时可靠、

可固化的嵌入式操作系统

1)由于嵌入式系统应用的特点,像嵌入式微处理器一样,嵌入式操作系统也是

多姿多彩的。

2)大多数商业嵌入式操作系统可同时支持不同种类的嵌入式微处理器。

3)可根据应用的情况进行剪裁、配置。

4)嵌入式操作系统规模小,所需的资源有限如内核规模在几十KB。

5)一般包括一个实时内核,其调度算法一般采用基于优先级的可抢占的调度算

法。

6)目前一些操作系统还提供了HA(High Available)机制。

7)嵌入式操作系统能与应用软件一样固化运行。

6、嵌入式系统开发需要专门工具和特殊方法

a)多数嵌入式系统开发意味着软件与硬件的并行设计和开发,其开发过程一般分为几

个阶段:

1)产品定义

2)软件与硬件设计与实现

3)软件与硬件集成

4)产品测试与发布

5)维护与升级

?由于嵌入式系统资源有限,一般不具备自主开发能力,产品发布后用户通常也不能对其中的软件进行修改,必须有一套专门的开发环境。

?该开发环境包括专门的开发工具(包括设计、编译、调试、测试等工具),采用交叉开发的方式进行

7、嵌入式操作系统的特点P6

1)可裁剪性

2)强实时性

3)可移植性

4)可扩展性

8、μC/OS-Ⅱ的特点

1)有源代码源代码公开的实时操作系统

2)可移植性

μC/OS-Ⅱ的源代码使用一致性很强的ANSI C编写,与微处理器相关的代码使用

汇编语言编写的。

3)可固化

只要是具备合适的系列软件工具,就可以将μC/OS-Ⅱ嵌入到产品中作为产品的

一部分

4)可裁剪

用户可以在应用程序中通过语句#define constants来定义所需的μC/OS-Ⅱ功能

模块,以减少不必要的存储空间的开支

5)可剥夺性

μC/OS-Ⅱ是完全可剥夺的实时型内核,即μC/OS-Ⅱ总是运行就绪条件下优先

级最高的任务

6)多任务

μC/OS-Ⅱ可以管理64个任务,支持56个用户任务,8个系统保留任务。赋予

每个任务的优先级必须是不同的,这意味着μC/OS-Ⅱ不支持时间片轮转调度算

7)可确定性

绝大多数μC/OS-Ⅱ的函数调用和服务执行时间具有可确定性。用户可以知道执

行了多长时间

8)任务栈

μC/OS-Ⅱ的每个任务都有自己的任务栈,它允许每个任务有不同的栈空间

9)系统服务

μC/OS-Ⅱ提供很多系统服务,如信号量、事件标志、消息邮箱、消息队列、块

儿大小固定的内存申请与释放及时间管理函数等。

10)中断管理

中断可以使正在执行的任务暂时挂起。如果μC/OS-Ⅱ优先级更高的任务被该中

断唤醒,则高优先级的任务在中断嵌套全部退出后立即执行,中断嵌套的数量

可以达到255层。

9、嵌入式系统、嵌入式操作系统的区别

第二章

1、嵌入式软件的交叉开发环境

?交叉开发环境是指用于嵌入式软件开发的所有工具软件的集合,一般包括文本编辑器、交叉编译器、交叉调试器、仿真器、下载器等工具。

?交叉开发环境由宿主机和目标机组成,宿主机与目标机之间在物理连接的基础上建立起逻辑连接。

宿主机(Host):是用于开发嵌入式系统的计算机。一般为PC机(或者工作站),具备丰富的软硬件资源,为嵌入式软件的开发提供全过程支持。

目标机(Target):即所开发的嵌入式系统,是嵌入式软件的运行环境,其硬件软件是为特定应用定制的。

在开发过程中,目标机端需接收和执行宿主机发出的各种命令如设置断点、读内存、

写内存等,将结果返回给宿主机,配合宿主机各方面的工作。

?物理连接和逻辑连接

物理连接是指宿主机与目标机通过物理线路连接在一起,连接方式主要有三种:串口、以太口和OCD(On Chip Debug)方式如JTAG、BDM等。

物理连接是逻辑连接的基础。

逻辑连接指宿主机与目标机间按某种通信协议建立起来的通信连接,目前逐步形成了一些通信协议的标准。

2、交叉编译技术

把在宿主机上编写的高级语言程序编译成可以运行在目标机上的代码,即在宿主机上能够编译生成另一种CPU(嵌入式微处理器)上的二进制程序。

3、具体有哪些调试技术,有哪些特征、区别

?交叉调试器:

是指调试程序和被调试程序运行在不同机器上的调试器, 调试器通过某种方式能控制目标机上被调试程序的运行方式,并且通过调试器能查看和修改目标机上的内存、寄存器以及被调试程序中的变量等。

?非交叉调试:

是指仿真开发方式,用软件模拟目标机硬件资源环境来进行调试软件。

交叉调试方式

Crash and Burn

Rom Monitor

Simulator方式(非交叉)

交叉开发的缺点:

?硬件支持必须有目标机或评估板

?易使用性普通编程人员不熟悉

?廉价性成本高

?可移植性、可扩展性不高

?团队开发较难

?开发周期较长

第三章

1、任务

指拥有所有CPU资源的简单程序。

实时应用程序的设计与实现过程,主要包括如何把问题分割成多个任务,每个任务都是整个应用的某一部分,每个任务被赋予一定的优先级,有一套CPU寄存器和栈空间

2、任务的管理

典型的实时系统中,每个任务都是一个无限的循环。

每时每刻每个任务都处在以下5种状态之一,这5种状态是休眠态,就绪态、运行态、挂起态和被中断态。

任务的五个状态

睡眠态、就绪态、运行态、等待态、中断服务状态。

任务状态的转换。

?任务控制块OS_tcb,主要包括:

任务堆栈指针

状态

优先级

任务表位置

任务链表指针等

?所有的任务控制块分为两条链表

空闲链表

使用链表

任务切换及上下文切换的区别,任务切换是否包含上下文切换

任务调度的方式剥夺和非剥夺

什么是剥夺什么是非剥夺

什么是可重入代码

模块与模块是否共享,如果有共享则要考虑执行顺序

优先级反转是什么,如何解决优先级反转

同步、互斥(消息邮箱、信号量之类的,在后面章节)

第四章

μC/OS-Ⅱ的优缺点,如何运行,有哪些特点、实时性强强在哪里

μC/OS-Ⅱ的结构分成几块(书中有图)

具体函数的调用

与应用相关的(配置文件、?)

整个内核结构要清楚

重点:μC/OS-Ⅱ里面的任务队列如何刮泥、如何调度、就绪

如何实现,如何查找优先级,如何删除行、列

入队、出队、选择最高优先级

具体任务切换的工作流程

中断,具体函数的使用

嵌套中断如何实现

中断服务程序

中断处理的流程

μC/OS-Ⅱ的初始化过程,必须做哪些工作

(任务控制块、存储管理模块等、还有变量等的初始化

任务的建立、空闲任务

实时操作系统中的任务调度算法

图、谁先执行谁后执行

(执行时间/周期时间)≤1 则说明是可调度的

第五章

有关任务管理所涉及到的接口,基本的应用

创建一个任务首先要

μC/OS-Ⅱ有哪些状态

任务间的通信问题,所有的同步以事件为基础

如何从邮箱中

如何建立消息队列、如何生成消息队列

互斥信号量如何解决优先级反转

如何解决优先级反转

第七章

内存管理采用什么方式

具体的数据结构

时钟的延时操作

第二次课:

重点:

作业:

1、画出μC/OS-II中的中断处理过程图。

2、简述μC/OS-II中的中断服务子程序的功能。

3、列举5项可以提高嵌入式系统实时效果的内核技术。

4、简述运用查表法将某就绪的任务插入就绪任务表。比如任务优先级为29。

5、简述运用查表法选出优先级最高的任务的步骤。

6、简述将某就绪的任务移出就绪任务表。比如任务优先级为37。

习题:

?请运用相关算法,实现以下操作:

1、从等待任务列表中删除一个优先级为26任务

2、在等待任务列表中查找最高优先级的任务(假定当前OSEventGrp的值是112)

3、将一个任务插入到事件的等待任务列表中(假定该任务优先级为18)

提示:

(1)写出算法的每一步表达式的值

(2)参考课件中查表算法及表值

? 1. 调用OSSemCreate(10)创建一个信号量,给出相应信号量事件的数据结构示意图。

2.一个信号量当前计数器的值为4,且有5个等待任务,等待任务的优先级分别为5,

10,14,19,52,给出相应信号量事件的数据结构示意图。

3.用信号量实现一个生产者一个消费者共享一个缓冲区的同步问题。

作业:

编写一个应用程序,在一个任务中,每隔2秒钟,通过调用系统函数OSTimeGet( ) 获取当前绝对时钟,当时钟到达界限时,通过调用OSTimeSet( )进行绝对时钟的清零。

嵌入式系统移植+心得

嵌入式系统作为近年来新兴的且发展很快的学科,它的应用越来越受到广大技术人员的重视。尤其起可移植性,显著的区别了通用操作系统。一款嵌入式操作系统通常运行在不同体系结构的处理器和开发板上,极大的方便了开发者开发与应用,节约了成本。 嵌入式操作系统作为移植支持嵌入式系统应用的操作系统软件,被广泛的运用于不同应用领域。纵观嵌入式系统40多年的历史,从无操作系统的嵌入式算法阶段到简单监控式的实时操作系统,一步又一步的到现在的以Internet为标志的嵌入式系统,一批又一批的先辈为其努力而奋斗。科技的革新,带动着社会的发展,人类的进步。大数据的时代必定属于我IT 人。以下我们聊一聊嵌入式系统及其移植性。 嵌入式操作系统大体分为商用型和免费型。 商用型主要是WindowsCE。Psos.os-9.qnx等其价格较为昂贵,开发成本高,广泛运用于通信。军事。航天等高端技术领域 免费型主要为Linux等主要运用于没有存储器管理单元的处理器而设置。 嵌入式基本操作共四步 主机和目标机的连接方式; UARA最经典90%的板子上,都支持的方式叫异部串行接口,也就是我们所说的串口。 USB串行接口 TCP/IP网络接口 Debug Jtag调试接口 补充说明 1.对于串口,通常用的有串口调试助手,putty工具等,工具很多,功能都差不多,会用一两款就可以; 2.对于USB线,当然必须要有USB的驱动才可以,一般芯片公司会提供,比如对于三星的芯片,USB下载主要由DNW软件来完成; 3.对于网线,则必须要有网络协议支持才可以 安装交叉编译器 方法一:分步编译和安装交叉编译工具链所需要的库和源代码,最终生成交叉编译工具链。该方法相对比较困难,适合想深入学习构建交叉工具链的读者。如果只是想使用交叉工具链,建议使用下列的方法二构建交叉工具链。 方法二:通过Crosstool-ng脚本工具来实现一次编译,生成交叉编译工具链,该方法相对于方法一要简单许多,并且出错的机会也非常少,建议大多数情况下使用该方法构建交叉编译工具链。 方法三:直接通过网上下载已经制作好的交叉编译工具链。该方法的优点不用多说,当然是简单省事,但与此同时该方法有一定的弊端就是局限性太大,因为毕竟是别人构建好的,也就是固定的,没有灵活性,所以构建所用的库以及编译器的版本也许并不适合你要编译的程序,同时也许会在使用时出现许多莫名其妙的错误 搭建主机

嵌入式系统课程复习题

1、何谓嵌入式系统?嵌入式系统与传统计算机有何区别?嵌入式系统是指以应用为中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。嵌入式系统(简称“嵌”)和传统计算机(简称“传”)的主要区别包括以下几点:形式与类型:传:实实在在的计算机。按其体系结构、运算速度和规模可分为大型机,中型机,小型机和微机嵌:“看不见”的计算机,形式多样,应用领域广泛,按应用进行分类。组成:传:通用处理器、标准总线和外设、软硬件相对独立嵌:面向特定应用的微处理器,总线和外设一般集成在处理器内部,软硬件紧密结合。系统资源:传:系统资源充足,有丰富的编译器、集成开发环境、调试器等嵌:系统资源紧缺,没有编译器等相关开发工具。开发方式:传:开发平台和运行平台都是通用计算机嵌:采用交叉编译方式,开发平台一般是通用计算机,运行平台是嵌入式系统。二次开发性:传:应用程序可重新编程嵌:一般不能重新编程开发。发展目标:传:编程功能电脑,普遍进入社会嵌:变为专用电脑,实现“普及计算”。 2、主流的嵌入式操作系统有哪几种?各有何特点?①传统的RTOS,特点:提供了高效的实时任务调度、中断管理、实时的系统资源以及实时的任务间通信。②嵌入式Linux操作系统,特点:免费、开源、支持软件多等。③Android系统,特点:不存在任何以往阻碍移动产业创新的专利障碍,是一个为移动终端构建的真正开放和完整的系统软件。④Windows CE 嵌入式操作系统,特点:具有模块化、结构化和基于Win32应用程序接口和与处理器无关等⑤μC/OS-Ⅱ实时操作系统,特点:包括了一个操作系统最基本的一些特性,并且是一个代码完全开放的实时操作系统,简单明了的结构和严谨的代码风格。 3、主流的嵌入式微处理器有哪几种?各有何特点?①ARM,特点:体积小,低功耗,低成本,高性能;能很好地兼容8位/16位器件;大量使用后寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行高效;指令长度固定。②MIPS,特点:尽量利用软件办法避免流水线中的数据相关问题。③PowerPC,特点:有非常强的嵌入式表现,因为它具有优异的性能、较低的能量损耗以及较低的散热量④x86,特点:对以前的处理其保持了良好的兼容性,但是限制了CPU性能的提高。⑤Motorola 68000,特点:是CISC结构. 4、例举你在生活中使用过的嵌入式系统,并分析其系统构成。 5、从当前人们的生活、工作、娱乐等方面来看,未来嵌入式系统的发展趋势如何?你认为未来将会出现哪些嵌入式产品?网络化,信息化,智能化,网络互连,移动互联成为必然趋势!实现手写输入、语音输入、语音播报的一班嵌入式产品。 第2 章ARMCortexM3 微处理器基础 1、ARM 微处理器有什么特点?ARM 微处理器常用于哪些领域?特点:体积小,低功耗,低成本,高性能;能很好地兼容8位/16位器件;大量使用后寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行高效;指令长度固定。领域: ①工业控制领域②无线通讯③网络应用④消费类电子产品⑤成像和安全产品 2、简述 CM3 是如何处理异常的。1、CM收到中断服务请求2、CM判断向量表是否重映射,并从对应的中断入口取址 3、CM内核将MSP装入SP寄存器。并修改CONTROL[1]为0。 4、CM 内核进入特权级,并修改CONTROL[0]为0 5、CM内核修改ICSR、SHCSR、XPSR等寄存器 6、CM内核根据CONTROL[1]将R0-R3、R12、LR、PC、XPSR寄存器存入MSP或PSP栈 7、CM内核将LR修改为EXC_RETURN的特殊值 8、CM内核调入中断向量表,跳转至中断入口处。 3、简要说明 CM3 处理器的存储器系统特点及映射分区。特点:存储器映射是预定义的,并且规定了那个位置使用哪条总线。支持位带操作,实现了在特殊的存储器区域对单一比特的原子操作。分区:代码区,片上SRAM区,片上外设区,片外RAM去和片外外设区,私有外设区,芯片商指定区。

嵌入式操作系统实验指导书1

嵌入式操作系统实验 实验一 Linux常用命令 一.实验目的 1. 熟悉VMware Workstation虚拟机的使用。 2. 熟悉ubuntu操作系统。 3. 掌握常用的Linux命令。 二.实验设备 硬件:PC机。 软件:VMware Workstation虚拟机、ubuntu操作系统。 三.实验内容 1.基于虚拟机的Linux操作系统的使用。 2.文件与目录相关命令的使用。 3.磁盘管理与维护命令的使用。 4.系统管理与设置命令的使用。 5.网络相关命令的使用。 6.压缩备份命令的使用。 四.实验步骤 1.基于虚拟机的Linux操作系统的使用 (1)启动VMware Workstation应用程序,启动windows以后,点击开始→程序→VMware→VMware Workstation,出现如图1所示界面。

图1 启动VMware Workstation (2)点击菜单File Open选择安装好的Linux虚拟机文件,或者直接点击Start this virtual machine启动Linux操作系统。 (3)启动系统后需要输入用户名和密码,如图2所示,这里用户名为root,密码为“123456”。 图2输入用户名和密码 (3)启动终端,成功进入系统后,选择应用程序->系统工具->终端,如图3所示。 图3 启动终端 (4)在终端中执行Linux命令,终端运行以后,就可以在这里输入Linux命令,并按回车键执行,如图4所示。

图4运行Linux命令 2.文件与目录相关命令的使用 理解12个常用的文件与目录相关命令的使用,完成如下练习。 (1)查询/bin目录,看一看有哪些常用的命令文件在该目录下:ll /bin (2)进入/tmp目录下,新建目录myshare: cd /tmp mkdir myshare ls -ld myshare/ (3)用pwd命令查看当前所在的目录 pwd (4)新建testfile文件 touch testfile ls -l (5)设置该文件的权限模式 chmod 755 testfile ls -l testfile (6)把该文件备份到/tmp/myshare目录下,并改名为testfile.bak。 cp testfile myshare/testfile.bak ls -l myshare/ (7)在/root目录下为该文件创建1个符号连接。 ln -s /tmp/testfile /root/testfile.ln ls -l /root/testfile.ln (8)搜索inittab文件中含有initdefault字符串的行。 cat /etc/inittab | grep initdefault 3.磁盘管理与维护命令的使用 理解2个磁盘管理与维护命令,完成如下练习。 (1)Linux下使用光盘步骤: ?确认光驱对应的设备文件:ll /dev/cdrom ?挂载光盘:mount -t iso9660 /dev/cdrom testdir ?查询挂载后的目录:ll /media/cdrom ?卸载光盘(umount testdir)umount /dev/cdrom (2)Linux下USB设备的使用 ?挂载U盘,看看系统认出的盘(或者使用#fdisk -l)。cat /proc/partitions

arm嵌入式系统基础教程课后答案.doc

arm 嵌入式系统基础教程课后答案【篇一:arm 嵌入式系统基础教程习题答案周立功】 /p> 1 、举出3 个书本中未提到的嵌入式系统的例子。 答:红绿灯控制,数字空调,机顶盒 2、什么叫嵌入式系统 嵌入式系统:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的 专用计算机系统。 3、什么叫嵌入式处理器?嵌入式处理器分为哪几类? 嵌入式处理器是为完成特殊的应用而设计的特殊目的的处理器。 嵌入式微处理器(embedded microprocessor unit, empu) 嵌入式微控制器(microcontroller unit, mcu) 嵌入式dsp 处理器(embedded digital signal processor, edsp) 嵌入式片上系统(system on chip) 4、什么是嵌入式操作系统?为何要使用嵌入式操作系统? 是一段在嵌入式系统启动后首先执行的背景程序,首先,嵌入式实 时操作系统提高了系统的可靠性。其次,提高了开发效率,缩短了 开发周期。再次,嵌入式实时操作系统充分发挥了32 位cpu 的多任务潜力。 第二章 1、嵌入式系统项目开发的生命周期分哪几个阶段?各自的具体任务 是什么? 项目的生命周期一般分为识别需求、提出解决方案、执行项目和结 束项目 4 个阶段。识别需求阶段的主要任务是确认需求,分析投资 收益比,研究项目的可行性,分析厂商所应具备的条件。 提出解决方案阶段由各厂商向客户提交标书、介绍解决方案。 执行项目阶段细化目标,制定工作计划,协调人力和其他资源;定 期监控进展,分析项目偏差,采取必要措施以实现目标。 结束项目阶段主要包括移交工作成果,帮助客户实现商务目标;系 统交接给维护人员;结清各种款项。 2、为何要进行风险分析?嵌入式项目主要有哪些方面的风险? 在一个项目中,有许多的因素会影响到项目进行,因此在项目进行 的初期,在客户和开发团队都还未投入大量资源之前,风险的评估

(完整word版)嵌入式系统复习及答案

一、单项选择题 1、下面关于哈佛结构描述正确的是(A )。 A、程序存储空间与数据存储空间分离 B、存储空间与IO空间分离 C、程序存储空间与数据存储空间合并 D、存储空间与IO空间合并 2、下面哪一种工作模式不属于ARM特权模式(A )。 A、用户模式 B、管理模式 C、软中断模式 D、FIQ模式 3、ARM9TDMI的工作状态包括( D )。 A、测试状态和运行状态 B、挂起状态和就绪状态 C、就绪状态和运行状态 D、ARM状态和Thumb状态 4、指令“LDMIA R0!, {R1, R2, R3, R4}”的寻址方式为( C )。 A、立即寻址 B、寄存器间接寻址 C、多寄存器寻址 D、堆栈寻址 5、对寄存器R1的内容乘以4的正确指令是( C )。 A、LSR R1,#2 B、LSL R1,#2 C、MOV R1,R1, LSL #2 D、MOV R1,R1, LSR #2 6、下面指令执行后,改变R1寄存器内容的指令是( D )。 A、TST R1,#2 B、ORR R1,R1,R1 C、CMP R1,#2 D、EOR R1,R1,R1 7、下面哪一种功能单元不属于I/O接口电路。( D ) A、USB控制器 B、UART控制器 C、以太网控制器 D、LED 8、下面哪个操作系统是嵌入式操作系统。(B ) A、Red-hat Linux B、μCLinux C、Ubuntu Linux D、SUSE Linux 9、使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A、宿主机 B、银河麒麟操作系统 C、目标机 D、交叉编译器 10、下面哪个系统不属于嵌入式系统( D )。 A、MP3播放器 B、GPS接收机 C、“银河玉衡”核心路由器 D、“天河一号”计算机系统

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 姓名:安磊 班级:计科0901 学号: 0909090310

指导老师:宋虹

目录 课程设计内容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------6 文件系统的层次结构和功能模块 ---------------------6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录-------------------------------------------------- 12

课程设计内容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在内存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的内容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小内核可编译至2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统内核,它仅仅包含了任务调度,任务管理,时间管理,内存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全 可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时内核,并在这个内核之上提供最基本的系统服务,如信号量,邮箱,消息队列,内存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

ARM嵌入式系统基础教程复习

《嵌入式系统基础教程》复习 1.什么是嵌入式系统?其特点有些什么? 答:嵌入式系统是“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。” 特点:1)是专用的计算机系统,用于特定的任务; 2)资源较少,可以裁减; 3) 功耗低,体积小,集成度高,成本低; 4)使用实时操作系统; 5) 可靠性要求更高,具有系统测试和可靠性评估体系; 6)运行环境差异大 7)大部分程序固化在ROM中; 8) 较长的生命周期; 9)嵌入式微处理器通常包含专用调试电路 2.嵌入式系统的BooTLoader的功能是什么? 答:BootLoader是系统加电后、操作系统内核或用户应用程序运行之前,首先必须运行的一段程序代码。通过这段程序,为最终调用操作系统内核、运行用户应用程序准备好正确的环境。(对于嵌入式系统来说,有的使用操作系统,也有的不使用操作系统,但在系统启动时都必须运行BootLoader,为系统运行准备好软硬件环境。) 3.目前嵌入式操作系统有哪些? 答:1)μC/OS-II 嵌入式操作系统内核;2)VxWorks嵌入式实时操作系统;3)WinCE操作系统;4)Linux操作系统;5)Symbian操作系统 4.构造嵌入式开发环境有哪几种形式? 答:1)交叉开发环境;2)软件模拟环境;3)评估电路板 5.嵌入式系统开发的基本流程? 答:1)系统定义与需求分析; 2)系统设计方案的初步确立; 3)初步设计方案性价比评估与方案评审论证; 4)完善初步方案、初步方案实施; 5)软硬件集成测试; 6)系统功能性能测试及可靠性测试。 6.什么是可编程片上系统? 答:用可编程逻辑技术把整个系统放到一块硅片上,称作可编程片上系统SOPC。它是一种特殊的嵌入式系统,首先它是SOC,即由单个芯片实现整个系统的主要逻辑功能,具有一般SOC基本属性;其次,它又具备软硬件在系统可编程的功能,是可编程系统,具有可裁剪、可扩充、可升级等灵活的设计方式。 7.有时要使用Thumb技术的原因 答:(Thumb指令集是把32位的ARM指令集的一个子集重新编码后形成的一个特殊的16位指令集。)在性能和代码大小之间取得平衡,在需要较低的存储代码时采用Thumb指令系统用Thumb指令编写最小代码量的程序(能够很好的解决代码长度的问题),却取得以ARM代码执行的最好性能,可以带来低功耗,小体积,低成本。 8.ARM处理器的工作模式有哪几种? 答:1)正常用户模式(user); 2)快速中断模式(fiq); 3)普通中断模式(irq); 4)操作系统保护模式(svc)或管理模式; 5)数据访问中止模式(abt); 6)处理未定义指令的未定义模式(und); 7)运行特权级的操作系统任务的系统模式(sys)。 9.寄存器R13,R14,R15的专用功能各是什么? 答:1)寄存器R13保存堆栈指针SP;

嵌入式系统学习心得

嵌入式系统学习心得 首先我声明,我是基于嵌入式系统平台级设计的,硬件这个方向我相对来讲比较有发言权,如果是其它方面所要具备的基本技能还要和我们培训中心其它专业级讲师沟通。他们的方面上我只能说是知道些,但不是太多,初级的问题也可以问我。 对于硬件来讲有几个方向,就单纯信号来分为数字和模拟,模拟比较难搞,一般需要很长的经验积累,单单一个阻值或容值的精度不够就可能使信号偏差很大。因此年轻人搞的较少,随着技术的发展,出现了模拟电路数字化,比如手机的modem射频模块,都采用成熟的套片,而当年国际上只有两家公司有此技术,自我感觉模拟功能不太强的人,不太适合搞这个,如果真能搞定到手机的射频模块,只要达到一般程度可能月薪都在15k以上。 另一类就是数字部分了,在大方向上又可分为51/arm的单片机类,dsp类,fpga类,国内fpga的工程师大多是在ic设计公司从事ip核的前端验证,这部分不搞到门级,前途不太明朗,即使做个ic前端验证工程师,也要搞上几年才能胜任。dsp硬件接口比较定型,如果不向驱动或是算法上靠拢,前途也不会太大。而arm 单片机类的内容就较多,业界产品占用量大,应用人群广,因此就业空间极大,而硬件设计最体现水平和水准的就是接口设计这块,这是各个高级硬件工程师相互pk,判定水平高低的依据。而接口设计这块最关键的是看时序,而不是简单的连接,比如pxa255处理器

i2c要求速度在100kbps,如果把一个i2c外围器件,最高还达不到100kbps的与它相接,必然要导致设计的失败。这样的情况有很多,比如51单片机可以在总线接lcd,但为什么这种lcd就不能挂在arm的总线上,还有arm7总线上可以外接个winband的sd卡控制器,但为什么这种控制器接不到arm9或是xscale处理器上,这些都是问题。因此接口并不是一种简单的连接,要看时序,要看参数。一个优秀的硬件工程师应该能够在没有参考方案的前提下设计出一个在成本和性能上更加优秀的产品,靠现有的方案,也要进行适当的可行性裁剪,但不是胡乱的来,我遇到一个工程师把方案中的5v变1.8v的dc芯片,直接更换成ldo,有时就会把cpu烧上几个。前几天还有人希望我帮忙把他们以前基于pxa255平台的手持gps设备做下程序优化,我问了一下情况,地图是存在sd卡中的,而sd卡与pxa255的mmc控制器间采用的spi接口,因此导致地图读取速度十分的慢,这种情况是设计中严重的缺陷,而不是程序的问题,因此我提了几条建议,让他们更新试下再说。因此想成为一个优秀的工程师,需要对系统整体性的把握和对已有电路的理解,换句话说,给你一套电路图你终究能看明白多少,看不明白80%以上的话,说明你离优秀的工程师还差得远哪。其次是电路的调试能力和审图能力,但最最基本的能力还是原理图设计pcb绘制,逻辑设计这块。这是指的硬件设计工程师,从上面的硬件设计工程师中还可以分出ecad工程师,就是专业的画pcb板的工程师,和emc设计工程师,帮人家解决emc的问题。硬件工程师再往上就是板级测试工程师,就是c语功底很好的硬件工程师,在电路板调试过程中

嵌入式操作系统精彩试题集61374

第一章嵌入式系统概论 一.填空 1. 嵌入式系统是以嵌入式应用为目的、以计算机技术为基础的计算机系统。 2. 计算机系统按应用可以分为通用计算机系统和嵌入式计算机系统。 3. 嵌入式系统按软件结构可分为嵌入式单线程系统和嵌入式事件驱动系统。 4. 嵌入式系统按是否具有实时性能可分为嵌入式非实时系统和嵌入式实时系统。 5. 嵌入式实时系统除具有嵌入式系统的基本特征外,还具实时性和可靠性的重要特点。 6. 嵌入式系统的硬件架构是以嵌入式处理器为中心,由存储器,I/O设备,通信模块以及电源等必要的辅助接口组成。 7. 嵌入式系统的软件通常固态化存储在ROM、FLASH或NVRAM中。 8. 嵌入式系统的开发由于受到系统资源开销的限制,通常采用交叉开发环境。 9. 嵌入式系统开发采用的交叉开发环境是由宿主机和目标机组成的。 10. 嵌入式系统的设计是使用一组物理硬件和软件来完成所需功能的过程。 二.选择 1. 以下哪一项不属于嵌入式操作系统(C) A.VxWorks B. WinCE C. BSD D. uClinux 2. 以下关于嵌入式系统说确的是(A) A.以开发为中心 B 对实时,成本,功耗要求严格 C.软硬件协同 D 软件可剪裁 3. 以下关于嵌入式系统说确的是(A) A.嵌入的系统中可以共存多个嵌入式系统 B.对高性能要求严格

C.软硬件缺乏协同 D.不要时性 4. 对响应时间有严格要求的嵌入式系统是(A) A.嵌入式实时系统 B.嵌入式多线程系统 C.嵌入式多核系统 D.嵌入式轮转询问系统 5. 以下哪一项属于嵌入式系统不具备的特点(B) A.采用专用处理器 B. 跨平台可移植 C.软硬件协同一体化 D.小型化与有限资源 6. 嵌入式系统硬件的核心是(B) A.存储器 B.嵌入式微处理器 C.嵌入式微控制器 D.BSP 7. 嵌入式系统的软件部分不包括(A) A.DSP B.嵌入式操作系统 C.设备驱动程序D.应用程序 8. 对性能要求高的嵌入式系统是(C) A.嵌入式实时系统 B.嵌入式多线程系统 C.嵌入式多核系统 D.嵌入式轮转询问系统 9. 嵌入式应用软件的开发阶段不包括(D) A.交叉编译和 B.开发环境的建立 C.联机调试 D.应用程序模块加载 10. 为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都保存在(A) A.存储器芯片 B.磁盘 C.cache D.CDROM

嵌入式操作系统实验报告

中南大学信息科学与工程学院实验报告 :安磊 班级:计科0901 学号: 0909090310 指导老师:宋虹

目录 课程设计容 ----------------------------------- 3 uC/OS操作系统简介 ------------------------------------ 3 uC/OS操作系统的组成 ------------------------------ 3 uC/OS操作系统功能作用 ---------------------------- 4 uC/OS文件系统的建立 ---------------------------- 6 文件系统设计的原则 ------------------------------ 6 文件系统的层次结构和功能模块 --------------------- 6 文件系统的详细设计 -------------------------------- 8 文件系统核心代码 --------------------------------- 9 课程设计感想 ------------------------------------- 11 附录 -------------------------------------------------- 12

课程设计容 在uC/OS操作系统中增加一个简单的文件系统。 要求如下: (1)熟悉并分析uc/os操作系统 (2)设计并实现一个简单的文件系统 (3)可以是存放在存的虚拟文件系统,也可以是存放在磁盘的实际文件系统 (4)编写测试代码,测试对文件的相关操作:建立,读写等 课程设计目的 操作系统课程主要讲述的容是多道操作系统的原理与技术,与其它计算机原理、编译原理、汇编语言、计算机网络、程序设计等专业课程关系十分密切。 本课程设计的目的综合应用学生所学知识,建立系统和完整的计算机系统概念,理解和巩固操作系统基本理论、原理和方法,掌握操作系统开发的基本技能。 I.uC/OS操作系统简介 μC/OS-II是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统核。它被广泛应用于微处理器、微控制器和数字信号处理器。 μC/OS 和μC/OS-II 是专门为计算机的嵌入式应用设计的,绝大部分代码是用C语言编写的。CPU 硬件相关部分是用汇编语言编写的、总量约200行的汇编语言部分被压缩到最低限度,为的是便于移植到任何一种其它的CPU 上。用户只要有标准的ANSI 的C交叉编译器,有汇编器、连接器等软件工具,就可以将μC/OS-II嵌入到开发的产品中。μC/OS-II 具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点,最小核可编译至 2KB 。μC/OS-II 已经移植到了几乎所有知名的CPU 上。 严格地说uC/OS-II只是一个实时操作系统核,它仅仅包含了任务调度,任务管理,时间管理,存管理和任务间的通信和同步等基本功能。没有提供输入输出管理,文件系统,网络等额外的服务。但由于uC/OS-II良好的可扩展性和源码开放,这些非必须的功能完全可以由用户自己根据需要分别实现。 uC/OS-II目标是实现一个基于优先级调度的抢占式的实时核,并在这个核之上提供最基本的系统服务,如信号量,,消息队列,存管理,中断管理等。 uC/OS操作系统的组成 μC/OS-II可以大致分成核心、任务处理、时间处理、任务同步与通信,CPU的移植等5个部分。如下图:

嵌入式实习报告总结

嵌入式实习报告总结 随着信息化技术的发展和数字化产品的普及,以计算机技 术、芯片技术和软件技术为核心的嵌入式系统再度成为当前研究和应用的热点,通信、计算机、消费电子技术(3C)合一的趋势正在逐步形成,无所不在的网络和无所不在的计算( , )正在将人类带入一个崭新的信息社会。 二、实习目的 学习和了解了嵌入式在生活中的重要作用和发展过程,熟练掌握硬件体系结构,熟悉下的嵌入式编程流程,积累自己的软件编写经验,能够参与并实现一个真实和完整的嵌入式项目,为今后的学习和将从事的技术工作打下坚实的基础 三、实习任务 第一阶段操作和编程基础 主要介绍的基本命令和基础编程知识,包括 的文件操作和目录操作命令,编辑器,编译器,调试器和项目管理工具等知识。 第二阶段嵌入式C语言编程基础 主要介绍在嵌入式开发编程中C语言的重要概念和编程技巧中的重点难点,以复习串讲和实例分析的形式,重点介绍包括函数与程序结构,指针、数组和链表,库函数的使用等知识。

第三阶段上C强化编程训练 主要包括整数算法训练,递归和栈编程训练,位操作训练,指针训练,字符串训练和常用C库函数编程接口实践,强化学员对下基本编程开发的理解和编码调试的能力。 第四阶段环境高级编程及项目开发编程实践 主要包括系统编程(信号/系统调用/管道消息队列/共享内存等),文件编程(文件描述符/文件读写接口/原子操作/阻塞与非阻塞等,多任务和多线程编程(进程标识/ 用户标识与多线程概念/线程同步等),网络编程(网络基本概念/套接口编程/网络字节次序结构编程);掌握下编程的开发流程,熟悉网络编程的调用接口函数和相关数据结构,使学员初步具备在上进行系统编程开发的能力。同时综合之前所学内容和编程技术,以小组为单位进行一个团队合作项目的开发,考核内容包括文件编程,多线程编程,网络编程和项目文档编写。 第五阶段嵌入式处理器体系结构及编程实践 主要介绍体系结构及其基本编程知识,包括指令分类,寻址方式、指令集、存储系统、异常中断处理、汇编语言以及C\和汇编语言的混合编程等知识。同时结合嵌入式开发板硬件设计原理和基本硬件设计流程,分析各种外设的工作原理和驱动机制,并自己动手实践完成一个开发板上的编程大作业。

嵌入式系统复习题

一、 单项选择题 1、在CPU和物理内存之间进行地址转换时,( B)将地址从虚拟(逻辑)地址空间映射到物理地址空间。 A.TCB B.MMU C.CACHE D.DMA 2、进程有三种状态:( C)。 A.准备态、执行态和退出态 B.精确态、模糊态和随机态 C.运行态、就绪态和等待态 D.手工态、自动态和自由态 3、以下叙述中正确的是(C)。 A.宿主机与目标机之间只需要建立逻辑连接即可 B.在嵌入式系统中,调试器与被调试程序一般位于同一台机器上 C.在嵌入式系统开发中,通常采用的是交叉编译器 D.宿主机与目标机之间的通信方式只有串口和并口两种 4、中断向量是指(C)。 A.中断断点的地址 B.中断向量表起始地址 C.中断处理程序入口地址 D.中断返回地址 5、在微型计算机中,采用中断方式的优点之一是(C)。 A.简单且容易实现 B.CPU可以不工作 C.可实时响应突发事件 D.传送速度最快 6、在ARM处理器中,(A)寄存器包括全局的中断禁止位,控制中断禁止位就可以打开或者关闭中断。 A.CPSR B.SPSR C.PC D.IR 7、嵌入式系统的三要素下面哪一个不是:( B )。 A、嵌入 B、存储器 C、专用 D、计算机 8、μCOS-II操作系统属于( B )。 A、顺序执行系统 B、占先式实时操作系统 C、非占先式实时操作系统 D、分时操作系统 9、ARM寄存器组有( C )个状态寄存器。 A、7 B、32 C、6 D、37 10、C++源程序文件的默认扩展名为( A )。 A、cpp B、exe C、obj D、lik 11、在下列ARM处理器的各种模式中,( D )模式有自己独立的R8-R14寄存器。 A、系统模式(System) B、终止模式(Abort) C、中断模式(IRQ) D、快中断模式(FIQ)

嵌入式操作系统实验一建立交叉编译环境

嵌入式操作系统实验一建 立交叉编译环境 Last updated on the afternoon of January 3, 2021

嵌入式操作系统实验报告 队友:张圣苗亚 实验内容 1、准备工作工作:安装virtualbox虚拟机工具,并安装系统、增强型工具,实现共享文件夹的自动挂载。 2、利用crosstool提供的脚本安装和相关资源编译面向的ARM的GCC工具。 详细内容1:安装虚拟机软件和虚拟机时要完成的主要步骤有:安装virtualbox,建立一台虚拟机,分配内存和硬盘,指定共享文件夹(主机和虚拟机可共同操作),指定操作系统镜像文件路径(相当于光盘,第一次启动时安装),安装虚拟操作系统,安装增强工具包,实现共享文件夹的自动挂载。有几点需要注意: 1、虚拟硬盘尽量分配大一些,之后再扩就比较麻烦。 2、共享文件夹不要有中文路径,不然挂载后看不到中文名称文件。 3、安装操作系统时,不能断网,需要下载各种资源,不然会异常。 详细内容2需要安装与脚本相关的工具,需要修改crosstool中的配置文件以指定编译的目标位arm-linux。需要修改需要的资源 实验步骤 实验准备: 在实验准备中,在安装完增强工具包()并重启之后,需要实现对共享文件夹的自动挂载,只需要修改etc目录中的配置文件,是很多linux系统管理员的偏爱,因为凡是需要随系统自动启动的服务、程序等,都可以放在里面。 $sudomkdir/mnt/share $sudomount-tvboxsfembedded/mnt/shared 上面三句话实现了将共享文件夹embeded挂载到了share上。 gedit/etc/ 将第2句命令添加在exit之前,实现了自动挂载功能。 实验一 一、搭建编译环境 1、安装于脚本运行相关及其他的工具bison、flex、build-essential、patch、libncurses5-dev。

嵌入式操作系统期末考试答案

填空 1、嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪、适用于应用系统,对(功能)、(可靠性)、(成本)、(体积)、(功耗)严格要求的专用计算机系统。 2、嵌入式系统开发采用的交叉开发环境是由(宿主机)和(目标机)组成的。 3、挂载设备到文件系统的命令是(mount),从文件系统中卸载设备命令是(umounts)。 4、在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面,进入vi之后,是处于 (命令)模式,要切换到(编辑)模式才能够输入文字。 5、GCC的编译流程分为4个步骤,分别为:(预处理),编译,(汇编),链接。 6、Linux系统的设备分为三类:(字符设备)、(块设备)和网络设备。 7、操作系统的功能包(处理机管理)、(存储管理)、(设备管理)、(信息管理)、(作业管理)。 选择 1、下面哪点不是嵌入式操作系统的特点。(C) (A)内核精简(B)专用性强(C)功能强大(D)高实时性 2、嵌入式Linux下常用的文件系统不包括以下哪一项(A) (A)nfs(B)romfs(C)yaffs(D)jffs 3、下面关于Shell的说法,不正确的是:(D) (A)操作系统的外壳(B)用户与Linux内核之间的接口程序(C)一个命令语言解释器(D)一种和C语言类似的程序语言 4、在Bootloader()模式下,目标机可以通过通信手段从主机更新系统。(B) (A)启动加载模式(B)下载模式(C)实时模式(D)保护模式 5、文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权限,下列命令正确的是: (A) (A)chmoda+xg+wexer1(B)chmod765exer1(C)chmodo+xexer1(D)chmodg+wexer1 6、在vi编辑环境中,下面()选项不是从命令行模式切换到插入模式。(C) (A)i(B)o(C)ESC(D)a 7、shell变量名命名中不包括()。(D) (A)字母(B)数字(C)下划线(D)括号 8、下列关于字符设备说法不正确的是()。(C) (A)以字节为单位逐个进行I/O操作(B)字符设备中的缓存是可有可无的 (C)支持随机访问(D)字符设备可以通过设备文件节点访问 9、以下哪一项是是硬盘设备文件()。(B) (A)fd0(B)hda(C)eth1(D)ht0 10、共享内存通信机制的缺点是()。(B) (A)需要花费额外的内存空间(B)需要使用额为的同步机制 (C)需要额外硬件支持(D)通信过程中需要反复读取内存,时间开销大 简答题 1.嵌入式操作系统在哪些方面较为突出的特点并请列举出4种目前较常用的手机嵌入 式操作系统。 四个方面:系统实时高效性硬件的相关依赖性软件固态化应用的专用性 四种手机操作系统:Window Mobile SymbianOSAndriod OSE

嵌入式系统原理与应用复习知识点总结

第一章 1、嵌入式系统的应用范围:军事国防、消费电子、信息家电、网络通信、工业 控制。 2、嵌入式系统定义:嵌入式系统是以应用为中心,以计算机技术为基础,软件 与硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专 用计算机系统。(嵌入式的三要素:嵌入型、专用性与计算机系统)。 3、嵌入式系统的特点:1)专用性强;2)实时约束;3)RTOS;4)高可靠性;5) 低功耗;6)专用的开发工具和开发环境;7)系统精简; 4、嵌入式系统的组成: (1)处理器:MCU、MPU、DSP、SOC; (2)外围接口及设备:存储器、通信接口、I/O 接口、输入输出设备、电源等;(3)嵌入式操作系统:windows CE、UCLinux、Vxworks、UC/OS; (4)应用软件:Bootloader 5、嵌入式系统的硬件:嵌入式微处理器(MCU、MPU、DSP、SOC),外围电路, 外部设备; 嵌入式系统的软件:无操作系统(NOSES),小型操作系统软件(SOSE)S,大型 操作系统软件(LOSES)注:ARM 处理器三大部件:ALU、控制器、寄存器。 6、嵌入式处理器特点:(1)实时多任务;(2)结构可扩展;(3)很强的存储区 保护功能;(4)低功耗; 7、DSP处理器两种工作方式:(1)经过单片机的DSP可单独构成处理器;(2) 作为协处理器,具有单片机功能和数字处理功能; 第二章 1、IP核分类:软核、固核、硬核; 2、ARM 处理器系列:(1)ARM7系列(三级流水,thumb 指令集,ARM7TDMI); (2)ARM9系列(DSP处理能力,ARM920T)(3)ARM/OE(增强DSP)(4)SecurCone 系列(提供解密安全方案);(5)StrongARM系列(Zntle 产权);(6)XScale系列(Intel 产权);(7)Cortex 系列(A:性能密集型;R:要求实时性;M:要求低 成本) 3、ARM 系列的变量后缀:(1)T:thumb 指令集;(2)D:JTAG调试器;(3)快

嵌入式操作系统(复习题集)

一、填空题 1.ARM处理器中断有快速中断模式(FIQ)和外部中断模式(IRQ)处理模式。 2.典型的ARM基于JTAG调试结构包括哪几个部分? Debug主控端,协议转换器,调试目标机 3.LINUX系统中设备文件通常分为哪几种? 字符设备(无缓冲且只能顺序存取)、块设备(有缓冲且可以随机存取)。 4.LINUX环境中的变量包括哪几个? path home histsize hostname shell mail ps1 lang/langue 5.gcc编译分成哪4个阶段:预处理(Pre-Processing) -> 编译(Compling) -> 汇编(Assembling) -> 连接(Linking) 6.flash memory上的两种技术分别是NAND和NOR 7.MMU是存管理单元,主要作用有地址映射和对地址访问进行保护和限制 8.Pxa255拥有7 级超级流水线,主要由主流水线、MAC流水线和存访问流水线部分构成的 9.进程的虚拟存包括和 10.核(kernel)是操作系统部核心程序,它向外部提供了对计算机核心管理调用 11.模块的装入通过insmod命令手工将module载入核和根据需要载入module 12.嵌入式操作系统要为特定的硬件设备或环境设计符合要求的图形用户界面GUI 13.在LINUX根文件系统中所有的设备文件都放在目录dev下或其子目录之下 14.X Windows 最先在Unix上使用的图形界面,由X 服务器X客户机X 协议三部分组成 15.核最后一个初始化动作是启动初始化程序(运行/sbin/init可执行文件) 16.线程共享资源的程序实体,创建一个线程系统开销要比一个进程小的多 17.核碰到错误时,会显示处理器状态,包括cpu寄存器的容和页描述表的位置 还有一些难理解的信息 18.在ARM LINUX体系中用来处理外设中断的异常模式是中断请求 19.闪存主要由NOR flash和NAND flash 20.预定义变量:将所有的外部变量表示成建环境变量,并且将错误信息表示成返回值 AS = as 指定汇编器ASFLAGS AS指令的选项设置CC = cc =gcc 指定编译器$* 没有扩展名的当前目标文件$ 当前目标文件$ < 规则的第一个依赖文件名$? 比目标文件更新的依赖文件列表$ ^ 规则的所有依赖文件列表$% 如果目标是归档成员,则该变量表示目标的归档成员名称。例如,如果目标名称为(image.o),则$ 为,而$% 为image.o。 二、选择题 1.处理器的型号(嵌入式和非嵌入式) ARM(XScale), EMPU,EDSP,SOC,MIPS,PowerPC,M68000,SecurCore,StrongARM ,Palm OS , Psos 2.reboot 命令可以马上重新启动正在运行的LINUX系统 3.处理器的选择要考虑的主要因素处理性能,技术指标,功耗,功率损耗检测 4.LINUX文件权限的含义(共四段) 第一位表示文件类型-表示普通文件。d表示目录文件 第二、三、四位表示文件所有者的读,写,执行权限 第五、六、七位表示文件所在属组的读,写,执行权限 第八、九、十位表示文件的其它用户的读,写,执行权限 5.用chmod命令可以更改一个文件的权限设置 6.找出一个不是LINUX设备驱动和外界的接口驱动程序与操作系统核的接口,驱动 程序与系统引导的接口,驱动程序与设备的接口 7.用Makefile命令来实现自动编译

相关文档
最新文档