嵌入式操作系统

嵌入式操作系统
嵌入式操作系统

嵌入式系统是根据应用的要求,将操作系统和功能软件集成于计算机硬件系统之中,从而实现了软件与硬件一体化的计算机系统。嵌入式系统一般不提供与终端用户交互的手段,具有小巧、高度自动化、响应速度快等特点。作为嵌入式系统灵魂的嵌入式操作系统,是随着嵌入式系统的发展而出现的,它是嵌入式系统发展到一定阶段的产物。嵌入式操作系统的出现,将大大提高嵌入式系统开发的效率,改变以往嵌入式软件设计只能针对具体的应用从头做起的历史。在嵌入式操作系统之上开发嵌入式系统将减少系统开发的工作量,增强嵌入式应用软件的可移植性,使嵌入式系统的开发方法更具科学性。可以说,嵌入式操作系统的出现为嵌入式系统的发展铺平了道路。嵌入式操作系统负责嵌入式系统的全部软、硬资源的分配、调度工作,控制并协调并发活动,它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。

常见的几种嵌入式操作系统,现行应用中比较流行的嵌入式操作系统有Linux、WindowsCE、VxWorks、eCos、μC/OS-II、QNX等,下文将列举这几种相对常见的嵌入式操作系统特性,作为设计选择参考。

1.嵌入式Linux

Linux是开放源代码、免费使用和自由传播的操作系统,发展历史悠久,第三方应用软件非常丰富,多数自由软件都能够运行在Linux系统上。Linux经过不断改版升级,已经发展成一个遵循POSIX标准的纯32位多用户多进程操作系统。嵌入式Linux是将Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行。它广泛应用在移动电话、个人数字助理(PDA)、媒体播放器、消费性电子产品以及航空航天等领域。嵌入式Linux因此具有丰富的开放源代码资源,又具有嵌入式操作系统的特性,有许多公开的代码可以参考和移植,免费的OS使其在价格上极具竞争力。Linux的内核小、效率高,内核的更新速度很快;Linux可定制,其系统内核最小只有约134 KB。Linux适用于多种CPU和硬件平台,是一个跨平台的系统。到目前为止,它可以支持Alpha、ARM、M68K、MIPS、PowerPC、

SH、SPARC、MicroBlaze、Intel X86等二三十种CPU。Linux具有丰富的可配置组件,如数量繁多的设备驱动程序、多媒体、文件系统、网络、内存管理等。嵌入式Linux系统不是实时操作系统,RT_Linux支持实时性,稳定性好,安全性好,不过价格不低。也有针对没有MMU设备移植的μClinux系统(最新的Linux2.6内核可配

置MMU,支持无MMU的CPU,实际上已合并了μClinux)。搭建嵌入式开发环境,可以免费从Linux官网下载gcc编译器、gdb调试器等交叉开发工具。要求运行在Linux系统上,这对Windows用户来说可能是不易接受的。虽然通过Cygwin可以在Windows上交叉开发Linux程序,不过Cygwin首先需要配置并生成交叉工具链。在生成交叉编译器的过程中,可能会遇到多次错误,就需要根据给出的出错信息,进行相应文件的修改。并且在实践中发现,利用Cygwin编译嵌入式Linux应用程序和Red Hat Linux编译的运行效果不一致。虽然Linux下支持的图形化交叉调试工具有不少可用资源,但针对具体的硬件平台,需要的设置工作也不少。可见,嵌入式Linux还缺乏好用的集成开发环境,需要消耗一定人力用于搭建开发环境。

2. VxWorks

VxWorks操作系统是美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统(RTOS),具有高可靠性、高实时性、高性能、组件丰富可裁剪的微内核结构,以及友好的用户开发环境。它以良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通信、军事演习、弹道制导、飞机导航等。在美国的F-16/FA-18战斗机、B-2隐形轰炸机和爱国者导弹上,甚至火星探测器上也用到了VxWorks。支持的CPU有M68K、PowerPC、ColdFire、In-tel X86、ARM、SPARC、MIPS等几十种。Tornado是WindRiver公司推出的集成开发环境,为用户提供支持C、C++语言的交叉编译器和类库。编译器包括GNU的C/C++编译器和Diab C/C++编译器。图形化的工程管理工具非常方便有效,可以方便地对VxWorks操作系统、组件及工程编译参数进行配置。核心工具包括VxSim仿真器、WindView软件逻辑分析

仪、WindShell命令行执行工具、CrossWind集成调试器、Brow-ser系统对象检查工具。这些工具非常实用,方便开发调试。编辑器虽不受推崇,但好在可以设置外部编辑器。VxWorks性能优越,开发调试便利,有强大的技术支持,但是昂贵的价格让开发者望而却步。

3. eCos

eCos(embedded Configuration operating system)是由RedHat推出的小型实时操作系统。它诞生于1997年,最早是Cygnus公司开发,后被RedHat收购。它的特点是源码开放、免费、内核可灵活配置(配置项达200多项,甚至可以配置调度器的级别和最大任务个数,可以说是调整操作系统以适应应用程序),最低编译内核可小至10 KB的级别,适合用于微小型系统,比如增强型bootloader。eCos网络发行版支持的交叉开发主机有Windows和Linux两种版本,开发编译工具可支持GNU开源的开发工具链。eCos系统包含的开发工具有软件配置和构建工具,及基于GNU的编译器、汇编器、链接器、调试器和仿真器。支持的CPU有十几种,包括ARM、Hitachi H8300、Intelx86、MIPS、Matsushita AM3x、Motorola 68k、PowerPC、SuperH、SPARC和NEC V8xx,可以方便对不同平台的移植。eCos 系统组件非常丰富,可加速开发。核心组件有

硬件抽象层、实时内核、μITRON 3.0兼容的API、POSIX兼容的API、ISO C和数学库、从USB支持,TCP/IP网络协议栈、GDB调试支持、串口、以太网驱动等。

4. μC/OS-II

μC/OS-II是Micrium公司的基于优先级抢占、多任务的小型实时操作系统。发布于1992年,最多可以管理255个任务,支持信号量及互斥信号量、消息队列和消息邮箱、固定大小内存块管理、时间/定时器管理等服务。内核代码量小巧,适合学习和研究。作为大学实时操作系统的典型教材,它具有广泛的用户群,已广泛应用于高安全性的设备。其源码

99%符合MISRA C编码标准。支持的CPU有40多种,主要包括ARM、AVR、Niso、SE3208、M. Core、ColdFire、PowerPC、8051、80xC52、80x86、SPARClite、SH、Xscale、PIC18、PIC24、TMS320、TMS470、Z-80等。可以从官方网站获得45天的免费评估源码。虽然可获得源代码,但并不是免费的,版权费针对产品、产品线或CPU类型,而与具体产品数量无关。开发环境的建立往往借助具体CPU的开发环境,比如ARM用ADS,x86用Borland C++,AVR用AVR Studio。

嵌入式软件操作系统选择要素

嵌入式开发第一步需要确定嵌入式操作系统,对于嵌入式操作系统的选择通常从以下几个方面考虑:

