课嵌入式软件技术概述_第1页
课嵌入式软件技术概述_第2页
课嵌入式软件技术概述_第3页
课嵌入式软件技术概述_第4页
课嵌入式软件技术概述_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1嵌入式系统AnIntroductiontoEmbeddedSystem第八课嵌入式软件技术概述浙江大学计算机学院陈天洲2011.4.282011夏学期,周三下午1-3节,周四晚上1-3节玉泉曹光彪西501整理课件

2课程大纲

嵌入式软件简介

嵌入式操作系统概述

嵌入式软件开发平台整理课件嵌入式软件划分为嵌入式系统与嵌入式软件前者为硬件,后者为软件嵌入式软件分类单线程程序循环轮训系统有限状态机事件驱动程序中断驱动系统多任务系统单机多任务系统分布式嵌入式软件3整理课件单线程程序没有主控程序,用于简单有限任务多用于工业控制、流水线生产优点程序简单、执行效率高缺点一旦出现故障,无法自动进行控制与恢复,安全性较差4整理课件事件驱动程序常用中断为事件也称中断驱动程序循环轮询的主程序控制中断响应程序可看成简单的嵌入式操作系统中断管理优先级:多个中断同时发生中断响应错误的处理安全性高,性能好5整理课件单机多任务系统多任务操作系统更多的任务+多个中断处理过程存储的分配与管理、I/O的控制与管理、多个任务或中断请求同时发生无法用中断服务系统完成,需要嵌入式操作系统任务的切换、调度、通信、同步、互斥、中断管理、时钟管理嵌入式数据库{本课程不介绍}嵌入式GUI常用嵌入式操作系统是RTOS(real-timeOS)实时性是最常见的嵌入式软件架构6整理课件分布式嵌入式软件互联网时代的嵌入式系统具有移动计算能力、随时在网能力嵌入式操作系统+嵌入式数据库+网络通讯协议+应用支撑平台可以是网格计算节点,甚至构成云计算7整理课件嵌入式软件组成单线程程序主程序形式,服务与应用合成在一个程序中事件驱动程序主程序形式,包含服务与中断服务;应用以中断服务形式出现以上两者统称主控程序单机多任务系统系统软件:操作系统应用软件:独立存在于操作系统外分布式嵌入式软件网络操作系统嵌入式中间件应用软件8整理课件嵌入式软件开发软件工作量约占全部工作量的80%主控软件设计,本课程不介绍一般用汇编与C程序是最简单的系统常见于工业控制、自动化领域的嵌入式系统嵌入式操作系统,本课程介绍典型OSucos/II,Vxworks,WindowsMobile,嵌入式linux嵌入式中间件,本课程介绍典型GUIGUI、数据库、平台化嵌入式应用软件应用于国防、工控、家用、商用、办公、医疗等领域软件9整理课件从事嵌入式软件开发?人才稀缺入门门槛较高1、要懂较底层软件(操作系统、驱动程序)2、软件水平要求高(嵌入式软件的时间、空间效率要求高)3、懂硬件的工作原理常见门槛熟悉1-2个RTOS,一个嵌入式GUI,熟悉一个软件开发平台,曾经开发过一个嵌入式产品(包括熟悉硬件架构,懂得调试方法)领域较新发展太快很多软硬件技术出现时间不长或正在出现工作强度低嵌入式产品稳定,不会经常修改,需要长期维护研发时间越长越有经验,就成为人才了知识产权保护较好10整理课件

11课程大纲

嵌入式软件简介

嵌入式操作系统概述

