2.嵌入式操作系统基础.ppt

上传人:sccc 文档编号:6020847 上传时间:2023-09-15 格式:PPT 页数:41 大小:367.02KB
返回 下载 相关 举报
2.嵌入式操作系统基础.ppt_第1页
第1页 / 共41页
2.嵌入式操作系统基础.ppt_第2页
第2页 / 共41页
2.嵌入式操作系统基础.ppt_第3页
第3页 / 共41页
2.嵌入式操作系统基础.ppt_第4页
第4页 / 共41页
2.嵌入式操作系统基础.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《2.嵌入式操作系统基础.ppt》由会员分享,可在线阅读,更多相关《2.嵌入式操作系统基础.ppt(41页珍藏版)》请在三一办公上搜索。

1、嵌入式操作系统基础,学习目标,了解嵌入式操作系统的发展掌握在嵌入式系统中使用操作系统的必要性熟悉选择嵌入式操作系统遵循的原则了解常见嵌入式操作系统的特点,什么是嵌入式操作系统,为了使嵌入式系统的开发更加方便和快捷,需要有专门负责管理存储器分配、中断处理、任务调度等功能的软件模块,这就是嵌入式操作系统。嵌入式操作系统是一种支持嵌入式系统应用的操作系统软件,它是嵌入式系统(包括硬、软件系统)极为重要的组成部分,通常包括:与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器。,嵌入式操作系统的特点,嵌入式操作系统具备通用操作系统的基本特点:能够有效管理复杂的系统资源能够

2、对硬件进行抽象能够提供库函数、驱动程序、开发工具集等与通用操作系统相比较,嵌入式操作系统独特之处:系统实时性硬件依赖性软件固化性应用专用性可裁剪性,嵌入式操作系统发展的四个阶段,无操作系统的嵌入算法阶段以单芯片为核心的可编程控制器形式,同时具有与监测、伺服、指示设备相配合的功能。主要用于一些专业性极强的工业控制系统中,一般没有操作系统的支持,通过汇编语言编程对系统进行直接控制,运行结束后清除内存。这一阶段系统的主要特点:系统结构和功能都相对单一处理效率较低,存储容量较小几乎没有用户接口,嵌入式操作系统发展的四个阶段,以嵌入式 CPU 为基础、以简单操作系统为核心的嵌入式系统这一阶段系统的主要特

3、点:CPU 种类繁多,通用性比较差;系统开销小,效率高;一般配备系统仿真器,操作系统具有一定的兼容性和扩展性;应用软件较专业,用户界面不够友好;系统主要用来控制系统负载以及监控应用程序运行。,嵌入式操作系统发展的四个阶段,通用的嵌入式实时操作系统阶段,是以嵌入式操作系统为核心的嵌入式系统这一阶段系统的主要特点:嵌入式操作系统能运行于各种不同类型的微处理器上,兼容性好;操作系统内核精小、效率高,并且具有高度的模块化和扩展性;具备文件和目录管理、设备支持、多任务、网络支持、图形窗口以及用户界面等功能;具有大量的应用程序接口(API),开发应用程序简单;嵌入式应用软件丰富。,嵌入式操作系统发展的四个

4、阶段,以基于 Internet 为标志的嵌入式系统,这是一个正在迅速发展的阶段。随着 Internet 的发展以及 Internet 技术与信息家电、工业控制技术等结合日益密切,嵌入式设备与 Internet 的结合将代表着嵌入式技术的真正未来。,嵌入式操作系统发展,从支持8位微处理器到16位、32位甚至64位微处理器;从支持单一品种的微处理器芯片到支持多品种微处理器芯片;从只有内核到除了内核外还提供其他功能模块,如文件系统,TCP/IP网络系统,窗口图形系统等。,嵌入式操作系统技术现状,适应不同的嵌入式硬件平台,具有可移植、可伸缩能力。采用的主要技术:编程语言普遍采用高级语言实现,主要以C语

5、言为主。体系结构采用分层和模块化结构或微内核结构。,嵌入式操作系统技术现状,从分层和模块化结构,将操作系统分为:硬件无关层硬件抽象层硬件相关层每层再划分功能模块移植工作集中在硬件相关层,与其余两层无关功能的伸缩集中在模块上,从而确保了系统具有良好的可移植性和可伸缩性。,嵌入式操作系统技术现状,功能复杂,具有可剪裁、可配置的能力 采用的主要技术:可剪裁技术。操作系统以内核为中心,包括很多独立的功能组件如文件、网络等。除内核外其他组件的选择任意搭配,由应用决定。可配置技术。每个功能组件都可以根据应用的要求进行配置,比如最大任务数、内存地址、堆栈大小、系统任务的优先级、缓冲区大小及文件数等。,嵌入式