(1)硬件平台的限制

如果在已经设计好的硬件电路上移植嵌入式操作系统,首先需要确定某嵌入式操作系统是否支持该硬件平台,如CPU类型、内存大小、程序存储空间大小、MMU等因素。如果硬件电路设计留有弹性,或者是根据选择好的嵌入式操作系统进行硬件设计,就不是限制操作系统的选

择,而是嵌入式操作系统限定了硬件电路的设计。

(2)性能参数要求

首先需要从系统需求入手,转化为操作系统对应的技术指标,如是否要求硬实时、优先级抢占式调度、中断响应速度等。当然,选用的嵌入式操作系统满足性能要求,还需要应用程序满足相应的设计要求,才能使整个嵌入式系统满足性能参数要求。嵌入式操作系统根据不同平台可裁剪、可配置,并且在不同硬件平台运行的效果也差异悬殊。大部分技术参数可以从网络上找到。虽然测试的硬件平台不尽相同,但往往可以通过类比得到所设计电路的技术参数。如果有些参数无法确定,并且技术支持缺乏,就需要主动进行性能

参数测试。

(3)开发、调试环境

功能强大、容易搭建的集成开发/调试环境能节省项目人力投入,加速开发进度。这也是选择嵌入式操作系统时需要考虑的重要因素。大部分开发人员选择操作系统并不看操作系统特性,而是专注于集成开发环境的优劣,可见开发环境对嵌入式开发的重要性。对集成开发环境的评价,主要考虑:编辑、编译、调试界面是否友好和高度集成;支持的PC 机操作系统;编译器通用性(容易掌握和移植),支持的编程语言,提供的库资源;是否支持版本控制(与Subversion或SourceSafe直接关联);调试环境的搭建(搭建是否便利,支持哪些连接方式,是否支持单步、断点跟踪调试);仿真平台(在硬件电路完成之前就可进行编程调试,方便单元测试);其他辅助调试、分析工具(如目标观察、系统分析、内存分析等)。

(4)移植操作系统的难易

虽然嵌入式操作系统的一个重要作用是让程序设计工作量大大减少,将主要设计工作集中在应用程序开发,但是毕竟嵌入式系统是针对具体平台配置的,移植操作系统就是要对这些差异环节编程,实现硬件和操作系统的连接。从层次上看,有CPU内核移植、CPU 的移植、最小系统组成的移植、外设驱动的移植。移植的难易主要是考察在代理商或技术支持所提供的模板基础上需要实现哪些中间层模块,有哪些现成的模块可利用。操作系统移植是否相应地有支持的调试平台,程序下载环境对操作系统的移植工作也有很大影响。

(5)应用模块支持

应用模块支持也对嵌入式软件工作量有重要影响,如开发的嵌入式系统要求支持FTP文件传输协议,支持TFT LCD的图形界面显示,那么内核是否包含TCP/IP组件和网络文件系统、是否包含TFT LCD驱动模块就对进一步的开发工作有很大影响。尤其是一些编程调试工作量大的协议、驱动,能直接利用内核组件支持是最好的解决方案。

除了以上几点,技术支持,可移植性支持,软件购置成本也是选择嵌入式操作系统要考虑的因素。

μCOS-Ⅱ是面向中小型应用的、其任务基于优先级的可剥夺嵌入式实时内核,其特点是小巧、性能稳定、可免费获得实现代码,所以我们选用μCOS-Ⅱ操作系统

μCOS-Ⅱ的移植分析

所谓移植,就是使一个实时内核能在其他的微处理器或微控制器上运行。为了方便移植,大部分μCOS-Ⅱ是用C语言编写的,但与硬件有关的代码仍需要用汇便语言编写。μCOS-Ⅱ在设计之初已经考虑到可移植性,所以μCOS-Ⅱ的移植相对来说比较容易。要移植μCOS-Ⅱ,处理器必须满足以下要求:

1)处理器的C编译器能产生可重入代码;可重入代码是指可以被多个任务同时调用而不被破坏的一段代码,这是实现多任务的基础。

2)处理器支持中断,并且能产生定时中断(通常为10—100 Hz);μCOS-Ⅱ是通过处理器的定时器实现中断的。

3)用C语言就可以开/关中断。C语言可以通过宏定义进行开/关中断,在μCOS-Ⅱ中是OS-ENTER-CRITICAL()和OS-EXIT-CRITICAL()两个宏实现中断的。

4)处理器能支持一定数量的数据存储硬件堆栈。

5)处理器有将堆栈指针以及其他CPU寄存器的内容读出、并存储到堆栈或内存中去的指令

根据处理器的不同,一个移植实例可能需要编写或改写50-300行的代码,最容易做的是

选择修改CPU相同或类似的移植代码。OS-CPU.H、OS-CPU-A.ASM、OS-CPU-C.C是μCOS-Ⅱ

中与处理器相关的三个文件,μCOS-Ⅱ的移植就是修改这三个文件。

OS-CPU.H文件主要是定义数据类型,代码临界区开关中断方式,堆栈的生长方式,任务的切换向量以及时钟的发生频率等。C语言的short、int、long等数据类型与编译器相关不可移植,所以μCOS-Ⅱ采用定义的整型数据结构代替他们,既可移植,又很直观。绝大多数微处理器和微控制器的堆栈是从上往下递减的,但是也有一些处理器使用的是相反的方式,μCOS-Ⅱ需要知道堆栈的底端地址在哪里,从而得到堆栈的使用情况。

在OS-CPU-C.C中μCOS-Ⅱ的移植要求用户编写10个简单的C函数,OSTaskStkInit(),OS-TaskCreateHook ( ),OSTaskDelHook ( ),OS-TaskSwHook ( ),OSTaskIdleHook ( ), OS-TaskStatHook ( ),OSTimeTickHook ( ),OS-InitHookBegin ( ),OSInitHookEnd ( ),OSTCBInitHook()。唯一必要的是OSTaskStkInit(),其他的9个函数必须声明。

μCOS-Ⅱ的移植要求编写OS-CPU-A.ASM中的4个简单的汇编语言函数:OSStartHighRdy(),OSCtxSw(),OSIntCtxSw(),OSTickISR(),其中OSIntCtxSw() 较容易出错。如果编译器支持C语言中插入行汇编代码,就可以将所有与处理器相关的代码放到OS-CPU-C.C文件中,不再有单独的汇编语言文件。

嵌入式操作系统简介以及发展史