嵌入式软件开发平台整理课件嵌入式操作系统历史-发展阶段嵌入式操作系统的发展主要经历了以下四个阶段:无操作系统的嵌入式算法阶段单芯片为核心具有与一些监测、伺服、指示设备相配合的功能一般没有明显的操作系统支持通过汇编语言编程对系统进行直接控制。主要特点系统结构和功能都相对单一,针对性强无操作系统支持几乎没有用户接口12整理课件嵌入式操作系统历史-发展阶段简单监控式的实时操作系统阶段以嵌入式处理器为基础以简单监控式操作系统为核心主要特点:处理器种类繁多,通用性比较弱;开销小,效率高;一般配备系统仿真器,具有一定的兼容性和扩展性;用户界面不够友好,主要用来控制系统负载以及监控应用程序运行。13整理课件嵌入式操作系统历史-发展阶段通用的嵌入式实时操作系统阶段以通用型嵌入式操作系统为标志的嵌入式系统典型代表有:VxWorks、pSos、WindowsCE等主要特点:运行在不同的微处理器具有强大的能用型操作系统的功能文件和目录管理多任务设备驱动支持网络支持图形窗口用户界面具有丰富的API和嵌入式应用软件14整理课件嵌入式操作系统历史-发展阶段以Internet为标志的嵌入式系统嵌入式系统与Internet的真正结合嵌入式操作系统与应用设备的无缝结合代表着嵌入式操作系统发展的未来典型代表:Android15整理课件嵌入式操作系统EOS的要求1、嵌入式操作系统常常有实时要求早期:嵌入式操作系统=实时操作系统RTOS近期:1)手持计算机和掌上计算机的出现;2)CPU速度的提高;3)常规操作系统增加实时进程调度的支持,如POSIX.4

嵌入式操作系统<>实时操作系统本课程主要介绍RTOS16整理课件2、微内核vs单内核许多嵌入式操作系统的内核是微内核结构LINUX是吗?MACH是吗?都可以是EOS,不过本课程不介绍17整理课件3、非易失性存储许多嵌入式操作系统都不带非易失性存储,无磁盘无flash启动后通过网络获得OS结构上为了设备驱动而支持文件系统,但不支持文件系统的文件存储功能因此EOS仍然有filesystem18整理课件4、MMU问题许多嵌入式操作系统不采用存储管理技术,不支持虚拟存储技术课本上的嵌入式Linux,WindowsMobile、vxworks都是支持MMU的EOS本课程补充ucOS/II简介,就是无MMU支持的EOS19整理课件5、内存分配问题许多嵌入式操作系统不划分“系统空间”和“用户空间”操作系统的“内核”与外围应用程序之间不再有物理的边界;系统中所谓“进程”实际上全都是内核线程静态连接、系统调用、进程调度/切换不分系统空间和用户空间<>必须静态连接如DOS、CP/M的INT21不分系统空间和用户空间<>不能用页面映射技术但只用于不同进程之间,而非不同空间之间即使采用了存储管理,基本上都不采用页面交换技术20整理课件6、其他对任何一个应用程序做细微的修改,都得重新生成整个系统,并且“下载”之;系统调用的界面太庞大;共享变量的访问,需要谨慎对待;把通用操作系统上的应用移植过来需考虑“可重入”的问题;重启动技术(watchdog)21整理课件嵌入式操作系统特点总结实时性基于优先级设计内核可抢占实时相关函数可重入小内核存储资源小可配置硬件要求不同应用需求变化多端对操作系统功能的选择性易移植大量嵌入式处理器高可靠性运行时间长出错不可能人工重启低功耗:微电量及省电的管理22整理课件常见嵌入式操作系统VxWorks(本课程有简单介绍)美国WindRiver,衡量指标值最好μC/OSII

开源,可固化,最短小精悍eCOS可配置性高,RedHat产品,不是Linux或Linux的派生PSOS嵌入式通讯设备,模块化,被vxworks收购Nucleus95%的代码是用ANSIC写成的OS-9处理关键实时任务QNX加拿大,符合POSIX,欧洲航天局,支持分布式应用23整理课件嵌入式linux系列嵌入式linux