6、操作系统技术现状,良好的实时性。时间确定性是嵌入式实时操作系统必备的特点,特别对于强实时嵌入式系统而言尤为重要。采用的主要技术:采用实时调度算法。主要采用静态优先级的可抢占式调度、比率单调算法等。采用内存静态分配策略和零拷贝技术保证确定性。内存管理不采用虚存管理机制采用优先级继承和优先级天花板两种技术解决优先级反转(倒置)问题,嵌入式操作系统技术现状,可靠性和高可用 采用的主要技术:利用存储管理单元(MMU)、用户态和核心态机制,实现操作系统与应用程序的隔离,以及应用程序和应用程序之间的隔离,以防止应用程序破坏操作系统的代码、数据。,嵌入式操作系统的发展趋势,体系结构向微内核方向发展可伸缩、可

7、移植、可剪裁、可配置行业的标准:多种操作系统平台,应用决定操作系统结构紧凑、功能强大高可用(High Available)、高可靠(High Reliable)、支持多处理器和分布式计算可动态加载和升级软件与开发工具有机的结合起来,使用嵌入式操作系统的必要性,嵌人式实时操作系统提高了系统的可靠性。系统不崩溃,有自愈能力提高了开发效率,缩短了开发周期。任务分解为多个模块。每个模块的调试、修改几乎不影响其他模块,支持多任务调试环境。嵌入式实时操作系统充分发挥了32位CPU的多任务潜力。32位CPU是为运行多用户、多任务操作系统而设计的,特别适于运行多任务实时系统。32位CPU采用利于提高系统可靠性

8、和稳定性的设计,使其更容易做到不崩溃。,嵌入式系统的分类,从应用角度分:通用型嵌入式操作系统LinuxVxWorksWindows CE专用型嵌入式操作系统Smart PhonePocket PCSymbian,嵌入式系统的分类,从实时性分非实时系统(面对消费类电子产品)微软面向手机应用的Smart Phone操作系统实时操作系统(控制、通信领域)WindRiver公司的VxWorksQNX系统软件公司的QNX,嵌入式操作系统选型原则,产品研发时间:嵌入式操作系统的选择与产品研发时间密切相关。可移植性:进行嵌入式软件开发时,可移植性是要重点考虑的问题之一。好的软件移植性好,可以在不同平台、不同

9、系统上运行,跟操作系统无关。系统定制能力:用户的需求是千差万别的,硬件平台也都不一样,所以对系统的定制能力要求高。成本 中文内核支持,C/OS-II简介,美国嵌入式系统专家Jean J.Labrosse用C语言编写的一个公开源代码、结构小巧、抢占式的多任务实时内核。C/OS-II能管理64个任务,并提供任务调度与管理、内存管理、任务间同步与通信、时间管理和中断服务等功能,具有执行效率高、占用空间小、实时性能优良和可扩展性强等特点。可运行在航天器等对安全级别要求较高的系统上。,Clinux,一种优秀的嵌入式Linux版本,全称为micro-control Linux。同标准的Linux相比,Cl

10、inux的内核非常小,但是它仍然继承了Linux操作系统的主要特性,包括良好的稳定性和移植性、强大的网络功能、出色的文件系统支持、标准丰富的API,以及TCP/IP网络协议等。因为没有MMU内存管理单元,所以其多任务的实现需要一定技巧。,VxWorks,美国WindRiver公司于1983年设计开发的一种嵌入式实时操作系统,是Tornado嵌入式开发环境的关键组成部分。具有良好的持续发展能力、高性能的内核以及友好的用户开发环境,在嵌入式实时操作系统领域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中。在美国的 F16、FA1

11、8 战斗机、B-2 隐形轰炸机和爱国者导弹上,甚至连1997年4月在火星表面登陆的火星探测器上也使用到了VxWorks。,Windows CE,微软公司嵌入式、移动计算平台的基础,是一个开放的、可升级的32位嵌入式操作系统,是基于掌上型电脑类的电子设备操作系统,Windows CE的图形用户界面相当出色。C代表袖珍(Compact)、消费(Consumer)、通信能力(Connectivit)和伴侣(Companion);E代表电子产品(Electronics)。Windows CE是所有源代码全部由微软自行开发的嵌入式新型操作系统,具有模块化、结构化和基于Win32应用程序接口和与处理器无关

12、等特点。Windows CE并非是专为单一装置设计的,所以微软为旗下采用Windows CE作业系统的产品大致分为三条产品线,Pocket PC(掌上电脑)、Handheld PC(手持设备)及Auto PC。,SymbianOS,由摩托罗拉、西门子、诺基亚等几家大型移动通讯设备制造商共同出资组建的一个合资公司,专门研发手机操作系统。Symbian操作系统在智能移动终端上拥有强大的应用程序及通信处理能力,这都要归功于它有一个非常健全的核心:强大的对象导向系统、企业用标准通信传输协议,以及完美的SUN Java语言支持。Symbian操作系统提供了灵活的应用界面(UI)框架,小但使开发者得以快速