嵌入式操作系统简介以及发展史 导语:嵌入式操作系统离我们生活并不远,甚至我们生活中处处都可见,比如各种路由器,机顶盒,洗衣机,空调,手机等。嵌入式操作系统的定义: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用操作系统。嵌入式系统的发展:嵌入式操作系统并不是一个新生的事物,从20世纪80年代起,国际上就有了一些IT组织,公司开始进行商用嵌入式系统和专用操作系统的研发,这期间涌现了一些著名的嵌入式操作系统:windows CEVxWorkspSOSQNXPalm OSOS-9LynxOS目前,有很多商用嵌入式操作系统都在努力的为自己争取嵌入式市场的份额。但是,这些专用操作系统均属于商业化产品,价格昂贵,而且,他们的源码不公开,使得各自的嵌入式系统上的应用软件不能互相兼容。这导致了商业嵌入式系统对支持各种设备存在了很大的问题,使软件移植变得相当困难,但是,在这个时候,我们伟大的linux操作系统横空出世, 由于linux自身诸多的优点以及优势,吸引了许多开发商的 目光,使得linux成为了嵌入式操作系统的新宠。嵌入式操 作系统发展的四个阶段:第一阶段:无操作系统的嵌入式算法阶段,以单芯片为核心的可编程控制器的系统,具有监测,

伺服,指示设备相配合的功能。应用在一些专业性极强的工业控制系统,使用古老的汇编语言进行系统的直接控制。第二阶段:以嵌入式CPU为基础,简单操作系统为核心的嵌入式操作系统,CPU种类繁多,通用性差,系统开销小,效率高,一般配备系统仿真器,操作系统有一定的兼容性,软件较为专业,用户界面不够友好,系统主要用来监测系统和应用程序运行。 第三阶段:通用的嵌入式实时操作系统阶段,以嵌入式操作系统为核心的嵌入式系统,能运行于各种微处理器上,兼容性好,内核小,效率高,具有高度的模块化和扩展化,有文件管理和目录管理,设备支持,多任务,网络支持,图形窗口以及用户界面等功能,具有大量的应用程序接口(API),软件非常丰富,代表就是linux。 第四阶段:以Internet为标志的嵌入式操作系统,这是一个正在迅速发展的阶段,现在非常多的嵌入式操作系统已经有了接入Internet的能力。通过一个综合网关。 常见的嵌入式操作系统:uC/OS-Ⅱ:uC/OS-Ⅱ是一个公开源码,结构小巧,实时内核的实时操作系统。是一种基于优先级的可抢占式的硬实时内核,其内核提供任务管理与调度,时间管理,任务同步和通信,内存管理,中断服务等功能。其内核最小可以编译至2KB左右。-RTLinux:RTLinux是一个源代码开放的具有硬实时特性的多任务操作系统,他是通

嵌入式习题答案

嵌入式习题答案Last revision on 21 December 2020

