版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 裁剪(ScalingVxWorks Project中的功能可以用来配置除boot ROM Image之外的所有VxWorks的Image(可下 载的,基于ROM的,ROM驻留 Boot ROM Image需要根据BSP对config.h 进行修改来配置.VxWorks也要用 Tornado的工具进行重新编译生成 自动裁剪(AutoscalingVxWorks Project中包括根据应用程序代码自动对VxWorks 进行裁剪的功能 在VxWorks的Build标签中可以用上下文菜单中 的Auto Scale.或Project => Auto Scale.菜单中 的选项来设置 首先确认你
2、BSP和应用所需要的VxWorks组件; 然后找出应用中可能不需要的VxWorks已经包 含的组件 Auto Scale只能检测到应用程序所直接指向的 VxWorks,通过指针而没有直接指向的无法被 检测到,所以Auto Scale可能会建议一个模块不 需要,而实际上它是需要的 提供一种简单快速的裁剪VxWorks的方法 北京邮电大学培训中心 102 北京邮电大学培训中心 101 启动应用程序的代码 在每一个可启动的工程中,都提供一个文件 usrAppInit.c,其中包含句柄程序usrAppInit( void usrAppInit (void #ifdef USER_APPL_INIT U
3、SER_APPL_INIT; /* for backwards compatibility */ #endif /* add application specific code here */ 将应用和VxWorks链接起来 有几种方法可以将应用同VxWorks链接起来 将应用的源程序加入到可以下载的VxWorks工程中, 并一起编译生成 在另外的工程中编译生成应用程序的模块,在 VxWorks的生成(Build规则中将这些模块列在 Makefile的宏定义EXTRA_MODULES中.在 VxWorks生成时,这些模块将会被和VxWorks链接在 一起 生成包含应用模块的archive文件,
4、在VxWorks的生成 (Build规则中将archive文件列在Makefile的宏定义 LIBS.VxWorks / usrAppInit(代码将根据这些库进 行链接 如果包含了application components > application initialization组件,系统启动时在VxWorks组件 被初始化后,会调用 usrAppInit( 编辑usrAppInit(函数以包含启动你的应用的代 码.通常一个taskSpawn(就足够了 北京邮电大学培训中心 103 也可以将这几种方法组合在一起 北京邮电大学培训中心 104 生成VxWorks Target上的映像
5、工程中的工具可以在可下载的工程中生成 下面几种VxWorks的Image vxWorks vxWorks_rom vxWorks_romcompress vxWorks_romResident ROMable Images ROMable Image中的映像文件需要启动代码将 VxWorks从ROM拷贝到RAM,如果需要的话还 要进行解压缩 这部分启动代码在 target/config/comps/src/romStart.c中,它由所 有的ROMable和ROM驻留的工程所共享 vxWorks_rom是未压缩的, vxWorks_romCompress是经过压缩的VxWorks Image
6、vxWorks_rom.hex和 vxWorks_romCompress.hex是十六进制格式的 Image 北京邮电大学培训中心 106 这几种类型的VxWorks Image可以在Build 属性配置选项中的Rules来设置 北京邮电大学培训中心 105 压缩的ROMable Image的启动 Unused ROM Compressed VxWorks Bootstrap Data RTA BootStrap Text 3 USER_RESERVED_MEM LMLA + 0 LOCAL_MEM_SIZE ROM驻留Image vxWorks_romResident为ROM驻留的 Imag
7、e 它从ROM中执行 这种Image包含的启动代码仅仅将 VxWorks数据段拷贝到RAM中,起始地址 为RAM_LOW_ADRS.在冷启动时,它 会清除RAM中的内容 1 Bootstrsp Data STACK_SIZE RAM_HIGH_ADRS RBA RTA=ROM_TEXT_ADRS RBA=ROM_BASE_ADRS Decompressed vxWorks 0 2. Zero RAM RAM_LOW_ADRS LOCAL_MEM_LOCAL_ADRS RESERVED LMLA 107 108 北京邮电大学培训中心 北京邮电大学培训中心 可以下载的Image VxWorks的I
8、mage中不包括将自己从ROM中拷贝 到RAM中的Boorstrap代码 它另外需要一个启动程序来 从本地存储设备或通过网络来获得VxWorks的Image 并将它下载到RAM中的RAM_LOW_ADRS处来执行 标准的bootrom程序A Unused ROM Compressed Boot program Bootstrap Data RTA BootStrap Text 1 3 USER_RESERVED_MEM LMLA + 0 LOCAL_MEM_SIZE Decompressed Boot program 2. Zero RAM RAM_HIGH_ADRS 执行这一特殊应用的标准的
9、VxWorks启动程序 有多种方式:bootrom,bootrom_uncmp, 和 bootrom_res. 目前启动程序不能使用工程中工具来生成,而 是必须使用传统的BSP机制来配置和生成 北京邮电大学培训中心 109 Bootstrsp Data BootStrap Text STACK_SIZE 0 RAM_LOW_ADRS RBA RTA=ROM_TEXT_ADRS RBA=ROM_BASE_ADRS LOCAL_MEM_LOCAL_ADRS RESERVED LMLA 110 北京邮电大学培训中心 标准的bootrom程序B LMLA + 重新生成Boot ROM程序 如果系统Im
10、age太大,下载过程中就会覆 盖启动中的程序.启动过程在打印下列信 息时会失败 Loading. 400316 + 28744 + 23852 需要增加下面几个文件中的 RAM_HIGH_ADRS值 wind/target/config/bspName/config.h wind/target/config/bspName/Makefile 可启动的工程中的关于工程的配置 北京邮电大学培训中心 112 本地存储器 USER_RESERVED_MEM LOCAL_MEM_SIZE Decompressed Boot program RAM_HIGH_ADRS FREE_RAM_ADRS RAM_
11、LOW_ADRS Downloadable VxWorks Image Initail Stack 网络 LOCAL_MEM_LOCAL_ADRS RESERVED LMLA 111 北京邮电大学培训中心 VxWorks的通用配置 VxWorks的配置也可用于配置Boot ROM,和其 它的生成过程 通过编辑target/config/bspName/config.h来配置 VxWorks 通过为一个组件定义INCLUDE_xxx宏来包含它 定义其它参数宏的值 许多默认的定义在文件target/config/all/configAll.h中, 可能会需要修改 冗余的地址参数 下面几个宏在多个文
12、件中都被定义 可启动的工程的Build参数中 文件bspName/config.h中 文件bspName/Makefile中 RAM_LOW_ADRS RAM_HIGH_ADRS 在BSP目录下使用Makefile来生成VxWorks或启 动ROM,例如:make bootrom 北京邮电大学培训中心 113 这三个地方的宏定义值要保持一致 同样在BSP的config.h和Makefile中的两个宏定 义也要保持一致 ROM_TEXT_ADRS ROM_SIZE 北京邮电大学培训中心 114 基于ROM的VxWorks的启动 1. _romInit in config/bspName/romInit.s 最小的初始化:屏蔽中断,禁止缓存,设置初始堆栈, 初始化DRAM操作 2. romStart( in romStart.c or bootInit.c 将代码/数据段拷贝到RAM,清除其它RAM.如果需要 还要解压缩 3. usrInit( in prjConfig.c or bootConfig.c 完成在kernel启动前的硬件和软件的初始化,调用 kernelInit( 来启动Kernel 4. usrRoot( in prjConfig.c or bootConfig.c 初始化VxWorks中配置的功能,开始启动程序或用户应 用 5. 开始用户应用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026广东江门市新会区教育系统招聘事业编制教师184人笔试备考题库及答案解析
- 2026湖南大数据交易所有限公司招聘9人考试参考题库及答案解析
- 2026广东佛山市中医院招聘高层次人才3人(第一批)考试参考试题及答案解析
- 2026江苏苏州漕湖投资控股有限公司下属子公司第一批次招聘8人笔试备考题库及答案解析
- 投影仪品牌小红书引爆策略规划案
- 内科护理应急预案
- 研究生会计就业指导方案
- 2026北京化学工业集团有限责任公司招聘11人笔试参考题库及答案解析
- 2026福建福州长乐华侨中学临聘教职工招聘1人笔试参考题库及答案解析
- 2026云南昆明官渡区青云实验学校春季招聘4人笔试备考试题及答案解析
- 《点集拓扑》课件
- 智慧农业大数据平台技术解决方案
- 围术期急性心梗患者的麻醉管理
- GB/T 13750-2023振动沉拔桩机安全操作规程
- 建设工程前期工作咨询费收费计算表
- 铁路质量安全红线问题检查内容及标准
- 土地开发整理项目预算编制课件
- 兰亭集序 公开课比赛一等奖
- 中国政治思想史考试重点
- 初中生物-绿色植物的呼吸作用教学设计学情分析教材分析课后反思
- 收入专项审计报告收入专项审计报告八篇
评论
0/150
提交评论