【毕业学位论文】(Word原稿)嵌入式Linux实时性研究与改进-软件工程_第1页
【毕业学位论文】(Word原稿)嵌入式Linux实时性研究与改进-软件工程_第2页
【毕业学位论文】(Word原稿)嵌入式Linux实时性研究与改进-软件工程_第3页
【毕业学位论文】(Word原稿)嵌入式Linux实时性研究与改进-软件工程_第4页
【毕业学位论文】(Word原稿)嵌入式Linux实时性研究与改进-软件工程_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

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

文档简介

中图分类号: 学校代码: 10055 密级: 硕 士 专 业 学 位 论 文 中文题目: 嵌入式 of 文作者 指导教师 副 )教授 申请学位 工程硕士 培养单位 软件学院 学科专业 软件工程 研究方向 答辩委员会主席 评 阅 人 南开大学研究生院 二一 三 年 五 月 南开大学学位论文使用授权书 根据南开大学关于研究生学位论文收藏和利用管理办法,我校的博士、硕士学位获得者均须向南开大学提交本人的学位论文纸质本及相应电子版。 本人完全了解南开大学有关研究生学位论文收藏和利用的管理规定。南开大学拥有在著作权法规定范围内的学位论文使用 权,即: (1)学位获得者必须按规定提交学位论文 (包括纸质印刷本及电子版 ),学校可以采用影印、缩印或其他复制手段保存研究生学位论文,并编入南开大学博硕士学位论文全文数据库; (2)为教学和科研目的,学校可以将公开的学位论文作为资料在图书馆等场所提供校内师生阅读,在校园网上提供论文目录检索、文摘以及论文全文浏览、下载等免费信息服务; (3)根据教育部有关规定,南开大学向教育部指定单位提交公开的学位论文; (4)学位论文作者授权学校向中国科技信息研究所及其万方数据电子出版社和中国学术期刊 (光盘 )电子出版社提交规定范 围的学位论文及其电子版并收入相应学位论文数据库,通过其相关网站对外进行信息服务。同时本人保留在其他媒体发表论文的权利。 非公开学位论文,保密期限内不向外提交和提供服务,解密后提交和服务同公开论文。 论文电子版提交至 校图书馆网站: 。 本人承诺:本人的学位论文是在南开大学学习期间创作完成的作品,并已通过论文答辩;提交的学位论文电子版与纸质本论文的内容一致,如因不同造成不良后果由本人自负。 本人同意遵守上述规定。本授权书签署一式两份,由研究生 院和图书馆留存。 作者暨授权人签字: 20 年 月 日 南开大学研究生学位论文作者信息 论文题目 姓 名 学号 答辩日期 论文类别 博士 学历硕士 硕士专业学位 高校教师 同等学力硕士 院 /系 /所 软件学院 专业 软件工程 联系电话 通信地址 (邮编 ): 备注: 是否批准为非公开论文 否 注:本授权书适用我校授予的所有博士、硕士的学位论文。由作者填写 (一式两份 )签字后交校图书馆 ,非公开学位论文须附南开大学研究生申请非公开学位论文审批表。 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下进行研究工作所取得的研究成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学位论文原创性声明的法律责任由本人承担。 学位论文作者签名: 年 月 日 非公开学位论文标注说明 根据南开大学有关规定,非公开学位论文须经指导教师同意、作者本人申请和相关部门批准方能标注。未经批准的均为公开学位论文,公开学位论文本说明为空白。 论文题目 申请密级 限制 ( 2年 ) 秘密 ( 10 年 ) 机密 ( 20 年 ) 保密期限 20 年 月 日至 20 年 月 日 审批表编号 批准日期 20 年 月 日 南开大学学位评定委员会办公室盖章 (有效 ) 注: 限制 2年 (可少于 2年 );秘密 10年 (可少于 10 年 );机密 20年 (可少于 20年 ) 摘要 摘要 到目前,实时操作系统广泛应用于各个领域,越来越受到信息领域人们的重视。在实时操作系统中,基于 嵌入式实时操作系统,由于源码的开放性、高可扩展、利于定制和管理,以及稳定性的 统,日益引起人们的欢迎和关注。但 统并不是真正的实时操作系统,应用到 嵌入式 实时性方面必须对其进行实时化改造。而实时化改造 统,组建一个基于 源的、通用的、廉价的以及效率高的实时操作系统是目前实时操作系统的趋势之一,如何增强 嵌入式 实时性是当前实时操作系统研究的重点课题之一,也是国内外计算机行业研究的热点之一。 本文的工作正是研究嵌入式 核的实时性能改进,在分析 核源代码的基础上,针对 核 在嵌入式 实时性 方面存在的 问题 进行分析 ,从实时操作系统的 可抢占 性 、确定性、中断延迟、上下文切换、调度延迟 5 个性能指标出发,主要分析了进程调度机制和中断技术 ,进程调度主要包含了上下文切换和调度延迟两方面,中断技术主要用来包括中断延迟 。首先,本文将 法与崭新的 程调度机制相结合,赋予 法调度,在保持了本身系统调度算法特征的同时, 有效地改进了 实时调度能力,其次,参考中断线程化的思想,将非实时中断线程化,使其延迟处理非实时中断处理程序,迫使非实时任务的优先级低于实时任务,使系统优先处理 时任务,系统负载过重的情况下,也能使实时任务的实时性得到预测以及可确定性。最后,对本文的改进方案进行测试,通过对测试数据的分析比较,证明改造后的内核在实时性能上比普通 加适用于目前嵌入式高实 时性应用的开发。 关键词: 嵌入式系统 时调度 实时性 中断 p to in s In to of as as is a to of it be of of a is of of to of of of of at is of on of .6 to in to of is to of .6 DF DF at by to of to of DF of by of to in on .6 to DF 录 录 摘要 . I . 录 . 1 章 绪论 . 1 课题研究背景 . 1 研究的现状与意义 . 1 论文组织结构 . 2 第 2 章 . 3 . 3 . 4 进程调度 . 5 内存管理 . 5 文件系统 . 6 进程间通信 . 7 网络接口 . 7 . 8 高精度计时系统 . 8 软实时系统和硬实时系统 . 8 非抢占式内核和抢占式内核 . 8 多级中断机制 . 8 实时调度机制 . 9 嵌入式 时系统的性能分析 . 9 目录 V 第 3 章 嵌入式 时性现状分析与改进 . 11 嵌入式 时性分析 . 11 常见 时性提升方案分析 . 13 . 13 . 14 . 16 嵌入式 时性改进思路 . 17 第 4 章 进程调度机制设计与改进 . 19 . 19 进程调度 . 19 数据结构 . 20 调度策略 . 22 实时调度算法的研究 . 25 实时调度器设计 . 26 主要数据结构 . 26 主要算法 . 27 第 5 章 中断技术的研究与优化 . 32 . 32 . 32 数据结构 . 33 . 35 . 35 . 36 . 37 中断技术改进 . 39 . 39 改进方案的设计 . 40 目录 小结 . 42 第 6 章 系统测试与分析 . 43 测试对象 . 43 嵌入式 断响应测试 . 43 测试原理与方法 . 43 测试结果 . 45 嵌入式 程调度测试 . 45 测试原理与方法 . 45 测试结果 . 46 结论 . 48 研究工作总结 . 48 未来工作展望 . 48 参考文献 . 49 致谢 . 53 个人简历 在学期间发表的学术论文与研究成果 . 54 第 1章 绪论 1 第 1 章 绪论 课题研究背景 从嵌入式系统的出现,到现在已经有了几十年的发展历史,嵌入式技术目前已进入了一个相当成熟的阶段。嵌入式系统有一个显著的特征 可预测性和实时性,该特征使其广泛应用到多个应用领域,例如高速铁路、航空等这些应用。在一个优秀嵌入式系统环境中,需要具备支持多任务、实时性的特征,因此广泛应用的嵌入式系统必须具有与外部环境实时交互的能力。 随着 信息技术的飞速发展,由于需求迅速的变化,嵌入式实时系统越来越在各行各业中发挥着巨大的作用。因此,研究嵌入式系统有着相当重要的实际意义,特别是实时性更是关键技术之一。 于自身的特点源码开放性,成为实时系统和嵌入式系统方向上的一个研究热点。由于 实时性方面的不足,以及现实应用中的实际需求,需要对 作系统的实时性进行改造。其中最重要的工作是分析 进程调度机制和中断技术以及抢占性,进而来整改 核来增强系统实时性的方法,其最终满足实时性的需求。 研究的现状 与意义 因 一个自由的、开放源代码的、免费的操作系统,它允许所有用户根据自身的实际需求对它进行编辑和修改。目前,行业内已经大量出现了基于实时系统,如 ,这些实时性操作系统中的大多数已成功广泛的应用到各个领域,甚至有些已经应用在军事和航天、铁路等重要领域,取得了很大进步。 在最近几年内,由于通信行业技术的不断进步和市场需求的不断增加,促进了嵌入式设备的迅速发展,从而也推动了 身的发展。 身有很多的优点和现已在市场上流行的实 时性 统,引起了国内外计算机行业越来越多的关注,实时系统研究已经逐渐壮大发展起来。但是对 入式实时性的深入研究,目前国内比国外较滞后。但总观世界各国越来越对 关注,特别是韩国和德国在政策上对 统的大力支持,说明 统在生活中第 1章 绪论 2 起到了越来越重要的作用。 在现今的社会背景,特别是通信行业对实时性任务的需求越来越大,因此,加强对 统实时性技术的研究和改进对当今社会有很大的价值和现实意义的论题。 论文组织结构 其源码的开放性、功能非常完善 性,稳定性又高、可靠性又好、资源又丰富的特点,得到了业界一致好评,但要将其应用于相应的实时性领域,则需对 统进行改造。论文主要对 嵌入式实时性技术进行了系统性研究,主要内容包括: 1基本概念的进一步研究。通过阅读大量相关书籍和期刊,对嵌入式实时系统的相关概念、基本特性和状态等进行了详细述说,对 作系统的部分构成和主要特色、性质进行分析。 2、通过对目前流行的嵌入式实时性操作的深入分析,找出 核中影响实时性能的关键因素,确定了本文对内核改造的方向和具体的出发点。 3 详细述说了 核进程调度的基本观念,在对目前广泛传播的实时调度算法进行深入研究的基础上,实时内核的进程中实现了 先算法,来提高在实时性方面进程调度问题。 4通过阐述 断技术的机制,来进行改进中断技术来提高系统的实时性。 5对 核源代码在原有系统的基础上进行改进和编译,并测试了编译后系统的实时性。 论文的具体章节安排如下: 第 l 章绪论 第 2 章 时操作系统 第 3 章 嵌入式 时性现状分析与改进 第 4 章进程调度机制 的设计 与改进 第 5 章中断技术的研究与优化 第 6 章 系统测试与分析 第 2章 嵌入式 时操作系统 3 第 2 章 时操作系统 时操作系统简介 需要对外部事件进行及时响应并处理的领域主要通过 实时系统 因此 , 我们研究的 实时系统最关键的因素 是 对时间的响应。系统 在 输入 时产生 的及时响应,对输出 时会 按需提供,无延迟的处理 也就是实时系统 。 在 念 如下: 产生系统输出的时间对系统是至关重要的系统就是实时系统。从输入到输出的延迟时间必须满足小到一个可以接受的时限 (因此实时逻辑的正确性不仅依赖 于输出结果的时间,还取决于正确的计算结果。 实时操作系统是指对特定的功能或者对外部的异步事件在特定的时间范围内完成并做出响应的实时操作系统。实时操作系统应当在限定的时间内完成 ,还 需要逻辑结果的准确性。 实时操作系统具有以下特征: 每个任务,就是一个进程,每个进程都被赋予一定的领先级,拥有独自的作系统允许同步多个进程并发共享一个 为多任务运行。 而事实上, 同一时刻只能激活一个进程,而这种进程间的切换在所有进程完成前一直进行。 上下文切换是多任务调度的核心内容, 基础 。 上下文切换 (一个 过程包括保存一个被挂起进程的上下文而且进程再次获取 够恢复其上下文的运行环境。 上下文切换包括以下几个环节: (1) 确认能否做上下文切换且能否允许做上下文切换。 (2) 保存当前进程的运行环境。 (3) 使用任务调度器,从就绪队列中选择合适的进程。 第 2章 嵌入式 时操作系统 4 (4) 恢复并设置所需进程的运行环境,合理使用 3. 分发器 调度器的 一个 重要 环节 是分发器,它负责执行上下文切换 并且 改变执行的顺序 。在实时操作的系统中,任 一 时间执行的进程在一个应用任务、一个中断处理两个区域的其中一个。当中断离开时,分发器负责 把 控制信息传 至 用户应用任务中的一个。 4. 调度算法 当系统执行进程间切换时,调度器 依 当期所选的调度算法从 适合 的进程队列中选择进程, 通常, 实时操作系统的调度算法与其它操作系统 存在偏差 ,通用系统的调度算法一般 遵守 先进先出的公平策略,实时调度器则遵循实时进程的需要来决定选择进程,从而决定哪个进程优先处理。 体系结构 核 主要由 5个模块构成,它们分别是:进程调度模块、内存动态分配与释放模块、文件操作系统模块、进程间通信模块和网络接口模块。进程调度模块的使用过程用于控制 源,使其各个进程能够公平和合理使用 时保证内核的正常运转以及 时执行硬件操作。内存动态分配与释放模块用于确保所有进程能够稳定地使用共享内存区,对内存使用虚拟化 管理,使其 程在使用过程中得到更大的扩张容量,并可以把外部存储设备通过虚拟化管理使其存储文件系统暂时不使用的文件,在内存和外部存储设备间进行 切换。 对外部设备驱动程序和存储的支持由文件系统模块完成。虚拟文件系统模块借助向外部存储设备提供一个通用的虚拟操作接口,进而提内 存 管 理进 程 调 度文 件 系 统 进 程 间 通 信网 络 接 口图 核模块结构关系图 第 2章 嵌入式 时操作系统 5 供、支持与其它操作系统兼容的多种文件系统格式。进程之间通信模块子系统用来支持多种进程间的信息交换。网络接口模块提供对多种网络通信标准的访问,尤其是协议栈的支持极为优秀。 所有模块均与进程调度模块存互相配合、相互补充的关系。因它们都依赖进程调度来挂起(暂停)或重新运行其进程。平常,某个模块会在等待系统资源时被挂起,而在操作完成后方可继续运行。 进程调度 进程调度程序是决定所 有进程中进度的执行顺序,选择下一个需运行的进程,是 作系统的核心。进程调度程序可认为是在有限的资源下怎样合理使用系统资源进而运行进程的内核子系统。进程调度时机: (1) 进程状态转换时:如进程终止、睡眠等。 (2) 可运行队列中增加新的进程时。 (3) 当前进程的时间片耗尽时。 (4) 进程从系统调用返回到用户态时。 (5) 内核处理完终端后,进程返回到用户态。 我们所使用的通用调度算法都是基于优先级的调度算法,每一轮的进程调度都是在进程就绪队列中由进程调度函数通过调度算法决定哪个进程该存放在进程 运行队列中。通用 核提供 3 种调度算法: 进先出的任务调度算法。系统采用该调度算法时,进程进入就绪队列那一刻时,就决定了该进程的优先级,一旦进程掌控了 源只要改进程完成或者自动退出才会释放 源。 R:时间片轮转的任务调度算法。该调度算法的策略是当进程的时间片用完,系统将重新分配时间片,并把该进程的描述符置于就绪队列队尾,放在队尾保证了所有具有相同优先级的 务的公平调度。 通分时进程的调度策略 内存管理 内存 管理子系统主要包括以下功能: 第 2章 嵌入式 时操作系统 6 (1)地址映射 核使用页式内存管理,应用程序给出虚拟 内存 地址,它需经过若干级页表 逐级 的变换,才变成真正的物理地址 。 (2)虚拟地址管理 每个进程 与每 个 构 相 对应,它指向一个 构, 此即 该进程的内存管理器 , 用户程序对内存的操作(分配、回收、映射)都是对 操作,具体是对 的虚拟内存空间的操作。这些 表着进程空间的各区域,如堆、栈、代码区、数据区、各种映射区等 。 (3)物理内存管理 确保 内存管理程序全部 进程都能均衡地访问计算机的内存资源, 如此 即可 保证系统性能的 完美 。 (4)共享内存 内存管理程序允许进程进行内存共享。 文件系统 文件系统 就是 文件存在的物理空间 。 设计 伊始 就 考虑 到支持大量不同的物理设备。 文件系统体系结构是一个对复杂系统进行 非具象化 的 结构 。 它包含 了一个文件的 属性信息(如 长度、创建 和 修改时间、权限、 隶属 关系、磁盘中的位置等 ) 。 通过使用一组通用的 数, 以在许多种存储设备上支持多种文件系统 。 在 统中 。事实上 每一 分区 均指代 一个文件系统, 并且 都有 其单独 的目录层次结构。 把 这些分 别隶 属不同分区的、 独立 的文件系统 依据限 定方式 ,组成 一个总的系统目录层次结构。 每个 操作系统的运行 都要靠 文件的 具体 操作 来完成 , 所以自身 文件系统 一定 要 持有 并维护。 在 统中, 文件系统 的功能是 用来记录文件信息 的 ,就称谓 索引节点 。就像 作系统中的 文件分配表 一样,索引节点的功能与 作系统中的 文件分配表 一样 。 事实上, 一 个文件系统 来 维护一个索引节点的数组,索引节点数组中的唯一一个元素都与每 一 个文件或目录 相互 对应。每个索引节点系统 都被 分配了一个号码, 这就是该 节点在数组中的索引号, 称 谓 索引节点号。 在 件系统 中, 在系统的目录中同样保存有 文件索引节点号和文件名。所以 ,目录 就 也就是 将文件名称 以及其 索引节点号 结合然后 在一起 形成 的一张表, 目录中的一个连接是由 一对文件名称 与其 索引节点号 结合 组成 。 系统中的每 个文件 都与 唯一的索引节点号 是 相互 对应 的 , 同时,每 个索引节点号 不是只第 2章 嵌入式 时操作系统 7 对一个文件名,它 可以与 不同的 文件名 相互 对应。 故而 , 可以 在磁盘上 通过不相同的路径去访问、查看、更改 同 一个 文件。可以用 令 把一个已经存在的文件再次建立另外一个新的连接 , 然而并 不 用 复制文件的 具体 内容。连接 分为软连接 与 硬连接 ,软连接 也 称谓 符号连接。 进程间通信 进程间各种各样的通信机制由进程通信支持。 常见的进程通信机制有:网络 制、管道 (有名管道 ( 管道:普通管道通常是半双工的单向传输只在父子或兄弟进程间使用,命名管道是双向传输的通信方式,可在任意进程之间传输。 消息队列:消息队列是另一种常用的进程间通信。在拥有足够权限的前提下进程可以对消息队列进行相互的传递信息。 共享内存:共享内存是最快的进程间传输方式。这个机制允许进程共享它们内存的一个区域。 信号量 (主要是供给进程间和同一进程不同线程之间的同步方法。 套接口 (是普遍的线程间通信机制,可用于不同机器之间的数据交换。 网络接口 统提供了非常丰富的网络功能,基本都支持现有互联网的网络协议,其中非常完善的支持了 P 协议。 P 协议也是当今互联网最流行的协议之一,也是网络间终端与终端互联的基础。 络系统通过 口向其它子系统提供服务, 建立和管理是通过系统调用完成的。 第 2章 嵌入式 时操作系统 8 时系统特 点 高精度计时系统 计时精度是影响实时性的重要因素,在实时性系统中,往往需要准确滴确定一个进程或任务的实时操作, 这些不仅取决于一些硬件时钟精度,而且还依赖于高精度 计 时功能在实时操作系统的实现。 软实时系统和硬实时系统 实时系统共分为两种类型:软实时系统、硬实时系统。在软实时系统中,系统的意图是使各个任务运行得越快越好,并不要求控制某一任务必须在一定长时间段内完成,此类系统并没有真正实时操作的要求,其对操作系统的实时性要求比较低,一般的实时操作系统均能满足此要求。在硬实时系统中,每 个任务不但要执行无误并且要做到准时无误,其对操作系统的实时性要求较相当严格,在系统设计时候要非常注意实时性的性能满足问题,对实时操作系统的伪实时的特征应进行仔细分析研究。很多实际应用的实时系统是以上二者的合理结合。 非抢占式内核和抢占式内核 实时内核不同于普通内核,普通内核一般是不能抢占,实时操作系统需要实现当优先级更高的就绪进程就必须调度该进程,需将内核分为非抢占式内核和完全抢占式内核。当进程处于核心态或者中断调用后,那么抢占性内核必须能够把当前优先级最高的就绪进程进行调度,而非抢占性内核由 于自身不存在该能力,从而导致进程调度的不确定。 多级中断机制 一个实时的应用系统通常需要处理的各种外部信息或事件,但 根据进程 的紧迫性处理的优先顺序。一些 进程必须 立即 做出 反应,而另一些 进程 可能在处第 2章 嵌入式 时操作系统 9 理延迟。因此,需要建立一个多层次嵌套中断机制,以确保实时事件对较高的及时响应和处理的紧迫性 。 实时调度机制 实时操作系统不仅响应实时事件中断,而且及时运行实时任务调度。然而,处理器调度不可任意切换,因为涉及到两个过程以确保只有在 “时间 切换 ”点 进行切换。 实时调度机制包括两个方面,一是保证优 先级调度策略和算法的实时任务调度;二是更多的 “切换 ”的时间点建立实时任务的调度,确保及时 处理实时进程。 嵌入式 时系统的性能分析 实时操作系统由于受制于事件响应的特定需求,判断一个实时操作系统的好坏,其标准有其特殊之处,主要是对外部实时事件实时响应特性和操作系统本身行为的可预测性。 任务调度机制、调度算法、中断处理方式和内存管理机制等几个主要影响实时性能的方面可对系统的实时性能产生影响。总体上,抢占式调度要比非抢占式调度占优势,调度一定是要基于任务优先级的,任务调度算法也须是实时调度算法 , 最直接的评价方法就是通过测试环境和测试程序对实时操作系统进行系统响应延迟时间的测量。 评判操作系统是否实时操作系统, 应着重 考虑以下指标: 1可抢占 (实时操作系统 有明显的可抢占的特点, 必须 具备 可抢占的 主要 功能。抢占的意思就是指 当系统处于 在 内核 态运行的时候 , 准许任务的再一次 调度。抢占有利于 提高应用对异步事件的响应性能力。操作系统内核可抢占并不 是 表示任务调度 可以在任何一个时间段 都会发生。 2确定性 (实时操作系统 在某一个既 定条件下,系统 调用的运行时间 必须可以 精确划定。 然而 所有系统调用 并不表示 都 会 一直执行 某个 固定时间,而是指 不管 系统环境怎样,系统调用的最大执行时间 都可以被 确定。 第 2章 嵌入式 时操作系统 10 3中断延迟 (中断延迟 的含义在于 从硬件中断 从 发生 到 开始,执行中断处理程序 第一条指令之间的时间 周期 。系统关中断的时间就是 对 中断延迟 产生影响 的最大因素。 4上下文切换时间 ( 在一个多 任务系统 运行的环境下 ,上下文切换 就是 指 通过运行 一个 任务 转移 至 另一 个就绪 任务的事件发生 时 , 调整 对 控制 权 ,当 前运行的 进程 就绪 、 挂起 或删除,另一个 被选定的就 绪 任务 选择成为当前 进程 。上下文切换包括当前任务 的 保存。 5调度延迟 (调度延迟 是指当运行低优先级任务的进程中出现了 比原来 更高的优先级进程的时刻 , 到该进程被调度后开始运行之间的时间来 测算 。 它 主要取决于当前进程的优先级以及系统采用的调度算法。 第 3 章 时性现状分析与改进 11 第 3 章 嵌入式 时性现状分析与改进 嵌入式 时性分析 标准 1内核不可抢占 在经过众多 发 人员的努力改进, 在 本 中, 内核已经可以被 允许抢占, 而且 实时性 也 得到了 进一步增强 。但内核中仍有大量的不可抢占区域和一些使用 效抢占的临界区。譬如, 程都 处于 内核态运行 状态 , 当 刻, 程被中断,在中断处理程序结束前的某一 个 时间点,优先级更高的 程变为了可执行状态,由于内核是不可抢占的, 所以 在中断返回后 程 续运行,直至进程 束,调度程序被调用,切换至进程 程 着开始 运行。 这一情况 下,优先级 更 高的进程 执行被延迟了,实时系统的性能 受到了 严重 的干扰 。如 图 示: 2中断关闭 断 指令 在一些同步操作 中 使用 时 ,内核进程 反复 中断禁用 是 为 了 尽快 完成任务 。 如 若 低优先级进程关闭中断,中断发生时系统, 即便 有一个高优先级的实时过程将不响应 , 中断关闭将增加中断延迟, 降低系统的 实时 性 。 3自旋锁 (进 程 P 2 进 程 P 1 中 断 进 程 P 1进 程 P 2进 程 优 先 级时 间T 1 T 2T 3图 核态运行的进程 第 3 章 时性现状分析与改进 12 自旋锁 主要应用于在内核态对共享资源的合理控制,当多个进程需要使用相同资源时通过自旋锁可以是解决恶性竞争以及资源的浪费。当两个进程需要同时访问某一资源时,获取到资源的进行将进行加锁过程防止资源被另一进 程抢占,也就是说在加锁期间抢占会失效,知道该进程释放资源,另一进程才能使用该资源。在通用系统中 , 自旋锁是非常普遍的 ,有的甚至 对 数组或 链表 的中 使用自旋锁。因此,抢占延迟 是 非常不确定的。 4大内核锁 由于通用 期设计的需要使用了大内核锁,出于种种原因发展至今还保持了几个大内核锁,但由于大内核锁是应用于整个内核的,因而造成完成进程的延迟以及不确定性,也是实时性内核需要解决的。 5中断总是最高优先级的 在 ,中断(包括软中断)是最高优先级的任务,无论在任何 地方任何时刻 , 一旦发送中断,系统会立 即暂停当前进程执行中断所需要的中断函数以及后续处理。在通用 统中实时性任务不能得到合理的保证,比如当系统一直存在中断或者系统负载过重,那么 源一直处于中断事件中,那么系统会在一直停留在中断状态,而没有事件处理实时性任务,因而不能保证实时性任务的正常运行。 因此, 中断 机制 得不到改进 ,将永远无法实现实时 图 示,当任务 1 运行到 ,一直存

温馨提示

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

评论

0/150

提交评论