第一章习题答案 1.什么是嵌入式系统请列举几个常见的嵌入式系统。 答:根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是控制、监视或者辅助设备、机器和生产线运行的装置(Devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从产品的应用角度加以定义的,由此可以看出嵌入式系统是软件和硬件的综合体,可以涵盖机械等附属装置。 目前被我国科学家普遍认同的定义是:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可裁减,对功能、可靠性、成本、体积、功耗要求严格的专用计算机系统。 常见的嵌入式系统:手机,DVD,路由器,核磁共振仪,全自动洗衣机。 2.嵌入式系统与通用计算机有哪些区别 答:(1) 以应用为中心;(2) 以计算机技术为基础(3) 软件和硬件可裁减(4) 对系统性能要求严格(5)软件的固件化(6)需要专用的开发工具 3.嵌入式系统的发展分为哪几个阶段 答:第一阶段:无操作系统的嵌入算法阶段。第二阶段:以嵌入式CPU为基础,以简单操作系统为核心的嵌入式系统。第三阶段:以嵌入式操作系统为标志的嵌入式系统。第四阶段:以基于Internet为标志的嵌入式系统。 4.请列举嵌入式系统的主要应用领域。 答:(1)工业控制领域(2)交通运输领域(3)消费电子产品(4)家电领域(5)通信领域(6)商业和金融领域(7)环境监测领域(8)医疗领域(9)建筑领域(10)军事国防领域(11)航天航空领域

嵌入式系统期末考试题库及答案

嵌入式系统期末考试题库及答案 《嵌入式系统》试题库 《嵌入式系统》试题库 一、填空题 1、嵌入式系统的基本定义为:以应用中心,以计算机技术为基础,软件硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 2、从模块结构来看,嵌入式系统由三大部分组成,分别是:硬件、软件和开发平台。 3、从层次角度来看,嵌入式系统由四大部分组成,分别是:应用软件层、操作系统层、板级支持包(或硬件抽象层)和硬件层。 4、嵌入式产品的主要度量指标包括:上市时间、设计成本和产品质量。 5、嵌入式系统的设计过程包括:需求分析、规格说明、体系结构设计、构件设计、系统集成和系统测试。 6、需求分析包括:功能性需求分析和非功能性需求分析。 7、确定输入信号是数字信号还是模拟信号属于功能性需求。 8、确定系统的物理尺寸和重量属于非功能性需求。 9、在嵌入式系统的设计过程中,其中规格说明解决“做什么”。 10、在嵌入式系统的设计过程中,其中体系结构设计解决“如何做”。 11、在嵌入式系统的设计过程中,软硬件划分应该在体系结构设计阶段完成。12、在嵌入式系统的设计过程中,处理器的选择应该在体系结构设计阶段完成。13、在嵌入式系统的设计过程中,嵌入式操作系统的选择应该在体系结构设计阶段完成。14、在嵌入式系统的设计过程中,完成原理图设计应在构件设计阶段完成。15、在嵌入式系统的设计过程中,完成版图设计应在构件设计阶段完成。16、在嵌入式系统的设计过程中,完成软件设计应在构件设计阶段完成。 17、反映嵌入式系统设计人员的水平能力主要在于总体设计(需

求分析、规格说明和体系结构设计)和系统调试。 18、设计流程指的是设计过程中所经历的过程步骤。 19、设计重用技术主要分为基于IP 核的模块级重用和基于平台的系统级重用。20、软硬件协同设计由系统描述、软硬件划分、软硬件协同综合以及软硬件协同模拟与验证几个阶段组成。 21、嵌入式处理器的分类包括三种,分别是:嵌入式微处理器、微控制器(或单片机)和 第1 页共44 页 1 《嵌入式系统》试题库 数字信号处理器(DSP)。 22、列举常见的ARM 系列处理器:ARM7 系列、ARM9 系列、ARM11 系列、Cortex-M 系列、Cortex-R 系列、Cortex-A 系列等。 23、ARM 系列微处理器支持的数据类型有:字节、半字和字等三种类型。24、ARM 系列微处理器支持的字数据存储格式有:大端格式和小端格式。25、ARM 系列处理器通过执行BX 或者BLX 指令来实现工作状态的切换。26、列举常见的存储器类型:SRAM、DRAM、Flash、EEPROM 等。27、对于RAM 存储器主要有两种,分别是:SRAM 和DRAM。 28、在时钟信号边沿到来之前的一段时间内,数据信号必须保持稳定,这段时间称为器件的建立时间;在时钟信号边沿到来之后的一段时间内,数据信号必须保持稳定,这段时间称为器件的保持时间。 29、总线是在多于两个模块(设备、子系统)之间传送信息的公共通路。30、总线的功能是信息共享和交换。 31、总线由传输信息的物理介质和管理信息传输的协议组成。 32、挂接在总线上的设备依据启动总线事务的能力可以分为主设备和从设备。33、总线协议依据同步方式可分为同步时序协议和异步时序协议。34、总线仲裁方式可分为集中式仲裁和分布式仲裁。

嵌入式操作系统的发展现状

嵌入式操作系统的发展现状 【摘要】嵌入式操作系统是一种用途广泛的系统软件,负责嵌入系统的全部软、硬件资源的分配和调度工作,它必须体现其所在系统的特征,能够通过装卸某些模块来达到系统所要求的功能。随着Internet技术的发展、信息家电的普及应用及嵌入式操作系统的微型化和专业化,嵌入式操作系统开始从单一的弱功能向高专业化的强功能方向发展。 【关键词】嵌入式操作系统;嵌入式系统 1.引言 嵌入式操作系统EOS(Embedded Oper-ating System)是一种用途广泛的系统软件,它与嵌入式系统密不可分。嵌入式系统主要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,它是集软硬件于一体的可独立工作的“器件”。 嵌入式技术的发展,大致经历了四个阶段:第一阶段是以单芯片为核心的可编程控制器形式的系统,同时具有与监测、伺服、指示设备相配合的功能。第二阶段是以嵌入式CPU为基础、以简单操作系统为核心的嵌入式系统。第三阶段是以嵌入式操作系统为标志的嵌入式系统。第四阶段是以基于Internet为标志的嵌入式系统,这是一个正在迅速发展的阶段。嵌入式系统的发展对嵌入式操作系统提出了更高的要求。因此,对嵌入式操作系统的结构、设计、用户界面等诸多方面进行深入研究,将有助于嵌入式系统的应用和发展。 2.嵌入式操作系统的发展状况 国外嵌入式操作系统已经从简单走向成熟,主要有Vxwork、QNX、Palm OS、Windows CE等。国内的嵌入式操作系统研究开发有2种类型,一类是基于国外操作系统二次开发完成的,如海信的基于Windows CE的机顶盒系统;另一类是中国自主开发的嵌入式操作系统,如凯思集团公司自主研制开发的嵌入式操作系统Hopen OS(“女娲计划”)等。 Windows CE内核较小,能作为一种嵌入式操作系统应用到工业控制等领域。其优点在于便携性、提供对微处理器的选择以及非强行的电源管理功能。内置的标准通信能力使Windows CE能够访问Internet并收发E-mail或浏览Web。除此之外,Windows CE特有的与Windows类似的用户界面使最终用户易于使用。Windows CE的缺点是速度慢、效率低、价格偏高、开发应用程序相对较难。 3Com公司的Palm OS在掌上电脑和PDA市场上独占其霸主地位,它有开放的操作系统应用程序接口(API),开发商可根据需要自行开发所需的应用程序。 QNX是由加拿大QSSL公司开发的分布式实时操作系统,它由微内核和一

嵌入式系统期末考试试卷 习题

1.下面哪一种工作模式不属于ARM特权模式(A)。 A.用户模式B.系统模式C.软中断模式D.FIQ模式 2.ARM7TDMI的工作状态包括( D )。 A.测试状态和运行状态B.挂起状态和就绪状态 C.就绪状态和运行状态D.ARM状态和Thumb状态 3.下面哪个Linux操作系统是嵌入式操作系统( B )。 A.Red-hat Linux B.uclinux C.Ubuntu Linux D.SUSE Linux 4.使用Host-Target联合开发嵌入式应用,( B )不是必须的。 A.宿主机B.银河麒麟操作系统 C.目标机D.交叉编译器 5.下面哪个不属于Linux下的一个进程在内存里的三部分的数据之一(A)。 A.寄存器段B.代码段 C.堆栈段D.数据段 选择题(共5小题,每题2分,共10分) 1.下面哪个系统属于嵌入式系统( D )。 A.“天河一号”计算机系统B.IBMX200笔记本电脑 C.联想S10上网本D.Iphone手机 2.在Makefile中的命令必须要以(A)键开始。 A.Tab键B.#号键 C.空格键D.&键 3.Linux支持多种文件系统,下面哪种不属于Linux的文件系统格式( B )。 A.Ext B.FA T32 C.NFS D.Ext3 4.下面哪种不属于VI三种工作模式之一( D )。 A.命令行模式B.插入模式 C.底行模式D.工作模式 5.下面哪一项不属于Linux内核的配置系统的三个组成部分之一( C )。 A.Makefile B.配置文件(config.in) C.make menuconfig D.配置工具 1.人们生活中常用的嵌入式设备有哪些?列举4个以上(1) 手机,(2) 机顶盒,(3) MP3,(4) GPS。(交换机、打印机、投影仪、无线路由器、车载媒体、PDA、GPS、智能家电等等。) 2.ARM9处理器使用了五级流水线,五级流水具体指哪五级:(5) 取指,(6) 译码,(7) 执行,(8) 缓冲/数据,(9) 回写。 3.在Makefile中的命令必须要以(10) Tab 键开始。 4.Linux支持多种文件系统,主要包括哪些(写出其中4中就行)(11) Ext,(12) VFA T,(13) JFS,(14) NFS。(JFS、ReiserFS、Ext、Ext2、Ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等) 5.VI的工作模式有哪三种:(15) 命令行模式,(16) 插入模式,(17) 底行模式。

嵌入式系统课后答案马维华

第1章嵌入式系统概述 1,什么是嵌入式系统嵌入式系统的特点是什么 嵌入式系统概念: (1) IEEE对嵌入式系统的定义:用于控制,监视或者辅助操作机器和设备的装置. (2)一般定义:以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能,可靠性,成本,体积,功耗有严格要求的专用计算机系统. 嵌入式系统的特点: (1) 专用的计算机系统 (2) 必须满足环境要求 (3) 必须能满足对象系统的控制要求 (4) 是集成计算机技术与各行业应用的集成系统 (5) 具有较长的生命周期 (6) 软件固化在非易失性存储器中 (7) 必须能满足实时性要求 (8) 需要专用开发环境和开发工具 2,简单分析几种嵌入式操作系统的主要特点,包括嵌入式Linux,Windows CE,uCOS II 及VxWorks. (1)嵌入式Linux:有多个主流版本,根据应用需求,性能略有差别.μCLinux是Linux小型化后,适合于没有MMU的微处理器芯片而裁剪成的操作系统,μCLinux保持了传统Linux操作系统的主要特性,包括稳定,强大的网络和文件系统的支持,μCLinux裁剪了大量的Linux内核以缩小尺寸,适合像512KB RAM,1MB Flash这样小容量,低成本的嵌入式系统.RT_Linux即能兼容通常的Linux,又能保证强实时性. (2)Windows CE:开发平台主要为WinCE Platform Builder,有时也用EVC环境开发一些较上层的应用.WinCE开发难度远低于嵌入式Linux,实时性略低,常用于手机,PDA等手持设备中. (3)uCOS II:结构小巧,抢先式的实时嵌入式操作系统,具有执行效率高,占用空间小,可移植性强,实时性能好和可扩展性能等优点.主要用于小型嵌入式系统. (4) VxWorks: 集成开发环境为Tornado,Vxworks因出现稍早,实时性很强,并且内核可极微(最小8K),可靠性较高等.通常应用在通信设备等实时性要求较高的系统中. 第2章嵌入式处理器体系结构 1,具体说明ARM7TDMI的含义,其中的T,D,M,I分别代表什么 ARM7TDMI是ARM7处理器系列成员之一,采用V4T版本指令.T表示Thumb,该内核可从16位指令集切换到32位ARM指令集;D表示Debug,该内核中放置了用于调试的结构,支持片内Debug调试;M表示Multiplier,支持位乘法;I表示Embedded ICE ,内含嵌入式ICE宏单元,支持片上断点和观察点. 2,ARMV4及以上版本的CPSR的哪一位反映了处理器的状态若CPSR=0x000000090,分析系统状态.CPSR=0x000000090表示当前处理器工作于ARM状态,系统处于用户模式下. CPSR的BIT5(T)反映当前处理器工作于ARM状态或Thumb状态. 3,ARM有哪几个异常类型,为什么FIQ的服务程序地址要位于0x1C 在复位后,ARM处理器处于何种模式,何种状态 ARM的7种异常类型:复位RESET异常,未定义的指令UND异常,软件中断SWI异常,指令预取中止PABT异常,数据访问中止DABT异常,外部中断请求IRQ异常,快速中断请求FIQ 异常.在有快速中断发生时,CPU从0x1C处取出指令执行.ARM复位后处于管理模式,工作于ARM状态. 4,为什么要使用Thumb模式,与ARM代码相比较,Thumb代码的两大优势是什么

LInux 嵌入式操作系统期末试题

1.简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系 统应用的需要,在产品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 2.嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4. 性能优异 5.良好的网络支持 3.linux文件类型:1.普通文件 2.目录文件 3.链接文件 4.设备文件 a.块设备文件(硬 盘:/dev/hda1)b.字符设备(串行端口接口设备) 4.linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所 属用户组 o:其他用户第一个字符显示文件类型:-普通d目录 l 链接… 5.简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 6.编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之 后编写shell文件,删除所有用户

嵌入式操作系统的种类与特点

1.3.1 嵌入式操作系统的种类、特点与发展 1.嵌入式操作系统的种类 一般情况下,嵌入式操作系统可以分为两类: 非实时操作系统:面向消费电子产品等领域,这类产品包括个人数字助理(PDA)、移动电话、机顶盒、电子书等。 实时操作系统RTOS(Real-Time Embedded Operating System):面向控制、通信等领域,如windriver公司的vxworks、isi的psos、qnx系统软件公司的qnx等。 (1)非实时操作系统 早期的嵌入式系统中没有操作系统的概念,程序员编写嵌入式程序通常直接面对裸机及裸设备。在这种情况下,通常把嵌入式程序分成两部分,即前台程序和后台程序。前台程序通过中断来处理事件,其结构一般为无限循环;后台程序则掌管整个嵌入式系统软、硬件资源的分配、管理以及任务的调度,是一个系统管理调度程序。这就是通常所说的前后台系统。一般情况下,后台程序也叫任务级程序,前台程序也叫事件处理级程序。在程序运行时,后台程序检查每个任务是否具备运行条件,通过一定的调度算法来完成相应的操作。对于实时性要求特别严格的操作通常由中断来完成,仅在中断服务程序中标记事件的发生,不再做任何工作就退出中断,经过后台程序的调度,转由前台程序完成事件的处理,这样就不会造成在中断服务程序中处理费时的事件而影响后续和其它中断。 实际上,前后台系统的实时性比预计的要差。这是因为前后台系统认为所有的任务具有相同的优先级别,即是平等的,而且任务的执行又是通过FIFO队列排队,因而对那些实时性要求高的任务不可能立刻得到处理。另外,由于前台程序是一个无限循环的结构,一旦在这个循环体中正在处理的任务崩溃,使得整个任务队列中的其它任务得不到机会被处理,从而造成整个系统的崩溃。由于这类系统结构简单,几乎不需要RAM/ROM的额外开销,因而在简单的嵌入式应用被广泛使用。 (2)实时操作系统 所谓实时性,就是在确定的时间范围内响应某个事件的特性。而实时系统是指能在确定的时间内执行其功能并对外部的异步事件做出响应的计算机系统。其操作的正确性不仅依赖于逻辑设计的正确程度,而且与这些操作进行的时间有关。“在确定的时间内”是该定义的核心。也就是说,实时系统是对响应时间有严格要求的。 实时系统对逻辑和时序的要求非常严格,如果逻辑和时序出现偏差将会引起严重后果。实时系统有两种类型:软实时系统和硬实时系统。软实时系统仅要求事件响应是实时的,并不要求限定某一任务必须在多长时间内完成;而在硬实时系统中,不仅要求任务响应要实时,而且要求在规定的时间内完成事件的处理。通常,大多数实时系统是两者的结合。实时应用软件的设计一般比非实时应用软件的设计困难。实时系统的技术关键是如何保证系统的实时性。实时操作系统可分为可抢占型和不可抢占型两类。 嵌入式实时操作系统在目前的嵌入式应用中用得越来越广泛,尤其在功能复杂、系统庞大的应用中显得愈来愈重要。 从某种意义上说,没有操作系统的计算机(裸机)是没有用的。在嵌入式应用中,只有把CPU嵌入到系统中,同时又把操作系统嵌入进去,才是真正的计算机嵌入式应用。 操作系统的实时性在某些领域是至关重要的,比如工业控制、航空航天等领域。想像飞机正在空中飞行,如果嵌入式系统不能及时响应飞行员的控制指令,那么极有可能导致空难事故。有些嵌入式系统应用并不需要绝对的实时性,比如PDA播放音乐,个别音频数据丢失并不影响效果。这可以使用软实时的概念来衡量。

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

填空 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

浅谈嵌入式系统的现状及发展前景

课程考核论文 课程名称信息学导论 学生姓名曾文静 学号1141304067 系、专业信息工程系电子科学与技术专业 2013年6 月15 日

浅谈嵌入式系统的现状及发展前景 摘要:从嵌入式系统的含义、特点、开发平台及其工业特征出发 ,深入阐述了嵌入式计算机技术的发展现状 ,展望了嵌入式系统产业在我国的广阔发展前景景。 1. 嵌入式系统的发展趋势及典型应用产品 在现在日益信息化的社会中,计算机和网络已经全面渗透到日常生活的每一个角落。对于我们每个人,需要的已经不再仅仅是那种放在桌上处理文档,进行工作管理和生产控制的计算机"机器";各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机,任何一个普通人可能拥有从大到小的各种使用嵌入式技术的电子产品,小到mp3,PDA等微型数字化产品,大到网络家电,智能家电,车载电子设备。而在工业和服务领域中,使用嵌入式技术的数字机床,智能工具,工业机器人,服务机器人也将逐渐改变传统的工业和服务方式。 近几年,嵌入式系统产品日臻完善,并在全世界各行业得到广泛应用。嵌入式系统产品的研制和应用已经成为我国信息化带动工业化、工业化促进信息化发展的新的国民经济增长点。 随着信息化、智能化、网络化的发展,嵌入式技术将全面展开,现在嵌入式已经成为通信和消费类产品的共同发展方向。总体来说,嵌入式系统分别在硬件和软件方面获得发展。嵌入式系统必将成为当今IT界的又一焦点,开发自主知识产权的嵌入式处理器和嵌入式操作系统,对于我们国家的民族IT产业来讲具有十分重要的战略意义。从国内IT市场来看,嵌入式系统及其产品在由家电产品和Internet衍生出来的新型市场中占有主导地位和独特份额。 在消费家电的智能化的今天,嵌入式更显重要。像我们平常见到的手机、PDA、电子字典、可视电话、VCD/DVD/MP3Player、数字相机(DC)、数字摄像机(DV)、U-Disk 、机顶盒(Set Top Box)、高清电视(HDTV )、游戏机、智能玩具、交换机、路由器、数控设备或仪表、汽车电子、家电控制系统、医疗仪器、航天航空设备等等,都是典型的嵌入式系统。据预测,随着Internet的迅速发展和廉价微处理器的出现,嵌入式系统将在日常生活里形成更大的应用领域。 例如,行车称重无线遥测调度系统:由贵溪冶炼厂和北京市自动化系统成套工程公司合作开发,用在贵溪冶炼车间。具体要求为系统前端由安装在行车上的行车工作站(3台)构成,行车工作站将行车称重信号转换成数字信号,并将采集的数字信号经

嵌入式操作系统及编程试题(B)答案

《嵌入式操作系统及编程》考试试卷(B卷)参考答案 一、填空题(每空1分,共10分) 1、嵌入式硬件系统,嵌入式软件系统。 2、Windows CE; uClinux(或Linux)。VxWorks,uC/OSII。 3、C++ 4、tar -zcf mydir.tar.bz2 mydir,tar -zxvf mydir.tar.bz2 5、make 二、选择题(每题2分,共20分) 1、C 2、C 3、B 4、A 5、B 6、A 7、B 8、D 9、B 10、A 三、简答题(每题7分,共49分) 1、以应用为中心,以计算机技术为基础,软件硬件可剪裁,(3分)适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。(4分) 2、 (7分) 3、 (7分) 4、(1)解压:tar –zxvf Linux-2.4.18.tar.gz。 (2)修改Makefile文件,其中:SUBARCH :=arm CROSS_COMPILE = arm-linux- (3分)(3)运行make menuconfig; (4)make; (4分)5、(1)tar –jxvf vivi-2410.tar.bz2 (2)cd vivi-2410; (3分)

(3)make menuconfig; (4)make (4分)6、(1)tar -jxvf busybox-1.12.1.tar.bz2 (2)make menuconfig (3)make install (3分)(4)构建根文件系统:创建顶层目录,创建设备节点,创建inittab,创建sysinit脚本。 (5)创建根文件系统映像文件(4分)7、 (7分) 四、应用题(1题10分,2题11分,共21分) 1、(1)运行source x86QT/export.sh建立LCD和设置开发环境变量; (2)运行x86QT/qt-2.3.2/bin/desinger 建立QT的form窗口; (3)保存form窗口到磁盘,如:rbz/win.ui。 (4) vi main.cpp文件到保存的路径rbz下 (5) cd arm2410QT;运行source export.sh (6)创建win.pro工程文件:/root/arm2410QT/tmake-1.13/bin/progen -t app.t -o win.pro (7)创建Makefile文件:/root/arm2410QT/tmake-1.13/bin/tmake -o Makefile win.pro (8)创建bi文件win: make (5分)(9)挂接/usr/lib库到目标机上:mount –t nfs 192.168.0.21:/usr /mnt/yaffs/nfs (10)设置目标机上运行QT程序的环境变量: export QTDIR=/mnt/yaffs/nfs export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH (11)在目标机上运行:./win –qws (5分)2、(1)main.c程序: int main() { int x=1; int y=2; Printf(“%d”,x*y); } (5分)(2) 1):gcc -E main.c -o outfile1 2):gcc -S main.c 3):gcc -c main.c (6分)

