- 1、本文档共74页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
备注页 第11讲 内存和I/O管理 授课教师: 电邮地址: 内容提要 1 内存管理 2 I/O管理 1 内存管理 内存管理机制 内存保护 不同实时内核所采用的内存管理方式不同,有的简单,有的复杂。 实时内核所采用的内存管理方式与应用领域和硬件环境密切相关。 在强实时应用领域,内存管理方法就比较简单,甚至不提供内存管理功能。 一些实时性要求不高,可靠性要求比较高,且系统比较复杂的应用在内存管理上就相对复杂些,可能需要实现对操作系统或是任务的保护。 嵌入式实时操作系统在内存管理方面需要考虑如下因素: 快速而确定的内存管理 不使用内存管理:最快速和最确定的内存管理方式,适用于那些小型的嵌入式系统,系统中的任务比较少,且数量固定。 通常的操作系统都至少具有基本的内存管理方法:提供内存分配与释放的系统调用。 不使用虚拟存储技术 虚拟存储技术: 为用户提供一种不受物理存储器结构和容量限制的存储管理技术,是桌面/服务器操作系统为在所有任务中使用有限物理内存的通常方法,每个任务从内存中获得一定数量的页面,并且,当前不访问的页面将被置换出去,为需要页面的其他任务腾出空间。 置换是一种具有不确定性的操作:当任务需要使用当前被置换出去的页面中的代码和数据时,将不得不从磁盘中获取页面,而在内存中另外的页面又可能不得不需要先被置换出去。 在嵌入式实时操作系统中一般不使用虚拟存储技术,以避免页面置换所带来的开销。 内存保护 平面内存模式: 应用程序和系统程序能够对整个内存空间进行访问。 平面内存模式比较简单,易于管理,性能也比较高。 适合于程序简单、代码量小和实时性要求比较高的领域。 内存保护: 应用比较复杂、程序量比较大的情况; 防止应用程序破坏操作系统或是其他应用程序的代码和数据。 内存保护包含两个方面的内容: 防止地址越界:每个应用程序都有自己独立的地址空间,当应用程序要访问某个内存单元时,由硬件检查该地址是否在限定的地址空间之内,只有在限定地址空间之内的内存单元访问才是合法的,否则需要进行地址越界处理; 防止操作越权:对于允许多个应用程序共享的存储区域,每个应用程序都有自己的访问权限,如果一个应用程序对共享区域的访问违反了权限规定,则进行操作越权处理。 内存管理机制 静态分配 系统在启动前,所有的任务都获得了所需要的所有内存,运行过程中将不会有新的内存请求。 在强实时系统中,减少内存分配在时间上可能带来的不确定性。 不需要操作系统进行专门的内存管理操作。 系统使用内存的效率比较低下,只适合于那些强实时,且应用比较简单,任务数量可以静态确定的系统。 内存管理机制 动态分配 堆(heap):应用通过分配(malloc)与释放(free)操作来使用内存。 堆会带来碎片: 内存被逐渐划分为位于已被使用区域之间的越来越小的空闲区域。 垃圾回收: 对内存堆进行重新排列,把碎片组织成为大的连续可用内存空间。但垃圾回收的时间长短不确定:不适合于处理实时应用。 在实时系统中,避免内存碎片的出现,而不是在出现内存碎片时进行回收。 内存管理机制 常用管理方式: 固定大小存储区: 在指定边界的一块地址连续的内存空间中,实现固定大小内存块的分配。 可变大小存储区: 在指定边界的一块地址连续的内存空间中,实现可变大小内存块的分配。 应用根据需要从固定大小存储区或者可变大小存储区中获得一块内存空间,用完后将该内存空间释放回相应的存储区。 固定大小存储区管理 可供使用的一段连续的内存空间被称为是一个分区; 分区由大小固定的内存块构成,且分区的大小是内存块大小的整数倍数。 固定大小存储区管理 分区的操作 创建分区 删除分区 从分区得到内存块 把内存块释放到分区 获取分区ID 获取当前创建的分区的数量 获取当前所有分区的ID 获取分区信息 固定大小存储区管理 如果内存块处于空闲状态,将使用内存块中的几个字节作为控制结构,用来存放用于双向链接的前向指针和后向指针。 在使用内存块时,内存块中原有的控制信息不再有效,其中的所有存储空间都可以被使用。 固定大小存储区管理的系统开销对用户的影响为零。 由于内存块的大小固定,不存在碎片的问题。 可变大小存储区管理 可变大小存储区管理为基于堆的管理方式。 堆为一段连续的、大小可配置的内存空间,用来提供可变内存块的分配。 可变内存块称为段,最小分配单位称为页,即段的大小是页的大小的整数倍。 如果申请段的大小不是页的倍数,实时内核将会对段的大小进行调整,调整为页的倍数。 如,从页大小为256个字节的堆中分配一个大小为350字节的段,实时内核实际分配的段大小为512个字节。 可变大小存储区管理 可变大小存储区中的空闲段通过双向链表链接起来,形成一个空闲段链。 在创建堆时,只有一个空闲段,其大小为整个存储区的大小减去
您可能关注的文档
- 信号及系统 第03章.ppt
- 五年级数学求小数近似数.ppt
- 上课用指南针及远洋航海.ppt
- 三年级数学万以内数加减法.ppt
- 世界地理第十一节 南极洲.ppt
- 十二篇卤代烃.ppt
- 人类文明的开端及亚洲与欧洲的封建国家.ppt
- 上大 无机化学B 第四篇 配合物结构.ppt
- 人教版物理选修3-2 第4章第6节 互感与自感.ppt
- 三维设计和工程制图-1-00.ppt
- 小学科学:ESP8266智能插座电路原理与动手实践研究教学研究课题报告.docx
- 《金融开放浪潮下我国多层次监管体系构建与创新研究》教学研究课题报告.docx
- 区域教育质量监测中人工智能应用的数据质量分析与优化策略教学研究课题报告.docx
- 《金融科技监管中的数据治理与合规性要求》教学研究课题报告.docx
- 《3D打印技术在航空航天领域中的多材料制造与复合材料应用》教学研究课题报告.docx
- 《绿色金融发展中的政府职能与市场机制研究》教学研究课题报告.docx
- 《植物工厂多层立体栽培光环境调控技术对植物生长发育节律的调控机制探讨》教学研究课题报告.docx
- 销售团队年度业绩总结.docx
- 银行风险管理与金融危机防范.docx
- 银行网络攻击预警与快速响应机制.docx
最近下载
- 悬挑脚手架、落地脚手架安全专项施工方案.doc VIP
- 分级护理制度精编PPT课件.pptx VIP
- 梁德清体育活动等级量表(PARS-3)及评定标准.doc VIP
- 建筑施工技术(千年土木 小筑拾遗)知到课后答案智慧树章节测试答案2025年春潍坊工程职业学院.docx VIP
- ABB.ACS580替换550指南了解.pdf VIP
- 2025年公需课《人工智能赋能制造业高质量发展》试题及答案.doc VIP
- 建筑施工技术(千年土木 小筑拾遗)智慧树知到期末考试答案章节答案2024年潍坊工程职业学院.docx VIP
- 2023兖矿能源定向委培考试.pdf
- 潮汕工夫茶调研报告.docx VIP
- 生活中的物理问题“生活中的物理”探究.pptx VIP
文档评论(0)