13、掌握必要的技术,同时还使手机制造商能够推出不同界面的产品。,Android,指“机器人”,是Google开发的基于Linux平台的开源手机操作系统,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。Android采用WebKit浏览器引擎,具备触摸屏、高级图形显示和上网功能,最震撼人心之处在于Android手机系统的开放性和服务免费。Android是一个对第三方软件完全开放的平台,开发者在为其开发程序时拥有更大的自由度。与Windows Mobile、Symbian等厂商不同,Android操作系统免费向开发人员提供,可节省近三成成本。And

14、roid应用开发是基于java的,底层是linux的。,iPhone OS,苹果公司为iPhone开发的操作系统。主要是给iPhone和iPod touch使用。就像其基于的Mac OS X操作系统一样,也是以Darwin为基础的。iPhone OS的系统架构分为四个层次:核心操作系统层(the Core OS layer),核心服务层(the Core Services layer),媒体层(the Media layer),可轻触层(the Cocoa Touch layer)。系统操作占用大概512MB的存储空间。,总结反思,当今流行的嵌入式操作系统有哪些?在嵌入式系统中为什么要用操作系

15、统?如何选择嵌入式操作系统?,操作系统的内核,学习目标,掌握内核的组成了解Linux内核结构了解单内核操作系与微内核操作系统的特点,什么是内核,内核(kernel)是操作系统最基本的部分,是一个操作系统的核心。负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。内核由操作系统中用于管理存储器、文件、外围设备和系统资源的部分组成,指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。,什么是内核,内核为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂

16、的,所以内核通常提供一种硬件抽象的方法来完成这些操作。硬件抽象隐藏了复杂性,为应用软件和硬件提供了一套简洁,统一的接口,使程序设计更为简单。,内核,严格地说,内核并不是计算机系统中必要的组成部分。程序可以直接地被调入计算机中执行,这样的设计说明了设计者不希望提供任何硬件抽象和操作系统的支持,它常见于早期计算机系统的设计中。最终,一些辅助性程序,例如程序加载器和调试器,被设计到机器核心当中,或者固化在只读存储器里。这些变化发生时,操作系统内核的概念就渐渐明晰起来了。一个内核不是一套完整的操作系统。一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux。,Linux内核

17、结构框图,Linux内核组成,进程调度程序(SCHED)负责控制进程访问CPU。保证进程能够公平地访问CPU,同时保证内核可以准时执行一些必需的硬件操作。内存管理程序(MM)使多个进程可以安全地共享机器的主存系统,并支持虚拟内存。,虚拟文件系统(VFS)。通过提供一个所有设备的公共文件接口,VFS抽象了不同硬件设备的细节。此外,VFS支持与其他操作系统兼容的不同的文件系统格式。网络接口(NET)。提供对许多建网标准和网络硬件的访问。进程间通信(IPC)子系统。为进程之间的通信提供一些机制。,Linux内核组成,这些子系统虽然实现的功能相对独立,但存在着较强的依赖性(调用依赖模块中相应的函数),

18、所以说linux内核是单块结构(monolithic)的,而windows体系结构是微内核(microkernel)的。,什么是单内核,单内核也叫集中式操作系统。整个系统是一个大模块,可以被分为若干逻辑模块,即处理器管理、存储器管理、设备管理和文件管理,其模块间的交互是通过直接调用其他模块中的函数实现的。单内核模型以提高系统执行效率为设计理念,因为整个系统是一个统一的内核,所以其内部调用效率很高。,单内核特点,单内核的缺点也正是由于其源代码是一个整体而造成的,通常各模块之间的界限并不特别清晰,模块间的调用比较随意,所以进行系统修改或升级时,往往“牵一发而动全身”,导致工作量加大,使其难于维护。

19、,什么是微内核,微内核是指把操作系统结构中的内存管理、设备管理、文件系统等高级服务功能尽可能地从内核中分离出来,变成几个独立的非内核模块,而在内核只保留少量最基本的功能,使内核变得简洁可靠,因此叫微内核。微内核实现的基础是操作系统理论层面的逻辑功能划分。几大功能模块在理论上是相互独立的,形成比较明显的界限。,微内核特点,充分的模块化,可独立更换任一模块而不会影响其他模块,从而方便第三方开发、设计模块。未被使用的模块功能不必运行,因而能大幅度减少系统的内存需求。具有很高的可移植性,理论上讲只需要单独对各微内核部分进行移植修改即可。由于微内核的体积通常很小,而且互不影响,因此工作量很小。,单内核与微内核的比较,可靠性:单内核操作系统的设计特点决定了当某一服务出错时,可能会造成整个系统的崩溃的结果。所以,微内核的可靠性较单内核高。性能:微内核操作系统调用系统服务时需通过发送消息给相关程序才能完成,所以开销较大。,小结,内核在操作系统中占有什么的地位、有什么结构?单内核与微内核各有什么特点?在嵌入式系统中,选择哪种类型的内核更好?,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号