嵌入式系统

第一章绪论 1.嵌入式系统的定义、特点和分类 2.嵌入式操作系统 3.嵌入式系统的选型 4.嵌入式系统的发展趋势 5.嵌入式系统的关键技术 6.嵌入式系统的应用 思考与练习 1.什么是嵌入式系统?嵌入式系统的特点是什么? 2.请说出嵌入式系统与其它商用计算机系统的区别。 3.嵌入式系统的关键技术有哪些? 4.请说明嵌入式系统技术发展及开发应用的趋势。 5.你知道嵌入式系统在我们日常生活中哪些设备中应用?说明其采用的处理器是什么?采用的哪一个嵌入式操作系统? 6.开发嵌入式系统的计算机语言主要有哪几种?分别用在什么场合?7. 嵌入式系统和专用集成电路的关系是什么? 第二章嵌入式系统设计方法 1. 需求分析与系统分析法 2.软硬件协同设计方法 3.嵌入式硬件开发方法 4.嵌入式软件开发方法 5.构件式开发方法 6.软件调试与软件测试方法 思考与练习 1.请说出嵌入式系统设计的主要方法及设计流程。在嵌入式系统开发的总体设计中,需要进行哪几方面的工作? 2.嵌入式硬件调试的主要方法及技术手段有哪些? 3.什么是构件式开发方法?说明该方法对嵌入式系统开发具有什么意义,并举例说明。4.需求分析阶段分为哪几个步骤?每个步骤完成什么工作? 5.在进行系统设计时,概要设计和详细设计的工作内容有什么不同? 6.在嵌入式系统实现阶段,需要选择开发平台,通常开发平台的选择包括哪些内容?7.在当今IT 时代,为了使产品尽快进入市场,就产品开发阶段,你认为有哪些方法可以加快产品的开发速度? 8.什么是“黑盒”测试?什么是“白盒”测试?什么是“灰盒”测试? 9.嵌入式系统开发中,使用软件组件技术有什么好处? 10.什么是知识产权核(Intellectual Property Core,简称IP Core)?指出“软知识产权核(Soft IP Core)”、“硬知识产权核(Hard IP Core)”、“固知识产权核(Firm IP Core)”的意义和差别。 11.根据嵌入式软件开发的不同阶段,嵌入式开发工具有哪些种类? 12.从底层硬件到上层应用,嵌入式软件的开发可以分为哪几种? 13.什么是交叉开发环境? 14.什么是OCD 调试方法?指出OCD 的主要形式JTAG 和BDM 的特点和区别? 15.嵌入式软件的调试运行环境和固化运行环境主要区别是什么?

