2015任务管理与调度.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文档。上传文档
查看更多
嵌入式系统及应用 主要内容 进程与线程 任务 任务管理 任务调度 优先级反转 第一节 进程与线程 程序的运行方式 顺序运行 作业的运行总是一个一个地顺着来,完成一个作业后再运行下一个。在一个作业运行中途,决不会突然插入另一个作业运行。 顺序运行最容易实现,常见于早期的单道批处理系统中 程序的运行方式 顺序运行 顺序运行的特征: 1、顺序特征,所有程序按顺序依次运行 2、独占特征,系统的所有资源供程序任意使用 3、确定性,程序的推进速度与程序的运行结果无关。 4、可重现性,一个程序只要初始条件相同,无论什么时间运行都能得到相同的结果 程序的运行方式 并发运行 允许多个程序共享CPU,在这种方式下,系统的资源不再被某一个程序独占,而是由多个程序共享。 基本特征: 1、异步特性:每个程序运行是不确定的,启动时间不确定,结束时间不确定,程序的整个运行过程呈现不连续状态,走走停停。 2、资源共享:多个程序共享系统资源 程序的运行方式 并发运行 3、相互制约特征:一个资源被某一个程序占用后,其他程序就不能使用该资源,只好等待。 4、不可重现性:一个程序的运行过程和运行结果不可以重现。即使程序的初始条件相同,也会因运行时间不同,得到不同的运行结果。 进程与程序 进程与程序 程序是存放在磁盘上的一系列代码和数据的可执行映像,是一个静止的实体。 进程:可并发执行的程序在一个数据集合上的运行过程。 程序是静止的,程序是动态的,有状态转换。 进程的四要素 : 1、作为一个进程,要有一段程序供其执行。 2、有进程专用的内核空间堆栈。 3、在内核中有一个task_struct数据结构,即“进程控制块”。 4、有独立的用户空间 进程四要素 线程的引入 早期的进程,包含了以下两个方面的内容: 资源。进程是资源分配的基本单位,一个进程包括一个保存进程映像的虚拟地址空间、主存、I/O设备和文件等资源。 调度执行。进程作为操作系统的调度实体,是调度的基本单位。 进程是一个庞大的结构型实体,其PCB结构包含的内容相当多,每创建一个进程,系统无论在时间或空间上都要花费较大的开支。 线程定义 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程; 引入线程的概念后,可把进程和线程的使用分为以下几种模型: 单进程/单线程模型(如MS-DOS):整个系统只有一个进程、一个线程 单进程/多线程模型(如JAVA虚拟机)在单进程/多线程模型中,整个系统有一个进程、多个线程 多进程/单线程模型(如传统的UNIX):在多进程/单线程模型中,整个系统有多个进程,每个进程只有一个线程 多进程/多线程模型(如Windows NT、Solaris、Mach等):在多进程/多线程模型中,系统有多个进程,每个进程又可包含多个线程 第三节 任 务 任务 在嵌入式实时系统中 任务(task):任务是一个具有独立功能的无限循环的程序段的一次运行活动 通常为进程(process)和线程(thread)的统称 任务是调度的基本单位 任务 任务通常包含一个具有无限循环的程序 任务 任务的特性: 动态性、并发性、异步独立性: 任务的内容 : ①任务包含: 代码:一段可执行的程序。 数据:程序所需要的相关数据(变量、工作空间、缓冲区) 堆栈 程序执行的上下文环境 任务 ②任务与程序的区别: 任务能真实地描述工作内容的并发性,而程序不能; 程序是任务的组成部分; 除程序外,任务还包括数据、堆栈及其上下文环境等内容; 程序是静态的,任务是动态的; 任务有生命周期,有诞生、有消亡,是短暂的;而程序是相对长久的; 一个程序可对应多个任务,反之亦然; 任务具有创建其他任务的功能,而程序没有。 任务 任务的分类 : ①按照到达情况的可预测性,任务可以划分为:周期任务(periodic task),非周期任务( non-periodic task) ②按照重要程度,可分为:关键任务(critical task),非关键任务(noncritical task) 任务的参数 优先级(priority):任务的优先级分为静态优先级和动态优先级。 周期(period):表示任务周期性执行的间隔时间。 计算时间(computation time):也被称为是任务的执行时间(execution time)。 就绪时间(ready time):具备

文档评论(0)

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

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

1亿VIP精品文档

相关文档