版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式操作系统
课程介绍计算机科学与技术专业基础课操作系统的后续课程,建立对某种操作系统实现编程技术的理解和运用讨论嵌入式软件开发技术,为嵌入式系统开发建立软件基础为嵌入式就业方向奠定软件技术基础,有市场前景课程目标学会嵌入式操作系统平台的嵌入式应用软件的设计与实现理解嵌入式操作系统基本概念与技术理解嵌入式操作系统内核的工作原理理解嵌入式应用软件的设计与实现原理理解嵌入式软件的运行机制评价嵌入式软件运行性能授课方式以实时内核技术概念为基础以内核模块构成与实现为主要内容以内核模块应用案例为驱动与验证完成课程目标的嵌入式软件开发技术及方法课程安排及成绩考核(仅供参考)理论授课 40学时(1-11周每周4学时)上机实验 16学时(预排第7、8周每周8学时)成绩及考核期末考试(开卷)70%平时成绩30%(作业与考勤15%,上机实验15%)参考文献嵌入式操作系统——组成、原理与应用设计牛欣源清华大学出版社2013嵌入式实时操作系统UC/OS-II(第2版)JeanJ.Labrosse北京航空航天大学出版社2003嵌入式实时操作系统及应用开发罗蕾北京航空航天大学出版社2007嵌入式系统——组成、原理与设计编程金敏人民邮电出版社2006嵌入式软件设计康一梅机械工业出版社2008第一章嵌入式软件与嵌入式操作系统本章内容嵌入式系统嵌入式应用软件嵌入式操作系统嵌入式系统什么是嵌入式系统?它与其他系统相比,有何特殊之处?树立正确的嵌入式系统基本概念和基本目标,对于开发嵌入式系统,了解、掌握安装运行于嵌入式系统之上的软件,具有首要意义。什么是系统,应该如何理解系统的概念和含义?一般说来,系统就是按照一些固定的程序和规则,完成某些任务的组织或工作方式。比如,一块表,是一个能显示时间的系统。再比如,一台洗衣机,是一个能自动洗衣的系统。嵌入式系统定义上面举例说明的两个系统实例中,表可以看成是一个机械系统,洗衣机可以看成是一个嵌入式系统,是一个具有嵌入软件和计算机硬件,并受嵌入软件和计算机硬件的运行控制,完成特定功能的系统。嵌入式系统就是一个具有嵌入软件和计算机硬件,并受嵌入软件和计算机硬件的运行控制,完成特定功能的系统。通常将嵌入式计算机系统简称为嵌入式系统。嵌入式系统与通用计算机系统嵌入式系统是不同于通用计算机系统的一种专用计算机系统不以独立的物理设备的形态出现,即:它没有一个统一的外观,它的部件根据主体设备以及应用的需要,嵌入在该设备的内部,发挥着运算、处理、存储以及控制等作用。嵌入式系统的多种解释嵌入式系统受内置于其中的计算机部件控制,这个部件可能是微控制器。嵌入式系统由微控制器控制,软件驱动运行,可靠性好,具有实时控制性能。嵌入式系统就是将计算机系统内置于一个电子产品中。嵌入式系统就是包含微处理器或微控制器的电子产品。嵌入式系统包含一个可编程的非通用计算机,即基于可编程的微处理器控制的系统。嵌入式应用系统把计算机可执行程序嵌入到(或称安装到)某个设备中,如,手机、汽车、照相机、洗衣机、空调器等家用电器,或飞机、导弹、卫星等大型设备,控制这些设备的运转,使设备工作运行的自动化程度大大提高,并在功能和性能方面都得到提升,整体系统的质量大大提高。这些设备就可视为嵌入式系统这些预制或安装的软件就是嵌入式软件。如何开发嵌入式软件?嵌入式计算机系统和通用计算机系统的比较嵌入式实时操作系统是通用操作系统的一个应用特例嵌入式系统通常是面向特定应用的嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除软硬件冗余嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中综合比对如下表所示:嵌入式软件系统嵌入式软件是计算机软件的一种安装运行在嵌入式系统上,控制嵌入式系统的运行。它既具有通用计算机软件的一般特性,也有自身的独特属性。理解嵌入式软件的特有属性,可以从软件功能作用及其运行平台等角度进行分析。按照软件作用划分嵌入式软件一般分为系统软件、支撑软件和应用软件三大类。系统软件负责控制、管理计算机系统的资源。如嵌入式操作系统、嵌入式中间件(CORBA、Java)等。支撑软件为辅助软件开发的工具。如系统分析设计工具、仿真开发工具、交叉开发工具、测试工具、配置管理工具、维护工具等。应用软件是面向特定应用领域开发的软件。如手机软件、路由器软件、交换机软件、飞控软件等。按照运行平台划分嵌入式软件可以分为开发平台的嵌入式软件和嵌入式系统上的软件。运行在开发平台上的软件,负责完成嵌入式软件的设计、开发、编码、运行测试等阶段的工作,在开发平台上生成可执行软件程序运行在嵌入式系统上的软件,由嵌入式操作系统、应用程序、驱动程序及部分开发工具构成,负责嵌入式软件产品在嵌入式系统上的运行。另一种嵌入式软件划分方式如下:1、机器指令形式的可执行嵌入式软件这是最终安装在嵌入式系统中的嵌入式软件的运行形式,以微处理器可识别的指令构成2、高级语言形式的嵌入式软件大多数情况下,嵌入式软件常使用高级语言进行研发和编程实现。在众多的高级语言中,C语言得到广泛认可。基于C语言编程的程序软件生成的可执行程序最终需要安装在ROM芯片上,控制系统的运行。如何将C程序转换为ROM映像文件及其基本过程?C程序函数调用库函数的机器指令代码目标文件的机器代码字节编址的被链接程序嵌入式系统ROM内存编译链接代码优化C语言代码能生成运行在嵌入式硬件上的ROM映像的基本过程编译程序生成目标代码。对目标代码按照处理机指令集进行汇编。编译的最后步骤是优化代码。编译完成后,链接程序将目标代码和其它调用代码链接成为一个可执行程序。例如,链接程序将库函数printf()和sqrt()的可执行代码包含进来。设备及设备驱动程序代码也在这时包含进来。链接和完成地址重定位之后,生成一个ROM映像文件,一个能运行在目标硬件的ROM映像。嵌入式软件开发概述讨论并解决以下基本问题:软件设计程序模型基于实时操作系统(RTOS)多个任务的并发处理和调度软件基于操作系统的设备驱动和设备管理软件设计实现嵌入式系统的软件工具
嵌入式开发工具一般使用说明针对具体嵌入式系统,说明各类开发工具的可用性如下图所示:嵌入式软件分类和分层如果依据嵌入式软件的运行平台划分,可将嵌入式软件分为运行在开发平台上的软件和运行在嵌入式系统上的软件两种类型运行在开发平台上的嵌入式软件负责提供设计、开发、测试工具等运行在嵌入式系统上的软件就是嵌入式操作系统、应用程序、驱动程序及部分开发工具嵌入式系统软件的特征实时性(RealTime)。针对嵌入式系统各项功能的控制需求,需要满足功能执行的时间限制。事件响应(ReacttoEvent)。针对嵌入式系统某些功能的偶发控制需求,需要满足由某些条件引发的功能需求。系统功能的实时中断和调度。针对嵌入式系统某些重要功能的偶发控制需求,需要满足由某些重要条件引发的功能需求,即满足重要事件的实时控制需求,也确保后续系统的正常运行需求。时限(Deadline)要求。如果不能在时限要求时间内,实现既定功能,就视为系统发生运行错误。早期的嵌入式系统平台开发简单早期的嵌入式系统功能比较简单,控制软件或程序部分功能单一,常用汇编语言指令进行设计开发。随着计算机系统和应用需求的不断发展。仅仅使用底层编程技术已不能满足开发功能、开发效率开发性能等方面的需求。使用嵌入式操作系统作为开发平台已成为现实。嵌入式开发需要操作系统的支持由于日益增长的嵌入式软件的开发需求及其开发平台的不断发展,嵌入式系统与嵌入式操作系统硬件软件体系结构已密不可分,成为一个公认稳定的系统平台,共同承担开发嵌入式系统及其软件的必备工具和平台的任务。开发服务于嵌入式系统的嵌入式软件,采用基于嵌入式操作系统内核功能进行开发,是功能、性能较为有力的保障。嵌入式操作系统的商业模式分类可以分为商用型和开源型。商用型系统功能稳定、可靠,有完善的技术支持和售后服务,商品价格由开发费用和版税决定,常用商用嵌入式操作系统,如windowsCE、VxWorks。开源型系统开放源码,使用花销只包括服务费,不包括版税,如Embeddedlinux,RTEMS,µC/OS-Ⅱ。从嵌入式操作系统的实时性上分类可分为实时操作系统和非实时操作系统时限要求严格的系统称为硬实时系统时限要求不严格的称为软实时系统。嵌入式操作系统概念一般由内核、嵌入式TCP/IP网络系统、嵌入式文件系统等组成。内核是嵌入式操作系统的基础,也是必备的部分。它提供任务管理、内存管理、通信、同步与互斥机制、中断管理、时间管理及任务扩展等功能。内核还提供特定的应用编程接口。嵌入式操作系统EOS特性嵌入式操作系统EOS相对于一般操作系统而言,它除具备了一般操作系统最基本的功能,如任务调度、同步机制、中断处理、文件功能等外,还有以下特性:可装卸性。开放性、可伸缩性的体系结构。强实时性。EOS实时性一般较强,可用于各种设备控制当中。统一的接口。提供各种设备驱动接口。操作方便、简单、提供友好的图形GUI,图形界面,易学易用。提供强大的网络功能,支持TCP/IP协议及其它协议,提供TCP/UDP/IP/PPP协议支持及统一的MAC访问层接口,为各种移动计算设备预留接口。强稳定性,弱交互性。嵌入式系统一旦开始运行就不需要用户过多的干预,这就要负责系统管理的EOS具有较强的稳定性。嵌入式操作系统的用户接口一般不提供操作命令,它通过系统调用命令向用户程序提供服务。固化代码。在嵌入系统中,嵌入式操作系统和应用软件被固化在嵌入式系统计算机的ROM中。辅助存储器,如硬盘等,在嵌入式系统中很少使用,因此,嵌入式操作系统的文件管理功能应该能够很容易地拆卸,而用各种内存文件系统。更好的硬件适应性,也就是良好的移植性。嵌入式操作系统的基本概念嵌入式应用程序由函数、中断服务子程序、线程、多个任务、实际或虚拟设备组成。在单CPU或多CPU的计算机上并发运行。实时OS的系统函数提供创建多个任务的调用机制,控制任务的状态,分配任务需要的资源。实时OS的系统函数控制多任务间的上下文切换和调度。实时OS的系统函数提供IPC函数,在任务和任务间、在任务和中断服务子程序间进行信号、信号量、消息的传递。实时OS的系统函数提供管道、套接字、RPC(远程过程调用)等机制,支持数据的传递。实时OS的系统函数提供互斥信号量、锁和SPIN锁、封中断等机制。嵌入式应用程序概述基于实时操作系统进行嵌入式软件研发,有效率高、实时性好、易于移植等特点从应用软件设计与实现角度分析,需要设计者首先掌握实时操作系统内核功能及调用接口,熟悉内核基本技术及其实现方法;对应用程序进行任务分析及分解、中断分析及设计、数据分析和实现。完成应用代码程序设计,由此生成一个具有实时特性的嵌入式应用软件的可执行程序。嵌入式软件系统应用软件这些软件功能通常以并发运行的进程、任务或线程的形式运行在系统中,控制系统的多项功能。实时操作系统(RealTimeOperatingSystem)负责管理运行于硬件系统之上的应用软件,按照系统任务优先级控制系统资源的分配和使用,负责调用任务调度处理器运行并发系统和应用任务,并负责完成任务运行和任务间的上下文切换。嵌入式应用程序结构——任务结构与构建任务分解任务通信任务创建任务运行响应任务与内核连接——任务调度嵌入式软件系统应用软件这些软件功能通常以并发运行的进程、任务或线程的形式运行在系统中,控制系统的多项功能。实时操作系统(RealTimeOperatingSystem)负责管理运行于硬件系统之上的应用软件,按照系统任务优先级控制系统资源的分配和使用,负责调用任务调度处理器运行并发系统和应用任务,并负责完成任务运行和任务间的上下文切换。嵌入式微处理器外围硬件设备嵌入式操作系统应用程序代码图1- 嵌入式系统结构组成图C/OS简介
1、C/OS——MicroControllerOS,微控制器操作系统2、C/OS简介美国人JeanLabrosse1992年完成。应用面覆盖了诸多领域,如照相机、医疗器械、音响设备、发动机控制、高速公路电话系统、自动提款机等。1998年C/OS-II,目前的版本C/OS-IIV2.61,2.72。2000年,得到美国航空管理局(FAA)的认证,可以用于飞行器中。网站www.ucos-II.com()。公开源代码可移植性(Portable)
绝大部分C/OS-II的源码是用移植性很强的ANSIC写的。和微处理器硬件相关的那部分是用汇编语言写的。汇编语言写的部分已经压到最低限度,使得C/OS-II便于移植到其他微处理器上。C/OS-II可以在绝大多数8位、16位、32位以至64位微处理器、微控制器、数字信号处理器(DSP)上运行。可固化(ROMable)
C/OS-II是为嵌入式应用而设计的,这就意味着,只要用户有固化手段(C编译、连接、下载和固化),C/OS-II可以嵌入到用户的产品中成为产品的一部分。可裁剪(Scalable)
可以只使用C/OS-II中应用程序需要的那些系统服务。也就是说某产品可以只使用很少几个C/OS-II调用,而另一个产品则使用了几乎所有C/OS-II的功能,这样可以减少产品中的C/OS-II所需的存储器空间(RAM和ROM)。这种可剪裁性是靠条件编译实现的。C/OS的性能特点(一)抢占式(Preemptive)多任务
C/OS-II可以管理64个任务,然而,目前这一版本保留8个给系统。应用程序最多可以有56个任务可确定性
全部C/OS-II的函数调用与服务的执行时间具有可确定性。任务栈
每个任务有自己单独的栈,C/OS-II允许每个任务有不同的栈空间,以便压低应用程序对RAM的需求。系统服务
C/OS-II提供很多系统服务,例如邮箱、消息队列、信号量、块大小固定的内存的申请与释放、时间相关函数等。中断管理
中断可以使正在执行的任务暂时挂起,如果优先级更高的任务被该中断唤醒,则高优先级的任务在中断嵌套全部退出后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024房产交易居间服务合同
- 跨界研究之路
- 金融危机应对之道
- 外部培训服务协议书(2篇)
- 基础工程承包协议书
- 大型购物中心监理合同(2篇)
- 人力资源管理咨询服务协议
- 2024煤矿劳动合同与劳动技能培训及考核协议3篇
- 渔船租赁及配套船员雇佣合同
- 地铁线路建设运营合作协议
- 2025年中国陪诊服务行业现状、发展环境及投资前景分析报告
- 脓毒性休克集束化治疗
- 机场安检突发事件应急预案
- 2024年高考真题-化学(天津卷) 含解析
- 2024年招投标培训
- 新反诈知识考试题库200题(含答案)
- 部编版三年级上册语文期末复习资料
- 建筑施工承插型盘扣式钢管脚手架技术标准
- 相反国课件-大班
- 2023-2024学年新疆乌鲁木齐130中学九年级(上)期末物理试卷
- 2023-2024学年江苏省徐州市九年级(上)期末物理试卷
评论
0/150
提交评论