LInux嵌入式操作系统期末试题

简答题:请简单概括什么是嵌入式系统、并举出嵌入式系统的特点;(6分) 答: 嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁,适用于应用系统,对功能、可靠性、成本、体积、功耗等方面有特殊要求的专用计算机系统; 其特点如下: (1)嵌入式系统是面向特定系统应用的。 (2)嵌入式系统涉及计算机技术、微电子技术、电子技术、通信和软件等各个行业; 是一个技术密集、资金密集、高度分散、不断创新的知识集成系统; (3)嵌入式系统的硬件和软件都必须具有高度可定制性;只有这样才能适应嵌入式系统应用的需要,在产 品价格和性能方面具备竞争力; (4)嵌入式系统的生命周期相当长。 (5)嵌入式系统不具备本地系统开发能力,通常需要有一套专门的开发工具和环境。 嵌入式操作系统的优势:1.低成本开发系统 2.可应用多种硬件平台 3.可定制内核 4.性能优异 5.良好的网络支持 linux文件类型:1.普通文件2.目录文件3.链接文件4.设备文件a.块设备文件(硬盘:/dev/hda1)b.字符设备(串行端口接口设备) linux文件属性:访问权限:r:可读w:可写x:可执行用户级别:u:文件拥有者g:所属用户组o:其他用户第一个字符显示文件类型:- 普通 d 目录 l 链接… 简答题:(6分) linux目录结构:/bin 存放linux常用操作命令的执行文件(二进制文件) /boot 操作系统启动时所需要的程序 /dev Linux系统中使用的外部设备 /etc 系统管理时所需要的各种配置文件和子目录 /etc/rc.d Linux启动和关闭时要用到的脚本 /etc/rc.d/init Linux默认服务的启动脚本 /home 系统中默认用户工作根目录 /lib 存放系统动态链接共享库 /mnt软驱、光驱、硬盘的挂载点 /proc存放系统核心与执行程序所需信息、 /root超级用户登陆时的主目录 /sbin 存放管理员常用系统管理程序 /usr存放用户应用程序和文件 /var存放日志信息(答六点即可) 编写一个shell文件:创建studen01 –student30这30个用户,用户组为class1,之后编写shell文件,删除所有用户 操作步骤:1.打开Terminal(终端): 2.输入vi shell 3.输入i 进入编辑模式 4.输入 #!/bin/bash groupadd class1 for((i=1;i<10;i++)) do username=student0$i

