VxWorks基础培训3.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文档。上传文档
查看更多
VxWorks基础培训 讲解主要内容 VXWORKS概述 VXWORKS编程基础 集成开发工具TORNADO使用 基本代码调试方法 VXWORKS概述 VxWorks是WindRiver公司开发的具有工业领导地位的高性能实时操作系统内核,具有先进的网络功能。 VxWorks的开放式结构和对工业标准的支持,使得开发人员易于设计高效的嵌入式系统,并可以很小的工作量移植到其它不同的处理器上。 VxWorks的特点 一种实时操作系统 一种可定制的操作系统 支持多种CPU 支持多种硬件环境 动态链接和动态下载 NEXT 一种实时操作系统 同非实时操作系统相比的优势——快! 所有任务都在同一寻址空间 任务间通信快 任务切换快 所有任务都运行在特权模式 返回 一种可定制的操作系统 操作系统以组件的形式定制,包括三大类: 操作系统组件 网络组件 开发工具组件 返回 支持多种CPU PPC系列 ——850/860/8240/8245/8260/755/7410/8250 X86 ARM 68K MIPS 返回 支持多种硬件环境 此处的硬件环境指的是CPU以外的硬件差异,通过不同的BSP,可以支持多种系统、各种外设。 返回 动态链接和动态下载 动态链接和动态下载的好处? 调试代码不需要静态编译,可以多次下载 缩短调试周期 返回 调试方式 两种调试方式 系统级模式 任务级模式 模式由image决定 应用层一般使用任务级调试模式 VXWORKS编程基础 任务 任务间通讯 中断与任务间通讯 dosFs文件系统 VxWorks-任务 VxWorks是带有一个相当小的真正微内核的层次结构。内核仅提供多任务环境、进程间通信和同步功能。这些功能模块足够支持VxWorks在较高层次提供丰富的功能和性能的要求。 多任务内核、任务机制、任务间通信和中断处理机制是VxWorks运行环境的核心。 任务 一般的应用被转换成相互独立又相互协作的程序,每一个程序在运行时称作一个任务。 VxWorks的实时内核wind提供了一个基本的多任务环境。内核按照一种调度算法交替运行各个任务,每一个任务都有自己的上下文。在一次上下文切换中,一个任务的上下文被存在任务控制块(TCB)中。 任务状态 任务状态反映任务当前在系统所处的情形。在VxWorks中,任务有几种状态 :就绪(READY)、阻塞(PEND)、睡眠(DELAY)、挂起(SUSPEND)及它们的组合DELAY+S、PEND+S、PEND+T、PEND+S+T、State+I。 任务状态转换 Wind微内核的任务状态迁移表如下图所示: 任务调度 多任务处理需要一个调度法则对准备运行的任务进行CPU分配。对于wind内核来说,基于优先级的抢占调度方式是系统的默认工作方式。当然,也可以根据应用程序的需要选择时间片轮转的调度方式。 任务的调度控制接口函数有: -taskPrioritySet( ) 改变一个任务的优先级 -taskLock( ) 禁止任务的调度 -taskUnlock( ) 允许任务的调度 抢先调度 每一个任务都有一个优先级,内核则确保首先把CPU分配给优先级最高的一个待运行的任务,这个调度的策略就是一个优先级别较高的待运行任务可以抢先运行,内核会立即存储当前正在运行的任务的上下文并切换到高优先级的任务的上下文。 Wind内核一共有256个优先级别,从0到255,0优先级最高,255最低,任务在建立的同时也分配了一个优先级。 当任务执行时可以调用taskPrioritySet()动态改变自己的优先级。 基于优先级的抢占调度示意图 时间片轮转式调度 基于优先级的抢占式调度可以与轮转调度相结合。 轮转式调度是指在同一优先级别上的就绪任务可以公平地共享CPU,每一个任务可以运行一个确定的时间片,然后循环运行其它的任务,每个任务都是相同的时间片。 基于优先级的抢占式调度与轮转调度算法相结合调度示意图 抢占上

文档评论(0)

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

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

1亿VIP精品文档

相关文档