- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[计算机软件及应用]嵌入式系统操作系统
第5章 嵌入式系统操作系统 内容 操作系统概述 嵌入式系统的引导技术 BSP板级支持包 操作系统的功能 操作系统内核实现的两种思路 实时操作系统 嵌入式操作系统的移植 常见的嵌入式操作系统 5.1 操作系统概述 操作系统在嵌入式系统组成中的层次 操作系统的结构 操作系统各部分的作用 某些不需要操作系统的嵌入式系统 5.1.1 嵌入式操作系统的体系结构 操作系统在嵌入式系统组成中的层次 并非所有嵌入式系统都包含嵌入式系统的通用组成这些部分,例如有些没有操作系统 5.1.2 操作系统的结构 操作系统的结构 5.1.3 操作系统各部分的作用 操作系统各部分的作用 Bootloader/BIOS/EFI 启动引导程序(Bootloader)是系统加电后首先执行的代码。Boot Loader的主要目标就是加载并且执行嵌入式操作系统映像,不少启动引导程序还完成初始化目标硬件设备,控制启动过程等工作。 在PC中,设备的初始与操作系统引导加载的工作还需要BIOS的参与才能完成。 EFI是可扩展固件接口(Extensible Firmware Interface)的意思,它主要用于PC,是BIOS的替代升级方案。 5.1.3 操作系统各部分的作用 操作系统各部分的作用 操作系统内核 操作系统负责组织和管理计算机的软硬件资源,合理地组织计算机的工作流程,控制程序的执行并向用户提供各种服务功能,使得用户能灵活、方便、有效地使用计算机。 操作系统主要功能包括处理器管理(又称进程管理或任务调度)、同步、内存管理和文件系统等。从层次结构来看,操作系统使得硬件对用户透明。例如用户不必关心外部存储器的形式(硬盘还是flash),可以以统一的文件系统来存取。 5.1.3 操作系统各部分的作用 操作系统各部分的作用 设备驱动程序 设备驱动程序为操作系统内核访问硬件提供的接口,它为操作系统屏蔽了硬件的细节与差异,使得操作系统能适应各种硬件设备,在不同硬件上移植时不需要明显的修改操作系统内核的代码。 设备驱动程序一般与操作系统内核一样,工作在内核态(又称管态,supervisor mode),而非用户态(user mode)。 鉴于设备驱动和Bootloader都是操作系统的支持模块,有的教材将设备驱动、Bootloader与BSP(板级支持包)统归于一层,统称为硬件抽象层。 5.1.3 操作系统各部分的作用 操作系统各部分的作用 库 用户可以通过系统调用或硬件中断来使用操作系统内核的服务,但为了更方便应用使用(特别是由高级程序设计语言书写的应用)操作系统内核服务,操作系统提供一些库来供应用使用。 库一般包括系统库和应用库两个层次,系统库包括如C库、Internet连接库等。而应用库,如提供GUI服务的库等。 有些操作系统不包括的应用库,认为其属于应用空间。 5.1.4 某些不需要操作系统的嵌入式系统 一定需要操作系统吗? 对于简单的系统来说不一定需要操作系统 “简单”的标准 单一任务 没有复杂的设备需要控制 没有复杂的网络/通信协议需要实现 没有太多的数据存储、访问需求 比如大多数的控制类型的应用 同时最“瘦身”的操作系统需要的资源也高于某些嵌入式硬件平台能够提供 起码几百K级别的RAM,几MB级别的ROM,几M级别的CPU clock 所以单片机应用往往没有操作系统 没有操作系统下的嵌入式软件的结构 单一循环结构 每次循环轮询硬件状态并执行相应响应动作 基于中断的结构 主循环里什么都不做或者执行一些日常管理(house keeping)工作 主要靠硬件设备状态改变触发中断,并在中断响应程序里执行相应的响应动作 比如用户按下按钮,或者ADC采样buffer满了 任务队列+中断响应 程序维护一个任务队列(函数指针表),并循环执行其中的每个任务 某些中断响应动作需要较长时间 把它分为必须在中断返回前做完的,和可以稍后做的两个部分。把要稍后做的部分作为一个任务加入到一个任务队列中。 例如图中的中断服务例程仅仅做设置标志(flag)的工作,这样使中断响应动作比较短。 实际上已经很接近操作系统的雏形了。 这种模式在单片机或无线传感器网络中常用。 使用操作系统的好处 支持多任务、多线程编程模型 简化一个复杂应用的设计、实现难度 可以重用已有的设备驱动的实现 可以重用已有的网络、通信协议栈的实现 可以提供文件系统服务,简化复杂和大量的数据访问、存储的实现难度 很大程度上屏蔽了底层硬件(尤其是CPU的编程模型)的细节,降低了对软件开发者的硬件知识的要求 5.2 嵌入式系统的引导技术 引导技术简介 常见的Boot Loader Boot loader的两种实现方式 Bootloader的层次问题 Bootloader的实现语言 5.2.1 引导技术简介 PC的启动过程
您可能关注的文档
最近下载
- 第五单元草原牧歌——《父亲的草原母亲的河》课件2024-2025学年人音版(2024)初中音乐七年级上册.pptx VIP
- (2025秋新版)部编版八年级上册道德与法治《第三课共建网络美好家园》ppt课件.pptx
- NB-T11409-2023水电工程费用构成及概(估)算费用标准.pdf VIP
- 养鸡技术大全技术详略 - 畜牧.docx VIP
- 苏教版六年级上册《科学》全套教学课件(共531页PPT).pptx
- 湘科版2017版小学科学六年级【上册】全册教案详解.pdf VIP
- 宗教事务条例培训.pptx
- 慢性痛风性关节炎伴多发性痛风石一例并文献复习.pdf VIP
- 5.1 认识大数据 课件 粤教版(2019)高中信息技术必修1.pptx VIP
- 23J916-1 住宅排气道(一)图集.pdf VIP
文档评论(0)