适合STM32的嵌入式操作系统

一下是网络收集的几种适合stm32的嵌入式操作系统,打算最近都移植一下,先做个记录。 基于STM平台且满足实时控制要求操作系统,有以下4种可供移植选择。分别为μClinux、μC/OS-II、eCos、FreeRTOS和都江堰操作系统(djyos)。下面分别介绍这四种嵌入式操作系统的特点及不足。 1、μClinux μClinux是一种优秀的嵌入式Linux版本,其全称为micro-control Linux,从字面意思看是指微控制Linux。同标准的Linux相比,μClinux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。 μClinux在结构上继承了标准Linux的多任务实现方式,分为实时进程和普通进程,分别采用先来先服务和时间片轮转调度,仅针对中低档嵌入式CPU 特点进行改良,且不支持内核抢占,实时性一般。 在内存管理上由于μClinux是针对没有MMU的处理器设计的,不能使用处理器的虚拟内存管理技术,只能采用实存储器管理策略。系统使用分页内存分配方式,在启动时对实际存储器进行分页。系统对内存的访问是直接的,操作系统对内存空间没有保护,多个进程可共享一个运行空间,所以,即使是一个无特权进程调用一个无效指针也会触发一个地址错误,并有可能引起程序崩溃甚至系统崩溃。 μClinux操作系统的中断管理是将中断处理分为两部分:顶半处理和底半处理。在顶半处理中,必须关中断运行,且仅进行必要的、非常少、速度快的处理,其他处理交给底半处理;底半处理执行那些复杂、耗时的处理,而且接受中断。因为系统中存在有许多中断的底半处理,所以会引起系统中断处理的延时。 μClinux对文件系统支持良好,由于μClinux继承了Linux完善的文件系统性能,它支持ROMFS、NFS、ext2、MS-DOS、JFFS等文件系统。但一般采用ROMFS 文件系统,这种文件系统相对于一般的文件系统(如ext2)占用更少的空间。但是ROMFS文件系统不支持动态擦写保存,对于系统需要动态保存的数据须采用虚拟RAM盘/JFFS的方法进行处理。

嵌入式系统试题闭卷及答案

《嵌入式系统》试题 闭卷答题时间:30分钟 一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、一般而言,嵌入式系统的构架可以分为4个部分:分别是()、存储器、输入/输出和软件,一般软件亦分为操作系统相关和()两个主要部分。 2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(),()以及片上系统。 3、操作系统是联接硬件与应用程序的系统程序,其基本功能有()、进程间通信、()、I/O资源管理。 4、从嵌入式操作系统特点可以将嵌入式操作系统分为()和分时操作系统,其中实时系统亦可分为()和软实时系统。 5、内核负责管理各个任务,或者为每个任务分配CPU时间,并且负责任务之间的(),内核的基本服务是()。 6、嵌入式开发一般采用()方式,其中宿主机一般是指()。 7、哈佛体系结构数据空间和地址空间(),ARM7TDMI采用()的内核架构,ARM920T采用()的内核架构。 采用()级流水线结构,ARM920TDMI采用()级流水线。 9.按操作系统的分类可知,Dos操作系统属于顺序执行操作系统,Unix 操作系统属于()操作系统,VxWorks属于()操作系统。 10、ARM7TDMI中,T表示支持16位Thumb指令集,D表示(),M表示内嵌乘法器Multiplier,I表示(),支持在线断点和调试。 二、选择题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。 1、要使CPU能够正常工作,下列哪个条件不是处理器必须满足的。() (A)处理器的编译器能够产生可重入代码(B)在程序中可以找开或者关闭中断(C)处理器支持中断,并且能产生定时中断(D)有大量的存储空间 2、下面哪种操作系统最方便移植到嵌入式设备中。() (A)DOS (B)unix (C)Windowsxp (D)linux 3、下面哪个选项不是SUB设备的特点。() (A)串行通信方式(B)不可热拨插 (C)分HOST、DEVICE和HUB (D)通信速率比RS232快 4、下面哪种嵌入式操作系统很少用于手机终端设备上。() (A)Symbian (B)WinCE (C)uc/os (D)linux 5、以下哪项关于SRAM和DRAM的区别是不对。() (A)SRAM比DRAM慢(B)SRAM比DRAM耗电多 (C)DRAM存储密度比SRAM高得多(D)DRM需要周期性刷新 6、uc/os操作系统不包含以下哪几种状态。() (A)运行(B)挂起 (C)退出(D)休眠 7、0x07&0x11的运算结果是。() (A)0x01 (B)0x11 (C)0x17 (D)0x07 8、以下哪种方式不是uc/os操作系统中任务之间通信方式。() (A)信号量(B)消息队列 (C)邮件(D)邮箱 9、以下哪种方式不是文件系统的格式。() (A)FAT (B)DOS (C)NTFS (D)Ext 10、在将uc/os操作系统移植到ARM处理器上时,以下哪些文件不需要修改。() (A) (B) (C) (D)OSTaskInit 三、判断题:共5小题,每小题2分,满分10分。 1、所有的电子设备都属于嵌入式设备。() 2、冯诺依曼体系将被哈佛总线所取代。() 3、嵌入式linux操作系统属于免费的操作系统。() 4、移植操作系统时需要修改操作系统中与处理器直接相关的程序。() 5、的最大通信速率为12M/S。() 简答题:共2小题,每小题10分,满分20分。 1、根据嵌入式系统的特点,写出嵌入式系统的定义。 2、试分析实时操作系统的工作状态特点及相互之间的转换。

