第5章嵌入式系统软件平台.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章嵌入式系统软件平台课件

5.1 嵌入式软件平台概述 Introduction to software platform of Embedded System 1、嵌入式系统的组成结构 5.1 嵌入式软件平台概述 Introduction to software platform of Embedded System 2、嵌入式软件开发特点 3 嵌入式(实时)操作系统 通用操作系统:Windows/NT/XP、Linux、UNIX等,用于PC机、服务器, 嵌入式(实时)操作系统:用于嵌入式设备的操作系统,具有通用操作系统的基本特点,又具有系统实时性、硬件的相关依赖性、软件固态化以及应用的专用性等特点; 嵌入式(实时)操作系统通常包括与硬件相关的底层驱动软件、系统内核、设备驱动接口、通信协议、图形界面、标准化浏览器Browser等; 嵌入式(实时)操作系统的重要指标:实时性(中断响应时间、任务切换时间等)、尺寸(可裁剪性 )、可扩展性(内核、中间件) 3 嵌入式操作系统的发展 3 常见的嵌入式操作系统 实时嵌入式操作系统的种类繁多,大体上可分为两种,商用型和免费型。 商用型的实操作系统功能稳定、可靠,有完善的技术支持和售后服务,但往往价格昂贵,如Vxworks、QNX、WinCE、Palm OS等。 免费型的实时操作系统在价格方面具有优势,目前主要有Linux,μC/OS是一种源码开放的商业RTOS 学习嵌入式操作系统 学习一种实时操作系统RTOS,如?C/OS-Ⅱ,掌握实时系统的概念和设计方法 嵌入式系统以应用为中心,要选择“适用”的操作系统 嵌入式Linux 自己尝试“写”RTOS RTOS在嵌入式系统中的位置 Linux体系结构 Linux内核架构 Linux编程风格 Linux下使用应用程序的开发 Linux程序的调试 Linux体系结构 Linux系统如何构成的? 从上图得知,Linux由用户空间和内核空间两部分组成。 为什么Linux系统会被划分为用户空间与内核空间? 现代CPU通常实现了不同的工作模式,以ARM为例,实现了7种工作模式: 用户模式(usr)、快速中断(fiq)、外部中断(irq)、管理模式(svc)、数据访问中止(abt)、系统模式(sys)、未定义指令异常(und) X86也实现了4个不同的级别:Ring0—Ring3。 Ring0下,可以执行特权指令,可以访问IO设备等,在Ring3则有很多限制。 Linux系统利用了CPU的这一特性,使用了其中的两级来分别运行Linux内核与应用程序,这样使操作系统本身得到充分的保护。例如:如果使用X86,用户代码运行在Ring3,内核代码运行在Ring0。 内核空间与用户空间是程序执行的两种不同状态,通过系统调用和硬件中断能够完成从用户空间到内核空间的转移。 Linux内核如何构成的? Linux内核架构 系统调用接口 SCI 层为用户空间提供了一套标准的系统调用函数来访问Linux内核,搭起了用户空间到内核空间的桥梁。 进程管理 进程管理的重点是创建进程(fork 、exec),停止进程(kill、exit),并控制它们之间的通信(signal 或者POSIX 机制)。进程管理还包括控制活动进程如何共享CPU,即进程调度。 内存管理 内存管理的主要作用是控制多个进程安全地共享内存区域。 网络协议栈 内核协议栈为Linux提供了丰富的网络协议实现。 虚拟文件系统(VFS) VFS隐藏各种文件系统的具体细节,为文件操作提供统一的接口。 设备驱动 Linux 内核中有大量代码都在设备驱动程序中,它们控制特定的硬件设备。 Linux内核源代码 目录结构:Linux内核源代码采用树形结构进行组织,非常合理地把功能相关的文件都放在同一个子目录下,使得程序更具可读性。 内核源代码下载地址:/ arch目录: arch是architecture的缩写。内核所支持的每种CPU体系,在该目录下都有对应的子目录。每个CPU的子目录,又进一步分解为boot,mm,kernel等子目录,分别包含控制系统引导,内存管理,系统调用等。 | --x86 /* 英特尔cpu及与之相兼容体系结构的子目录*/ | |--boot /*引导程序*/ | | |--compressed /*内核解压缩*/ | |--tools /*生成压缩内核映像的程序*/ | |--kernel /*相关内核特性实现方式,如信号处理、时钟处理*/ | |--lib /*硬件相关工具函数 block目录:部分块设备驱动程序 crypto目录:加密、压缩、CRC校验算法 Documentation:内核的文档 drivers目录:设备驱动程序 fs目录:存放各种文件系统的

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档