(本课程有详细介绍)开源,支持资源丰富,本课程不介绍桌面Linux相关知识点。嵌入式Linux变种RT-Linux因为Linux系统不能处理硬实时任务因此RT的解决方案把Linux作为应用程序运行在RT核上LynxOS符合POSIX标准的类UNIX硬实时操作系统高端网络打印机、自动控制、航空航天MontaVistaLinuxLinux解决方案,提供维护服务,手机、通讯设备Android谷歌手机,2.2版本,完全开源ucLinuxmicro-Conrol-linux24整理课件手机类(智能终端软件开发课程有详细介绍)Android,MontaVista(前页)Symbian诺基亚为主,受谷歌冲击2010年2月开源,S60是主流Windowsmobile微软:“WindowsMobile将熟悉的Windows体验扩展到了移动环境中,所以您可以立即使用它投入工作。”现在更名为WindowsPhone7RIM加拿大BlackBerry(黑莓),邮件是特色对输入设备都做过特别设计,使输入设备可以频繁使用iPhoneOSMacOSX的衍生,类Unix系统,Objective-CPalmOS3Com公司的产品,专用于掌上电脑,PalmOS节能、占有非常小的内存、内置数据库,封闭操作系统MeeGo英特尔和诺基亚宣布整合Moblin和Maemo25整理课件国产嵌入式操作系统Hopen凯思昊鹏,中科院软件所女娲计划hopen(1999年3月微软维纳斯计划计划用电视机作为显示器)机顶盒、掌上电脑、数字电视、移动通信、汽车电子、可视电话、家电产品等各类信息家电和商业、工业控制在嵌入式领域,是唯一获得国家科技进步奖Delta科银京成,银河+成电飞行控制、Wap浏览器、移动安全加密、军工控制国防科技进步二等奖、航空科学技术二等奖uCos->

RTOS-RTEMS->DeltaOSMlinux南京移软,Linux领域,05年被palm购买手机的Linux解决方案、手机中间层(GUI、短信、彩信、邮件、PIM等)、上层软件26整理课件浙江大学的嵌入式系统HBOS天堂鸟HeavenBirdOperationSystem,吴朝晖教授团队研发SmartOSSMART(Sub-coMponentARchitecTure,子构件体系结构)设计思想为构件、子构件为单元,以linux为产业化基础Smartos的两个平台手机smartos/mb,fatlab实验室/smartos汽车smartos/osek,ccnt实验室参展十一五863成果展27研读unix系列操作系统内核80年代HBOS(天堂鸟)操作系统90年代构件化的嵌入式操作系统及开发环境Frame292002SMARTOS2.020051235SMARTOS1.020034SMARTOS/MBSMARTOSEK整理课件

28课程大纲

嵌入式软件简介

嵌入式操作系统概述