嵌入式操作系统的发展现状及问题分析

https://www.360docs.net/doc/bd19016390.html, 2009.09 270 2009年 第9期 嵌入式操作系统的发展现状及问题分析 文/杨光 辛海会 徐立华 摘 要:本文对嵌入式操作系统的特征进行了论述和分析,通过分析嵌入式操作系统的发展现状的存在问题,讨论了嵌入 式操作系统今后的发展趋势。 关键词:嵌入式操作系统;发展现状;问题分析;发展趋势 中图分类号:N94 文献标识码:A 文章编号:1006-4117(2009)09-0270-01嵌入式操作系统的引入很大程度上降低了系统开发的复杂度、大大提高嵌入式系统开发的开发的效率和灵活性,增强了嵌入式系统的功能。当前已经有许多十分成熟的嵌入式操作系统,包括VxWorks、pSOS、Linux、DeltaOS等在内的,每一种都有其自身的优越性。国内公司进行的嵌入式操作系统的研究和实践也是非常广泛的,和有价值的。它有效的使国内的嵌入式操作系统市场没有被国外产品完全垄断,同时又使国内在此领域的研究得到了发展。本文在分析嵌入式系统的基础上,对嵌入式系统的存在问题和发展趋势进行了概述,对国内嵌入式系统的发展有一定借鉴作用。 一、嵌入式操作系统 嵌入式操作系统区别于简单嵌入的操作系统的主要特点:第一是其本身的意义不同,嵌入式操作系统是以应用为主要目的,控制嵌入式系统的全部软、硬资源的调度工作、分配以及协调并发活动。第二是嵌入式操作系统自身所体现特征以及功能作用,嵌入式操作系统的主要特征体现在其精巧可靠性高、实时稳定性强、交互性差、且减弱了硬件的差异提高了其适应性和可移植能力等。嵌人式操作系统[1]的主要作用是屏蔽底层硬件的差别,给上层各应用程序提供统一的接口,并控制完成内存管理、任务调度。 二、嵌入式操作系统存在问题分析 目前的开发模式相对于快速发展市场的需求而言,还存在开发周期长、难度大、维护困难、成本高等问题。针对要完成嵌入式操作系统的开发过程中的自动配置以提高移植效率[2],以及使嵌入式设备在使用中具有自动重配置功能等,早期操作系统的体系结构已经不能适应这样的要求。故面向构件的体系结构应作如下考虑:构件化操作系统、标准统一的网络通信协议、智能化的应用程序。 针对目前常用的几类嵌入式操作系统[3]则各有优缺点:1.嵌人式Linux。 Linux是一个成熟而稳定的操作系统,它有着众多的优点。Linux的源码开放,注释丰富,文档齐全,任何人都可以获取并修改,开发适合自己的产品。再就是Linux是一个跨平台的系统,且Linux内核小,效率高,应用程序较小,且同样稳定。然而,嵌入式Linux操作系统与其他嵌入式操作系统相比较也存在一定的弱点:第一,嵌入式应用软件的开发需要强大的开发工具和操作系统的支持;第二,核心调试工具不全,不方便调试;第三,嵌入式操作系统Linux占用的内存大且需要虚拟内存,这给其应用带来了不便。 2.嵌入式Palm。 基于有些电脑的内存较小的原因,开发了Palm OS操作系统,它的主要特性是节能功能、进程管理和资源的合理调度。此外,Palm OS具有极强开放性,用户可以根据自己的需要方便的开发定制。 3.嵌入式Windows CE。 Windows CE互操作性比较强,适应于多种CPU和多种硬件平台,应用领域较广。实时性教好。但Windows CE是非开放性OS,内核、效率方面比较笨拙,不适合应用在廉价的掌上电脑中,且版权费用较高。 三、嵌入式系统的发展趋势 嵌入式操作系统将朝向以下几个方面迅猛发展: 1.开源化:提供开放的操作系统应用程序接口。所以,由于Linux完全免费,源码开放,在今后将成为开发嵌入式系统首选的操作系统。 2.节能化:采用微内核技术,实现小尺寸、微功耗和低成本,支持小型电子设备。同时,提高产品的可靠性和可维护性。 3.人性化:提供精巧的多媒体人机界面,以满足不断提高的用户需求。 4.安全化:提供安全保障机制,源码的可靠性越来越高。 5.网络化:面向网络、面向特定应用,要求配备标准的网络通信接口。嵌入式操作系统的开发越来越易于移植和联网。 6.标准化:随着嵌入式操作系统的广泛应用的发展,信息交换、资源共享机会增多等问题的出现,需要建立相应的标准去规范其应用。 嵌入式系统在中国也存在着巨大的潜力和发展前景[4]。首先嵌入式操作系统将广泛应用于家电领域。与传统的计算机市场不同,中国有更为巨大的家电市场,这些家电产品很大一部分将会采用数字化技术,使嵌入式操作系统面临巨大的市场潜力。中国人最了解自己的国情,最熟悉中国的文化,因此,中国人自己研制的系统更能满足中国用户的需求。加上国内企业在联络、反映速度、价格、服务等方面均有很大优势,因此发展前景广阔。 结语:目前嵌入式系统的应用已经渗入到国民经济的各个方面,成为信息时代的宠儿。面对嵌入式系统开源化、系统化、人性化、网络化的发展趋势,传统的嵌入操作系统体系结构必须进行革命性的改变。相信随着科技的进步,生产工艺、以及人们科技素养的进一步提高,嵌入式产品必将在各行各业中扮演越来越重要的角色。 作者单位:杨 光 中国矿业大学计算机科学与技术学院 辛海会 中国矿业大学安全工程学院 徐立华 中国矿业大学信电学院 参考文献: [1]高伟华,杨子君.嵌入式操作系统的研究现状及发展趋势[J].黑龙江电力.2002.5:383-386 [2]向波.浅析嵌入式操作系统的发展趋势[J ].绵阳师范学院学报.2008.11:92-95 [3]熊江.三种嵌入式操作系统的分析与比较[J].单片机与嵌入式系统应用.2003:14-16 [4]钟锡昌.嵌入式操作系统在中国[J].中国科技信息.2001.5:14-16 学术探讨

相关文档
最新文档