- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
vxworks概述
* 武汉创维特 Target目录 VxWorks启动源代码在target/config/all目录中 BSP源代码 发布在target/config/bspName/sysLib.c文件中 该文件可以包含BSP目录和通用驱动目录target/src/drv下的其它文件 网络接口和SCSI驱动的源代码在标准发布中没有提供源代码 每个VxWorks库通常由一个或多个目标模块组成,并由相应的头文件定义,例如: Library Routine Include file(s) ------------------ ----------------- ------------------- taskLib taskSpawn taskLib.h memPartLib malloc stdlib.h semLib semTake semLib.h sysLib sysHwInit sysLib.h 人有了知识,就会具备各种分析能力, 明辨是非的能力。 所以我们要勤恳读书,广泛阅读, 古人说“书中自有黄金屋。 ”通过阅读科技书籍,我们能丰富知识, 培养逻辑思维能力; 通过阅读文学作品,我们能提高文学鉴赏水平, 培养文学情趣; 通过阅读报刊,我们能增长见识,扩大自己的知识面。 有许多书籍还能培养我们的道德情操, 给我们巨大的精神力量, 鼓舞我们前进。 * 武汉创维特 * 武汉创维特 VxWorks概述 刘尚军 * 武汉创维特 VxWorks概述 实时嵌入式操作系统VxWorks VxWorks和Tornado开发环境 * 武汉创维特 VxWorks概述 实时嵌入式操作系统VxWorks * 武汉创维特 实时嵌入式操作系统VxWorks * 武汉创维特 实时系统 多任务内核: 基于优先级的抢占式调度 任务间通讯机制 其它的组件以库的方式建立在内核周围 VxWorks与其它非实时操作系统的区别: 基于优先级的抢占式调度 快速 内核精简和高度可裁减 * 武汉创维特 基于优先级的抢占式内核调度 High Priority Task A Medium Priority Task B Low Priority Task C Event Event * 武汉创维特 VxWorks的任务调度 VxWorks的每个任务可以设定自己的priority和mode。(可否设断点、是否支持浮点操作) VxWorks的优先级为0-255(a Byte)。优先级数越低优先级越高 VxWorks任务分为系统任务和用户任务,IDLE任务优先级为255。 * 武汉创维特 VxWorks中任务与代码 所有的任务代码和全局数据驻留在一个公共的地址空间 所有的任务运行在supervisor模式 * 武汉创维特 VxWorks中任务与代码 在UNIX/NT中,执行相同代码的所有进程共享text,而每个进程都有自己独立的data和bss 在VxWorks中,每一个访问相同代码的任务在访问text, data或者bss段时,所访问的物理内存是一样的 所有的任务代码和全局数据驻留在一个公共的地址空间 使得任务间的通讯快速而容易 使得任务间上下文的切换更加迅速 (不需要保存和恢复虚拟地址上下文). 但是任务之间可能会产生代码不可重入的问题 所有的任务运行在supervisor模式 * 武汉创维特 代码的可重入(1) 多任务运行环境要求我们编写的代码是可重入的 可重入的代码体是指代码体可被多任务占用,而且不出错。 这就要求,代码内无临界资源:临界变量如全局变量,临界设备如打印机,大部分I/O都是临界设备;代码不修改自身,例如病毒就是一种能够修改自身的代码。 * 武汉创维特 代码的可重入(2) 上图中的fooVal可能产生不可重入的问题 避免方法: 如果需要多个任务同时访问,请对fooVal的访问进行原子操作 如果不需要多个任务同时访问,请将该变量定义为taskVar。或者使用局部变量。 * 武汉创维特 VxWorks任务中使用全局变量 如果确定该变量只在一个任务中使用建议使用taskVar 尽量避免在多个任务中使用同一个全局变量,可以使用任务间通讯机制代替 如果在多个任务中使用全局变量请使用原子操作 多个任务的代码中有全局变量同名的情况也可能产生这个问题 * 武汉创维特 VxWorks概述 VxWorks和Tornado开发环境 * 武汉创维特 VxWorks交叉开发环境 * 武汉创维特 VxWorks交叉开发环境 编码和编译在host上的Tornado中进行 编辑器 编译器/汇编器/连接器。可在IDE中进行或
您可能关注的文档
最近下载
- 膜下滴灌技术对阿克苏花生产量的影响机制.docx VIP
- 美国临床实验室对临床质谱方法的质量管理要求.docx VIP
- 船用 6135 柴油机的维护要点.docx VIP
- GKGG5全自动印刷机操作规范标准1行业资料国内外标准规范.docx VIP
- 国标图集06J505-1 (1)-国家建筑标准设计图集电子版下载 2.pdf VIP
- 《花生膜下滴灌技术》课件.pptx VIP
- 公众号管理应急预案.docx
- 花生膜下滴灌技术.ppt VIP
- 2024年全国高中化学竞赛决赛冬令营理论试题及答案 .pdf VIP
- 2025广西公需科目考试答案(3套涵盖95-试题)一区两地一园一通道建设人工智能时代的机遇与挑战.pdf VIP
文档评论(0)