嵌入式软件开发平台整理课件1嵌入式集成开发环境嵌入式系统开发环境,是以开发嵌入式系统为目的的工程开发环境。包括办公环境支持、软件支持、硬件设备支持。软件支持,指集成开发环境与软件模拟器等。硬件支持,指仿真器、目标板、示波器、烧录器等。集成开发系统包括一整套完备的面向嵌入式系统的开发和调试工具。一般包括编辑器、编译器、连接器、调试器、工程管理器和底层调试接口设备(BDM/JTAG仿真器)29嵌入式软件嵌入式应用软件嵌入式操作系统嵌入式硬件嵌入式硬件模块嵌入式处理器嵌入式开发工具整理课件2编译器嵌入式语言:ASM/Ada/C/C++/EC/Java/OP/STAPLEC++标准95年初在日本成立的EmbeddedC++技术委员嵌入式c/c++编译器交叉编译能力:能够在pc/unix平台上生成其他cpu平台目标代码连接/定址器:因为无法提供dos/windows的动态定位执行能力。嵌入式一般需要目标代码静态定位到具体地址,定址器完成这一工作。启动代码:初始化处理器和c语言堆栈区等环境的汇编码。EC++:针对嵌入式的一些实时要求等特点,对标准C++语言规范的修改扩充。提供目标调试(remote/rommonitor)能力.另外还有其他一些地方需要注意,如I/O库,大小尾段等主流嵌入式编译器:GNU、CADUL、CodeWarrior、GreenHill、Diab/SDS、IAR、BC/VC+Toolkit….等30整理课件3调试仿真(有专门一次课程介绍)远程调试调试器运行于通用桌面操作系统的应用程序被调试的程序则运行于嵌入式系统(目标系统)31整理课件324嵌入式软件开发工具ARM应用软件的开发工具分为编译软件、汇编软件、连接软件、调试软件、嵌入式实时操作系统、函数库、评估板、JTAG仿真器和在线仿真器等ARM集成环境开发基于ARM的应用软件包括编辑、编译、汇编、连接等工作全部都在PC机上即可完成。目前世界上约有40多家公司提供以上不同类别的产品整理课件5ARM开发工具简介CodeWarriorIDECAD-ULWorkbenchMULTIIDEMomenticsPRISM+tornadoARM系列SDT/ADSLinux系列33整理课件CodeWarriorIDE提供统一的图形用户界面来集成各种开发工具,支持多种主机平台、多种编程语言、多种处理器和多种实时操作系统,称为下一代集成开发环境。包括以下模块:编辑器、源码浏览器、搜索引擎、构造系统、调试器、工程管理器支持多语言、多平台,界面统一Plugin设计:根据不同开发IDE的需要,提供特殊的服务软件34整理课件CAD-ULWorkbench提供工程模板。工程导向的软件开发过程管理。通过工具管理器灵活配置选用各开发工具。在工具管理器中通过对话框来设置修改各工具选项,并提供在线帮助。可灵活植入其它开发工具。可浏览工程文件和外部文件的引用从属关系。包含一个具备语法检查功能的标准源代码编辑器,也可植入外部编辑器。图形对象的浏览器,用于工程源码分析。支持版本控制功能。35整理课件

MULTIIDE支持多语言、多目标系统的高度集成化系统。包括:工程生成工具源代码调试器事件分析器性能分析器实时错误检查工具图形浏览器文本编辑器版本控制系统36整理课件QNXMomentics(QNX6.2)C,C++,EmbeddedC++及Java代码开发器源代码调试器内存分析器系统剖析器系统生成器目标观察器目标导航器目标代理版本控制器系统分析器板级支持包驱动器开发包GNU工具链图形界面产生器37整理课件MicrosoftWindowsEmbeddedWindowsCE.NET:eMbeddedVisualC++4.0WindowsXPEmbedded:VisualStudio.NETWindowsNTEmbedded:TargetDesigner、ComponentDesigner38整理课件VxWorks的Tornado(有专门课程)基于软总线的开放环境层次结构Manager、ProjectTools、InternalBUS、symbolserver&communicateserverCrossCompiler:GNUforallarchitectureDiabDataforPPC,68k,Mips,ARMetc.CrossDebugger:照相机:CrossWind摄象机:WindView,SystemBrowser,CodeTest,ScopeToolsProjectFacility:VxWorks的自动配置工具Simulator:Integratedsimulator,fullsimulator39整理课件pSOSystem的PRISM+pRISM+Manager:为所有工具提供共享信息pRISM+ConfigurationWizard:系统建立和配置管理pSOSystem:提供pSOS+内核,支持网络和文件系统、互联网功能及BSP源码pRISM+Editor:编辑器,设计-编辑-编译-调试SNiFF+:源码浏览器,自动生成可执行文件,自动生成文档,向CMVC工具提供CMVC接口等Compilers:和pSOSystem完整结合的编译器40整理课件41ARM系列

SDT/ADS

ARM

Software

Development

Kit

ARM推出的一整套集成开发工具,在ARM上进行应用软件开发新的集成开发工具ADS取代SDTARMDeveloperSuite™整套实时开发软件工具包编译器生成的代码密度和执行速度优可快速创建ARM应用程序ADS包括三种调试器ARMeXtendedDebuggerAXD向下兼容的ARMDebuggerforWindows/ARMDebuggerforUNIXARM符号调试器整理课件42HitoolforARMHitoolInternationalInc.()包括HitoolARMDebuggerGNUCompiler(内建)JTAGcable评估板嵌入式实时操作系统ThreadX编译器模块

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论