嵌入式操作系统复习资料
- 格式:doc
- 大小:34.50 KB
- 文档页数:4
嵌入式复习资料1、嵌入式系统是指以应用为中心,以计算机技术为基础,并且软硬件可裁减,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
2、嵌入性、专用性与计算机系统是嵌入式系统的3个基本要素。
3、嵌入式系统的特点:专用的计算机系统;满足系统应用环境的要求;满足对象系统的控制要求;是一个知识集成应用系统;具有较长的应用生命周期;软件固化在非易失性存储器中;多数嵌入式系统具有实时性要求;设计需专用的开发环境和工具.3、嵌入式系统发展的4个阶段1)以单片机为核心的低级嵌入式系统2)以嵌入式微处理器为基础的初级嵌入式系统3)以嵌入式操作系统为标志的中级嵌入式系统4)以Internet 为标志的高级嵌入式系统4、嵌入式系统的发展趋势1)嵌入式系统结构将更加复杂,硬件向集成化发展,软件将逐渐PC化2)嵌入式系统的小型化、智能化、网络化、可视化、微功耗和低成本3)不断改善人机交互的手段,提供精巧的多媒体人机界面4)云计算、可重构、虚拟化等技术被进一步应用到嵌入式系统5)嵌入式软件开发平台化、标准化、系统可升级,代码可复用将更受重视5、嵌入式系统的软件:中间层程序、嵌入式操作系统、应用软件层。
6、嵌入式处理器的种类:嵌入式微处理器(Embedded Microcomputer Unit,EMPU)嵌入式微控制器(Embedded Microcontroller Unit,EMCU)嵌入式数字信号处理器(Embedded Digital Signal Processor,EDSP)嵌入式片上系统(System On Chip,SOC)嵌入式可编程片上系统(System On a Programmable Chip,SOPC)。
7、四大流派的嵌入式处理器内核MIPS POWERPC ARM 68K/COLDFIRE。
8、嵌入式操作系统(Operating System,OS)是支持嵌入式系统工作的操作系统,它负责嵌入式系统的全部软、硬件资源分配、调度、控制和协调等活动,它是嵌入式应用软件的开发平台,用户的其它应用程序都建立在嵌入式操作系统之上。
嵌入式实时操作系统考试复习1.什么是嵌入式操作系统?嵌入式系统有什么特点?答:运行在嵌入式硬件平台上,对整个系统及其操作的部件、装置等资源进行统一协调、指控和控制的系统软件就叫嵌入式操作系统。
特点:微型化、可剪裁性、实时性、高可靠性、易移植性2.实时操作系统需要满足的条件:实时操作系统必须是多任务系统,任务的切换时间应与系统中的任务数无关,中断延迟的时间可预知并尽可能短。
3.什么是实时操作系统?答:什么是实时?实时含有立即、及时之意。
如果操作系统能使计算机系统及时响应外部事件的请求,并能及时控制所有实时设备与实时任务协调运行,且能在一个规定的事件内完成对事件的处理,那么这种操作系统就是一个实时操作系统。
4.内核的类型答:不可剥夺型内核:也叫做合作型多任务内核,在这种内核中,总是优先级别高的任务最先获得CPU的使用权。
为防止某个任务霸占CPU的使用权,这种内核要求每个任务必须能主动放弃CPU的使用权。
可剥夺型内核:CPU总是运行多任务中优先级别最高的任务,即使CPU正在某个优先级低的任务,当有高优先级别的任务准备就绪时,该高级别的任务就会剥夺正在运行的CPU的使用权,而使自己获得CPU的使用权。
5.嵌入式操作系统的三项功能:内存管理、多任务管理、外围设备管理第三章1.任务有三个部分组成:任务程序代码、任务堆栈、任务控制块2.具有自己的私有空间叫“进程”,无叫做“线程”。
一个任务不是对应一个进程。
3.任务的状态:就绪状态:最多有9个、运行状态:只能有1个、等待状态:最多有9个4.系统任务:为了与用户任务区别,这种系统自己所需要的任务就叫做系统任务。
两个系统任务:空闲任务和统计任务,空闲任务是每个应用程序必须使用的,统计任务则是应用程序可以根据实际需要来选择5.空闲任务:这个空闲任务几乎不做什么事情,只是对系统定义的一个空闲任务运行次数计数器进行加1操作。
一个用户应用程序必须使用这个空闲任务,而且这个任务不能通过程序来删除。
1、什么是嵌入式系统?它由及部分组成?嵌入式系统是指操作系统和功能软件集成于计算机硬件系统之中。
简单的说就是系统的应用软件与系统的硬件一体化,类似与BIOS的工作方式。
具有软件代码小,高度自动化,响应速度快等特点。
特别适合于要求实时的和多任务的体系。
嵌入式系统一般有3个主要的组成部分:硬件、实时操作系统以及应用软件。
2、嵌入式系统的三要素是什么?嵌入式系统的三要素是嵌入、专用、计算机;其中嵌入性指的是嵌入到对象体系中,有对象环境要求;专用性是指软、硬件按对象要求裁减;计算机指实现对象的智能化功能。
3、嵌入式系统一般由几层组成?嵌入式系统一般由硬件层、中间层、软件层和功能层组成。
4、Linux作为嵌入式系统的优势?(1)可应用于多种硬件平台。
(2)添加部件非常容易(3)支持大量硬件(4)程序源码全部公开(5)完善的开发工具5、何为虚拟内存?虚拟内存的管理有何作用?使用虚拟地址寻址整个系统的主存和辅存为虚拟内存。
可以运行体积比物理内存还要大的应用程序,也可以实现“按需调页”,既满足了程序的运行速度,又节约了物理内存。
6、进程内存区域涉及哪几种数据段?代码段:可执行的操作命令数据段:已初始化的全局变量BSS段:未初始化的全局变量堆:进程运行中被分配的内存段栈:程序临时创建的局部变量7、简述内核空间和用户空间的区别?内核空间:任何操作都可以执行用户空间:禁止处理器对硬件的直接访问和对内容的未授权访问。
两者分别引用不同的内存映射,即程序代码段使用不同的“地址空间”8、简述共享内存的作用①、共享内存区域是被多个进程共享的一部分物理内存②、进程可以直接访问该共享内存区域,并通过该区域进行通信。
③、进程间快速共享数据④、共享虚拟内存的页面出现在每一个共享该页面的进程的页表中,但它不需要所有进程的虚拟内存都有相同的虚拟地址9、简述内存管理与虚拟文件系统之间的关系内存管理利用虚拟文件系统支持交换,交换进程定期由调度程序调度,这也是内存管理依赖于进程调度的唯一原因。
一、填空题(请将答案填入题后括号中):共10小题,每小题2分,满分20分。
1、一般而言,嵌入式系统的构架可以分为4个部分:分别是(处理器)、存储器、输入/输出和软件,一般软件亦分为操作系统相关和(应用软件)两个主要部分。
2、根据嵌入式系统使用的微处理器,可以将嵌入式系统分为嵌入式微控制器,(嵌入式微处理器)(嵌入式DSP处理器)以及片上系统。
3、操作系统是联接硬件与应用程序的系统程序,其基本功能有(任务管理)、任务间通信、(内存管理)和I/O资源管理。
4.实时系统:指系统能够在限定的(响应)时间内提供所需水平的服务5.ucos-ii最多管理(64 )个任务6.ucos-ii中,OS_TaskStat任务的优先级占(62 ),OS_TaskIdle任务的优先级是( 63 )7 ucos-ii中,OSRdyTbl就绪表的大小是由宏定义:OS_RDY_TBL_SIZE来定义,由全局宏( OS_LOWEST_PRIO )来决定的,8. TCB中的四个成员变量:INT8U OSTCBX;INT8U OSTCBY;INT8U OSTCBBitX;INT8U OSTCBBitY ,用于(加速)任务就绪态的计算过程。
9.TCB内部最重要的元素放在第一个单元叫(OSTCBStkPtr),因此,这个变量是惟一一个能用汇编语言处置的变量,将其放在结构最前面,使得在汇编语言中处理这个变量时较为容易。
10.uC/OS-II是一个简洁、易用的基于优先级的嵌入式(抢占式)多任务实时内核。
11.任务是一个无返回的无穷循环。
uc/os-ii总是运行进入就绪状态的(最高优先级)的任务。
12.因为uc/os-ii总是运行进入就绪状态的最高优先级的任务。
所以,确定哪个任务优先级最高,下面该哪个任务运行,这个工作就是由调度器(scheduler)来完成的。
13.(不可剥夺型)内核要求每个任务自我放弃CPU的所有权。
不可剥夺型调度法也称作合作型多任务,各个任务彼此合作共享一个CPU。
一1.嵌入式系统定义―以应用为中心,以计算机技术为基础,软件硬件可裁剪,功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
‖2.嵌入式系统与pc和单片机的区别嵌入式系统≠ PC机●嵌入式系统一般是专用系统,而PC是通用计算平台●嵌入式系统的资源比PC少得多●嵌入式系统软件故障带来的后果比PC机大得多●嵌入式系统一般采用实时操作系统●嵌入式系统大都有成本、功耗的要求●嵌入式系统得到多种微处理体系的支持●嵌入式系统需要专用的开发工具嵌入式系统≠单片机系统●目前嵌入式系统的主流是以32位嵌入式微处理器为核心的硬件设计和基于实时操作系统(RTOS)的软件设计;●单片机系统多为4位、8位、16位机,不适合运行操作系统,难以完成复杂的运算及处理功能;●嵌入式系统强调基于平台的设计、软硬件协同设计;单片机大多采用软硬件流水设计;●嵌入式系统设计的核心是软件设计(占70%左右的工作量);单片机系统软硬件设计所占比例基本相同。
3.实时系统的定义(软、硬)实时系统:如果逻辑和时序出现偏差将会引起严重后果的系统软实时系统:系统的宗旨是使各个任务运行得越快越好,并不要求限定某一任务必须在多长时间内完成(响应时间为数十秒)硬实时系统:各任务不仅要执行无误而且要做到准时(响应时间在ms 或us级)二1. BSP的概念和特点BSP(板级支持包)是介于底层硬件和操作系统之间的软件层,它完成系统上电后最初的硬件和软件初始化,并对底层硬件进行封装,使得操作系统不再面对具体的操作。
BSP的特点:1)硬件相关性:因为嵌入式系统的硬件具有应用相关性,所以,作为高层软件与硬件之间的接口,BSP必须为操作系统提供操作和控制具体硬件的方法。
2)操作系统相关性:不同的操作系统具有各自的软件层次结构,因此,针对不同的操作系统具有特定的接口形式。
2. SoC定义SoC 就是System on Chip ,SoC嵌入式系统微处理器就是一种电路系统。
嵌入式复习重点一选择题(20分)1、计算机中最小存储单元是什么位2、当计算机突然断电时什么数据会丢失RAM3、计算机中最常使用的字符编码是什么ASCII码4、不属于计算机特点的是5、关于病毒说法6、计算机在汽车工业生产应用属于什么7、32位中32指的是什么32是指数据位数二、填空题1、ARM处理器模式用户模式(usr):ARM处理器正常的程序执行状态。
快速中断模式(fiq):用于高速数据传输或通道处理。
外部中断模式(irq):用于通用的中断处理。
管理模式(svc):操作系统使用的保护模式。
数据访问终止模式(abt):当数据或指令预取终止时进入该模式,可用于虚拟存储及存储保护。
系统模式(sys):运行具有特权的操作系统任务。
定义指令中止模式(und):当未定义的指令执行时进入该模式,可用于支持硬件协处理器的软件仿真。
2、典型嵌入式分为哪四个层次引导加载程序。
包括固化在固件(firmware)中的boot代码(可选),和BootLoader两大部分。
Linux内核。
特定于嵌入式板子的定制内核以及内核的启动参数。
文件系统。
包括根文件系统和建立于Flash内存设备之上文件系统。
通常用ramdisk来作为rootfs。
用户应用程序。
特定于用户的应用程序。
有时在用户应用程序和内核层之间可能还会包括一个嵌入式图形用户界面。
常用的嵌入式GUI有:MicroWindows和MiniGUI,QT、GTK。
3、ARM存储系统ARM体系结构所支持的最大寻址空间为4GB(32位)。
两种存储格式:大端格式小端格式ARM支持的异常复位未定义指令软件中断指令预取中止数据中止IRQ(外部中断请求)FIQ(快速中断请求)三名词解释1、JTAG 联合测试行为组织在硬件结构上JTAG接口包括两部分JTAG端口和控制器JTAG主要应用于:电路的边界扫描测试和可编程芯片的在系统编程。
2、ROM(Read only Memory)只读存储器RAM(Random access Memory)随机存取存储器PROM(programmable ROM)可编程只读存储器EPROM(Erasable Programmable)可改写只读存储器SRAM(Static RAM)静态随机存取存储器DRAM(Dynamic RAM)动态随机存取存储器SDRAM(Synchronization Dynamic RAM )同步动态随机存储器3、TAP控制器TAP控制器是边界扫描测试的核心,它是一个具有16个状态的状态机。
嵌入式系统复习提纲第一章1,什么是嵌入式系统?IEEE(国际电气和电子工程师协会)的定义是什么?一般定义是什么?根据IEEE(国际电气和电子工程师协会)的定义:嵌入式系统是“用于控制、监视或者辅助操作机器和设备的装置一般定义:“以应用为中心、以计算机技术为基础、软件硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
”●广义上讲,凡是带有微处理器的专用软硬件系统都可称为嵌入式系统。
●从狭义上讲,我们更加强调那些使用嵌入式微处理器构成独立系统,具有自己操作系统,具有特定功能,用于特定场合的嵌入式系统。
这里所谓的嵌入式系统是指狭义上的嵌入式系统。
2,嵌入式系统有哪些重要的特征?(1)系统内核小●由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。
●比如ENEA公司的OSE分布式系统,内核只有5K,而Windows的内核则要大得多。
(2)专用性强●嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植。
●即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。
●同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全不同的概念。
(3)系统精简●嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。
(4)高实时性OS● 这是嵌入式软件的基本要求,而且软件要求固态存储,以提高速度。
软件代码要求高质量和高可靠性、实时性。
3, 实时系统的定义是什么?答:实时系统的正确性依赖于运行结果的逻辑正确性和运行结果产生的时间正确性,即实时系统必须在规定的时间范围内正确地响应外部物理过程的变化。
4,在典型的嵌入式系统组成中,可以分为哪四层?每一层具体是通常包含哪些单元?中间层BSP 有哪些基本功能? 答:硬件层,中间层,软件层,功能层● 中间层BSP 功能之一:硬件初始化 ● 片级初始化:主要完成CPU 的初始化,把CPU 从上电时的缺省状态逐步设置成为系统所要求的工作状态。
嵌⼊式复习资料(精)第⼀章嵌⼊式系统基础知识1.嵌⼊式系统基础知识计算机系统的两个发展分⽀通⽤计算机与嵌⼊式计算机嵌⼊式系统的⼀般定义、IEEE定义⼀般定义:以应⽤为中⼼、以计算机技术为基础,软硬件可裁剪,应⽤系统对功能、可靠性、成本、体积、功耗和应⽤环境有特殊要求的专⽤计算机系统。
是将应⽤程序、操作系统和计算机硬件集成在⼀起的系统。
(技术⾓度)嵌⼊式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在⼀起的计算机系统。
(系统⾓度)⼴义定义:任何⼀个⾮计算机的计算系统。
IEEE(国际电⽓和电⼦⼯程师协会)定义:嵌⼊式系统是“⽤于控制、监视或者辅助操作的机器、设备或装置”。
嵌⼊式系统4个组成部分嵌⼊式微处理器、外围硬件设备、嵌⼊式操作系统、⽤户应⽤程序嵌⼊式系统的三个基本要素嵌⼊性、专⽤性、计算机系统嵌⼊式系统的软硬件特点硬件⽅⾯:稳定性、低功耗、体积受限、看门狗电路、成本低、系统资源少软件⽅⾯:实时性、可裁剪性、精简性、⼈机界⾯要求不⾼嵌⼊式系统的硬件架构以嵌⼊式处理器为中⼼,配置存储器、I/0设备、通信模块以及电源等必要的辅助接⼝组成。
嵌⼊式系统的硬件核⼼嵌⼊式微处理器嵌⼊式处理器的种类嵌⼊式微处理器、嵌⼊式微控制器、嵌⼊式DSP、嵌⼊式SOCS0CSOC是指在单芯⽚上集成数字信号处理器、微控制器、存储器、数据转换器、接⼝电路等电路模块,可以直接实现信号采集、转换、存储、处理等功能。
2.嵌⼊式系统硬件嵌⼊式微处理器的体系结构冯诺依曼结构:单⼀的程序和数据总线。
哈佛结构:独⽴的程序和数据总线。
RISC(精简指令集计算机)的概念及思想精华1979年,美国加州伯克利分校提出了RISC的概念,基本思想是尽量简化计算机指令功能,只保留那些功能简单,能在⼀个节拍内执⾏完成的指令,⽽把较复杂的功能⽤⼀段⼦程序实现。
RISC思想的精华就是通过简化计算机指令功能、简化计算机指令格式,使指令的平均执⾏周期减少,同时⼤量使⽤通⽤寄存器来提⾼计算机的⼯作主频,提⾼程序的速度。
嵌入式LINUX操作系统知识点复习1、背)嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁剪,对功能、可靠性、成本、体积和功耗有严格要求的专用计算机系统。
2、通常把进行嵌入式系统开发的PC机称为宿主机,把嵌入式系统的机器称为H标机。
3、)在目标机上嵌入某种功能较强且占用内存较少的操作系统,用户程序在该操作系统支持下运行,这种操作系统称为嵌入式操作系统。
4、带操作系统的嵌入式系统,在编制较为复杂和高端应用程序时,用户程序会显得比较简单,而不带操作系统的嵌入式系统,在系统稳定性、实时性等方面要髙于带操作系统的, 但不太适用于编制较为复杂的用户程序。
5、目前的嵌入式操作系统主要有Linux、WindowsCE、eCos、VXWorks等几种。
6、ARM处理器是一种低功耗、高性能的32位RISC处理器。
7、在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。
8、shell脚本是一个包含一系列命令序列的文本文件。
9、X ) shell脚本编程与C语言编程的区别。
10、vi是一个Linux系统下的文本编辑器,可通过它来编写程序代码。
11、gcc是Linux下的程序编译工具,它可将C语言源程序编译链接成可执行文件。
12、gcc通过后缀来区别输入文件的类别,默认的输岀文件名为a.outo13、在Linux下,gcc进行编译链接的缺省操作是链接成动态库,要链接成静态库需要加上“-static”的参数。
14、动态库链接与静态库链接的区别。
15、gdb是Linux下的程序调试工具,它可启动被调试程序、让被调试程序在断点处停住、可检査程序状态。
16、需要用gdb调试的程序,在用gcc编译时需要加上"-g”的参数。
17、MakeFile文件描述了整个工程的编译、链接等规则,它是make文件执行时所必需的文件。
18、X )分析一个具体的MakeFile文件。
19、在Linux中的文件编程可使用系统调用和C语言库函数两种方法。
1.什么是“多道程序设计”技术?它对操作系统的形成起到什么作用?让多个计算问题同时装入一个计算机系统的主存储器并行执行;作用:提高了CPU的利用率,提高了内存和I/O设备的利用率,改变了系统的吞吐率,充分发挥系统的并发性2.什么是“原语”、“特权指令”、“系统调用命令”和“访管指令”?它们之间有无一定的联系?原语:是由若干多机器指令构成的完成某种特定功能的一段程序,具有不可分割性特权指令:指具有特殊权限的指令。
这类指令只用于操作系统或其他系统软件,一般不直接提供给用户使用。
系统调用命令:系统调用是用户程序请求操作系统为其服务的惟一形式,在UNIX中把系统调用称为程序员接口访管指令:访管指令是一条可以在目态下执行的指令,用户程序中凡是要调用操作系统功能时就安排一条访管指令。
3.操作系统是如何处理源程序中出现的系统调用命令的?编译程序总是把程序中的系统调用命令改写成一条访管指令和相应的参数。
这样在程序实际被执行时,就通过访管指令进入操作系统,达到调用操作系统功能子程序的目的4.什么是操作系统的基本功能?操作系统的基本功能包括处理机管理、存储管理、设备管理、信息管理、作业管理。
5.信号量上的P、V操作只是对信号量的值进行加1或减1操作吗?在信号量上还能够执行除P、V操作外的其他操作吗?答:根据信号量的定义可知,P、V操作并非只是对信号量进行减1或加1操作,更重要的是在减1或加1后,还要判断运算的结果。
对于P操作,判定后调用进程自己有可能继续运行,也可能阻塞等待。
对于V 操作,判定后调用进程自己最后总是继续运行,但之前可能会唤醒在信号量队列上等待的进程。
6.一个计算机有6台磁带机,有n个进程竞争使用,每个进程最多需要两台。
那么n为多少(n<=5)时,系统才不存在死锁的危险?n*(x-1)+1<=mn :进程数x:最多使用的资源数m:资源总数由于每个进程最多需要两台磁带机,考虑极端情况:每个进程已经都申请了一台。
2010~2011学年第一学期(计算机专业)嵌入式复习资料1、什么叫嵌入式系统?以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
2、嵌入式系统的特点应用的特定性和广泛性技术、知识、资金的密集性较长的生命周期高效性高可靠性软硬一体,软件为主无自举开发能力P23、有哪些常见的嵌入式操作系统,各有什么特点。
VxWorks 特点:可靠性、实时性、可剪裁性、P98pSOS 特点:1 支持范围相当广泛的硬件2集成了tcp/ip 协议,具有天生的英特尔网访问能力3快速精确的系统核心 4 运行高效稳定,多处理器支持Palm OS 特点:操作系统的节能功能、合理的内存管理、数据以数据库格式存储、应用范围相当广泛。
QNX 特点:分布式,嵌入式可扩展的实时操作系统。
Windows CE 特点:1 具有灵活的电源管理功能 2 使用了对象存储技术3高效率的操作系统特性 4 拥有良好的通信能力。
5 支持嵌套中断 6 更好的线程响应能力。
7 256个优先级别。
8 支持近1500个Win32 API.μC/OS-II 特点:是一种免费公开的源代码,结构小巧,具有可剥夺实时内核的实时操作系统。
嵌入式Linux 特点:开放源代码,高性能、可剪裁的内核,优秀的网络系统。
3 嵌入式操作系统分哪两类?硬实时系统和软实时系统4、ARM共有多少寄存器?其中有哪几个通用寄存器?哪几个状态寄存器?含有37个寄存器。
31个通用寄存器:包括程序计数器PC等,这些寄存器都是32位寄存器。
6个状态寄存器:用以标识CPU的工作状态及程序的运行状态,均为32位,目前只使用了其中的一部分。
P335、ARM微处理器有哪7种运行模式?1.用户模式(usr):ARM处理器正常的程序执行状态;2. 快速中断模式(fiq):用于高速数据传输或通道管理;3. 外部中断模式(irq):用于通用的中断处理;4. 管理模式(svc):操作系统使用的保护模式;5. 数据访问终止模式(abt):当数据或指令预取终止时进入该模式,用于虚拟存储及存储保护;6.系统模式(sys):运行具有特权的操作系统任务;7.未定义指令中止模式(und):当未定义指令执行时进入该模式,可用于支持硬件协处理器的软件仿真6、几个常用的的指令:B、BL、BLX、BX、CMP、MOV、MRS、MSR、LDR、STR、ADD、SUB、TEQ、TST等。
嵌入式操作系统复习提纲1.嵌入式系统的特点?专用性强、实时性好、可裁剪性好、可靠性高和功耗低等2.ARM的运行模式和工作状态?特权模式和非特权模式?工作状态:第1种:ARM状态。
处理器执行32位的字对齐的ARM指令。
第2种:Thumb状态。
处理器执行16位的半字对齐的Thumb指令。
运行模式:用户模式(usr) 快速中断模式(fiq) 外部中断模式(irq) 管理模式(svc) 数据访问中止模式(abt) 系统模式(sys) 未定义指令中止模式(und)在这7种运行模式,除了用户模式外,其他6种处理器模式都为特权模式。
在这6种特权模式中,除了系统模式外的其他5种特权模式又称为异常模式。
3.ARM和S3C2410的关系?S3C2410的内核?S3C2410是韩国三星公司生产的嵌入式处理器,它采用了ARM公司的ARM920T(即ARM9)内核4.Make和Makefile的关系?make是一种命令,是根据Makefile文件的规则决定如何编译和连接程序或其他的动作。
Makefile的普通变量与预定义变量有什么不同?预定义变量有哪些?它们分别表示什么意思?答:普通变量:引用变量时,只需在变量前面加上$符;预定义变量:已经定义好,直接引用即可。
预定义变量有:$@、$^、$<。
$@:表示完整的目标文件名;$^:表示所有的依赖文件;$<:表示依赖文件列表中的第一个文件5.BootLoader的作用和意义?常用的BootLoader?BootLoader的结构分为两部分,Stage1:用汇编语言编写,主要进行设备的初始化;Stage2:用C语言编写,增强程序的移植性和可读性。
BootLoader是系统加电后运行的第一段代码,通过这段小程序,可以初始化硬件设备、建立内存空间的映射图,从而使系统的软硬件环境达到合适的状态。
ARM常用的Bootloader程序有U-Boot,Blob,RedBoot,vivi,ARMboot6.Linux内核文件映像?根文件系统映像文件?内核映像文件zImage。
嵌⼊式系统-复习题资料⼀、1、某⽂件属性显⽰为 drwxr-xr-x,则该⽂件是( A )。
A、⽬录⽂件B、普通⽂件C、链接⽂件D、管道⽂件2、在linux中,通常作为⽤户⼯作⽬录的是( C )。
A、 /bootB、/etcC、 /homeD、/bin3、下列命令中,⽤于显⽰系统进程列表的命令是( D )。
A、 locateB、mvC、 catD、ps4、表⽰⽬标⽂件的扩展名⼀般是( B )。
A、.cB、 .oC、 .hD、 .i5、在Makefile的⼯程管理中,( C )表⽰第⼀个依赖⽂件的名称。
A、 $*B、$+C、$<D、 $?6、以下不属于嵌⼊式系统特点的是 B 。
A 、不具备⼆次开发能⼒B 、⾯向通⽤应⽤ C、软硬件裁剪 D、软件固化于芯⽚7、对嵌⼊式板进⾏在线交叉调试(ICD⽅式),所使⽤的连接接⼝⽅式为( D )。
A、USBB、⽹络接⼝C、串⼝D、 JTAG8、linux与开发板串⾏调试⽅式中,所使⽤到的⼯具软件是( A )A、 minicomB、超级终端C、arm-linux-gccD、 gdb9、在Linux内核源代码中,与处理器体系结构有关的⼦⽬录是( C )。
A、/includeB、/initC、/archD、drivers10、下列⽂件系统,不是嵌⼊式系统的⽂件系统格式的是( B )A、cramfsB、ntfsC、romfsD、jffs11、以下属于Linux⽂件系统格式的是( A )A、EXT3B、FATC、FAT32D、NTFS12、某⽂件属性显⽰为–rwxr-xr-x,则该⽂件是( B )。
A、⽬录⽂件B、普通⽂件C、链接⽂件D、管道⽂件13、在linux中,通常作为存放系统配置⽂件的⽬录是( B )。
A、 /bootB、/etcC、 /homeD、/bin14、下列命令中,⽤于给特定进程发送信号的命令是( C )。
A、 locateB、mvC、 killD、 cat15、在Makefile的⼯程管理中,( D )表⽰⽬标⽂件的完整名称。
嵌入式系统复习重点一、题型填空题 2`×10单选题 2`×5名词解释 2`×5简答题 5`×6设计题 15`×2二、考点第一章嵌入式系统概述1、嵌入式系统从技术角度的定义及其特点(见PPT第一章)定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
特点:嵌入性、内含计算机、专用性。
2、嵌入式系统的未来P3产品市场窗口现在预计翻番的周期狂热到6~9个月;全球重新定义市场的机会和膨胀的应用空间;互联现在是一个需求而不是辅助性的,包括用有线和刚刚显露头角的无线技术;基于电子的产品更复杂化;互联嵌入式系统产生新的依赖网络基础设施的应用;微处理器的处理能力按莫尔定律(Moore’s L aw)预计的速度在增加。
该定律认为集成电路和晶体管个数每18个月翻一番。
3、什么是嵌入式处理器及嵌入式系统的分类P5嵌入式处理器:为完成特殊应用而设计的特殊目的的处理器。
嵌入式系统可以分为以下几大类:嵌入式微处理器EMPU;嵌入式微控制器MCU;嵌入式DSP处理器;嵌入式片上系统SOC。
4、嵌入式操作系统相关的基本概念P7-10(可能考名词解释)前后台系统:对基于芯片的开发来说,应用程序一般是一个无限的循环,可称为前后台系统或超循环系统。
循环中调用相应的函数完成相应的操作,这部分可以看成后台行为,后台也可以叫做任务级,这种系统在处理的及时性上比实际可以做到的要差。
中断服务程序处理异步事件,这部分可以看成前台行为,前台也叫中断级,时间相关性很强的关键操作一定是靠中断服务程序来保证的。
操作系统:操作系统是计算机中最基本的程序。
操作系统负责计算机系统中全部软硬资源的分配与回收、控制与协调等并发的活动;操作系统提供用户接口,使用户获得良好的工作环境;操作系统为用户扩展新的系统功能提供软件平台。
实时操作系统:实时操作系统是一段在嵌入式系统启动后首先执行的背景程序,用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源(包括存储器、外设等)管理、消息管理、任务调度、异常处理等工作。
一.选择题:1.嵌入式处理器分类:嵌入式微处理器(EMPU),嵌入式微控制器(MCU),嵌入式DSP处理器(EDSP),嵌入式片上系统(SOC)。
2.嵌入式系统软件:一般的嵌入式系统的软件都由以下部分组成:初始化引导代码、板级支持包、操作系统、通信协议栈、图形用户界面和应用软件。
3.宿主机与目标机:开发环境分为本地开发环境和交叉开发环境(CDE)。
交叉开发环境由可分为开放性以及商业性两大类。
需要交叉开发环境的支持是嵌入式应用软件开发的一个显著特点。
交叉开发环境是指编译、链接和调试嵌入式应用软件的开发环境,与运行嵌入式应用软件的环境有所不同,常采用宿主机/目标机模式。
嵌入式设备和和PC的X86体系结构的指令集完全不同,一种解决办法是在PC上安装另外一套开发环境,这个开发环境仍旧由工具链、库等各个部分组成,它们的可执行程序的二进制代码基于X86平台,但是用它们编译、链接出的应用程序的二进制代码基于嵌入式处理器的指令集,不能直接在PC上运行,需要下载到嵌入式设备中运行,具备这种功能的开发环境就成为交叉开发环境。
因为开发环境中最重要的组成部分是编译器,所以有时也渐成交叉开发环境为交叉编译环境。
在嵌入式程序设计中,把运行交叉开发环境的pc称为宿主机,把嵌入式设备称为目标机。
宿主系统通常是一个pc、工作站或手提式个人计算机。
它具有如下硬件。
⏹带有高速缓存的高性能处理器。
大容量RAM存储区。
只读存储器基本输入输出系统。
超大容量磁盘。
键盘。
显示器。
鼠标。
网络连接。
至少需要如下软件。
⏹高级语言程序开发套件或者IDE。
宿主处理器编译器和交叉编译器。
交叉汇编器。
目标系统包含处理器,存储嵌入式软件ROM影响的ROM存储器,用于堆栈,临时变量和存储器缓冲区的RAM,外围设备和接口。
4.中断服务中断处理的全过程分为中断检测、中断响应和中断处理3个阶段。
中断检测在每条指令结束时进行,检测是否有中断请求或者是否满足异常条件。
嵌入式复习资料第一章1.根据IEEE(国际电气和电子工程师协会)的定义:嵌入式系统是“用于控制、监视或者辅助装置、机器和设备运行的装置。
此定义是从应用上考虑的,嵌入式系统是软件和硬件的综合体。
2.一般定义“以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
”3.它一般由嵌入式处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四部分组成,用于实现对其他设备的控制、监视或管理等功能。
4.嵌入式系统的特点相比通用的计算机系统,嵌入式系统主要具有以下一些特点(见P1):(1)特定的设计(2)各学科结合的产物(3)高效的设计(4)与具体应用相结合(5)存储特性(6)交叉开发5.嵌入式系统的交叉开发主要是指嵌入式系统的软件开发方式,这是嵌入式系统区别于通用计算机软件开发的最主要特性。
6.任何系统的软件开发都包括两个基本的部分:程序的生成和程序的载入1)通用计算机的程序的生成:直接编译和链接等程序的载入:复制2)嵌入式系统程序开发的程序的生成:主机端,交叉编译程序的载入:主机到目标机烧写或其他通信方式注:开发工具在主机运行的程序,生成的程序是在目标机运行的程序。
7.嵌入式系统组成:嵌入式系统一般指非桌面系统和服务器系统的计算机系统。
根据计算机系统的概念,它可分为硬件部分和软件部分。
硬件部分包括嵌入式处理器(MPU)或控制器(MCU)以及外围电路。
软件部分包括嵌入式操作系统和应用程序。
嵌入式系统可以划分成以下几个部分:微处理器外围硬件嵌入式操作系统应用程序开发环境8.PC的处理器一般仅具有CPU(中央处理单元,包含控制器和运算器)的功能,而大多数嵌入式微处理器不仅包括CPU核心,也包括丰富的片内部件。
.9.SoC就是片上系统(System on Chip),SoC嵌入式系统微处理器就是一种电路系统。
10.嵌入式系统同通用型计算机系统相比具有以下特点:1)嵌入式系统是面向特定应用的。
嵌入式操作系统课程复习(嵌入式操作系统原理)一、真空题1.根据系统中的任务获得使用CPU的权力的方式,多任务实时操作系统的内核分为可剥夺型和不可剥夺型两种类型。
2.实时操作系统需要满足的条件包括多任务、可剥夺型内核、任务切换时间固定、中断延时尽量短。
3.目前比较常见的操作系统有_WinCE_、_uCLinux_、_Uc/OC-II_等。
4.在ucos-ii中任务的状态包括_睡眠状态_、就绪状态_、运行状态、中断服务状态_等。
5.在ucos-ii中任务由_任务的代码_、任务控制块_、_任务堆栈_三个部分组成。
6.在ucos-ii中提供的空闲任务OSTaskIdle()的作用是完成_对OSdleCtr计数器加1_。
7.在ucos-ii中提供的统计任务OSTaskStat()的作用是完成_CPU利用率OSCPUUsage统计。
8.在ucos-ii中任务的调度主要完成_在任务就绪表中查找具有最高优先级别的就绪任务_、实现任务的切换两件事。
二、简答题1.代码的临界段?在ucos-ii中通过哪几种方式实现?在应用程序中,能够不受任何干扰而运行的代码段,称做临界段。
它主要通过开关中断技术实现。
用户可通过定义移植文件OS_CPU.H中的常数OS_CRITICAL_METHOD 来实现选择开关中断的实现方法分三种:1)直接用处理器指令2)在堆栈中保存中断的开关状态,然后再关中断。
3)通过编译器提供的c函数来保存处理器状态字的值。
#if OS_CRITICAL_METHOD == 1#define OS_ENTE R_CRITICAL() asm ("DI") //关中断#define OS_EXIT_CRITICAL() asm ("EI") //开中断#endif#if OS_CRITICAL_METHOD == 2#define OS_ENTER_CRITICAL() asm ("PUSH PSW,DI") //保存CPU状态,关中断#define OS_EXIT_CRITICAL() asm ("POP psw) //恢复中断允许标志#endif#if OS_CRITICAL_METHOD == 3#define OS_ENTER_CRITICAL() ("cpu_sr = get_processor_psw(),DI") //保存CPU状态,关中断#define OS_EXIT_CRITICAL() ("Set_processor_psw(cpu_sr)) //恢复中断允许标志#endif2.调度?在ucos-ii中其调度算法是什么?在多任务系统中,令CPU中止当前正在运行的任务转而去运行另一个任务的工作叫任务切换,而按某种规则进行任务切换的工作叫做任务的调度。
uCOS II总是运行进入就绪态任务中优先级最高的那一个。
3.可剥夺型内核?在可剥夺型内核中,CPU总是运行多个任务中优先级别最高的那个任务,即使CPU正在运行某个低优先级别的任务,当有高优先级别的任务准备就绪时,该高级别的任务就会剥夺正在运行任务的CPU的使用权,而使自己获得CPU的使用权。
4.时钟节拍的作用及实现方式?任何计算机系统都应该有一系统时钟,UCOS的系统时钟是通过硬件定时器产生中断来实现的,这个中断会产生一个时钟中断服务程序,时钟中断服务程序也叫做节拍服务。
各个任务运行都需要一个周期性的信号指示,即每一个任务允许运行的时间片是多少,必须规定好。
这个时间片就是系统时钟节拍。
5.什么是嵌入式操作系统?其特征是?运行在嵌入式硬件平台上,对整个系统及其所操作的部件、装置等资源进行统一协调、指挥和控制的系统软件就叫做嵌入式操作系统。
其特征包括:微型化、可裁剪性、实时性、高可靠性、易移植性。
6.解释构成uc0s-ii操作系统的16个文件的所属种类及用途?(1)移植时需要修改的与处理器相关的代码1)OS_CPU.HOS_CPU.H包括了用#defines定义的与处理器相关的常量,宏和类型定义。
2)OS_CPU_A.ASMOSStartHighRdy() //启动最高优先级就绪任务运行OSCtxSw() //任务切换OSIntCtxSw() //中断级任务切换OSTickISR() //时钟节拍服务3)OS_CPU_C.C主要完成任务堆栈初始化功能OSTaskStkInit()(1)与应用程序相关代码OS_CFG.H,INCLUDES.H(3)与处理器无关的代码OS_CORE.C;OS_Q.C;OS_FLAG.C;OS_SEM.C;OS_MBOX.C;OS_TASK.C;OS_MEM.C;OS_TIME.C;OS_MUTEX.C;uCOS_II.C;uCOS_II.H三、分析程序1.完成ucos-ii主函数注释。
void main (void){OSInit(); //___初始化ucos-ii_____PC_DOSSaveReturn(); //__保存DOS环境________PC_VectSet(uCOS, OSCtxSw); //_安装任务切换中断向量____OSTaskCreate(MyTask, //__创建任务MyTask______(void*)0, //__给任务传递参数______&TaskStartStk[TASK_STK_SIZE - 1],//__设置任务堆栈栈顶指针___0); //____MyTask任务的优先级别为0_OSStart(); //___启动多任务管理_____}2.完成ucos-ii启动多任务函数OSStart()注释。
void OSStart (void){INT8U y;INT8U x;if (OSRunning == FALSE) {_ //如果操作系统未运行,则进行一次调度,既运行优先级最高的任务y = OSUnMapTbl[OSRdyGrp]; //取出优先级最高的任务所在的任务组(行)_x = OSUnMapTbl[OSRdyTbl[y]]; //取出优先级最高的任务所在任务组(行)对应的列OSPrioHighRdy = (INT8U)((y << 3) + x); //__取得就绪态的最高优先级任务的优先权_ OSPrioCur = OSPrioHighRdy; //__将OSPrioHighRdy 指向当前运行任务优先级_ OSTCBHighRdy = OSTCBPrioTbl[OSPrioHighRdy]; //_最高优先级任务所对应的任务控制块OSTCBCur = OSTCBHighRdy; //_将OSTCBHighRdy赋予当前运行的任务控制块__ OSStartHighRdy(); //__启动最高优先级任务运行____}}3.完成ucos-ii时钟节拍中断服务程序OSTickISR()示意性代码的注释。
V oid OSTickISR(void){保存CPU寄存器;调用OSIntEnter(); //进入中断函数,实现OSIntNesting加1,用于记录中断嵌套层数If(OSIntNesting==1){ OSTCBCur->OSTCBStkPtr=SP;} //在任务控制块中保存堆栈指针调用OSTimeTick(); //节拍处理,完成OSTime+1、OSTCBDly-1,使到了延时时限的非挂起//任务进入就绪状态_清除中断;开中断;调用OSIntExit(); //_退出中断函数,实现OSIntNesting-1,并进行中断级任务切换_恢复CPU寄存器;中断返回;}四、计算题(共10分)已知某一已经就绪任务的优先级prio=30,试计算应该在就绪表的哪一位上置1。
答:30的二进制形式为0001.1110,低6位为011,110,于是可知应该在OSRdyTbl[3]的D6位上置1,同时把变量OSRdyGrp的D3位置1。
五、编程题写出任务级调度器OSSched()的核心代码,其中包括任务级切换OSCtxSw()的示意性代码。
(1)任务级调度器OSSched()主要代码如下:void OSSched(void){ INT8U y;OS_ENTER_CRITICAL();if ((OSLookNesting|OSIntNesting)==0){ y=OSUnMapTbl[OSRdyGrp];OSPrioHighRdy=(INT8U)((y<<3)+UnMapTbl[OSRdyTbl[y]]);//获取最高优先级任务if (OSPrioHighRdy!=OSPrioCur){ OSTCBHighRdy=OSTCBPrioTbl[OSPrioHighRdy];//获得任务控制块指针OSCtxSwCtr++; //统计任务切换次数计数器加1OS_TASK_SW(); //执行任务切换宏}}}(2)任务级切换OSCtxSw()的示意性代码void OSCtxSw(void){用压栈指令把CPU通用寄存器R1、R2、……压入堆栈;OSTCBCur->OSTCBStkPtr=SP;在中止任务控制块中保存SPOSTCBCur=OSTCBHighRdy; //任务控制块切换OSPrioCur=OSPrioHighRdy; //任务优先权切换SP=OSTCBHighRdy->OSTCBStkPtr; //使SP指向待运行任务堆栈用出栈指令把R1、R2….弹入CPU通用寄存器RETI; //中断返回,使PC指向待运行任务}。