嵌入式操作系统VxWorks中TFFS文件系统的构建.docx
《嵌入式操作系统VxWorks中TFFS文件系统的构建.docx》由会员分享,可在线阅读,更多相关《嵌入式操作系统VxWorks中TFFS文件系统的构建.docx(14页珍藏版)》请在咨信网上搜索。
1、嵌入式操作系统VxWorks中TFFS文件系统的构建摘要:目前的嵌入式系统多使用FLASH作为主存,因此,如何有效管理FLASH上的数据非常重要。文章以MX29LV160BT芯片为例,讨论了在VxWorks操作系统下NorFlash上建立TFFS文件系统的一般步骤,从而为FLASH上的数据管理提供了理想的选择方式,同时也为开发者和用户升级程序提供了方便。关键词:VxWorksFlashMTDTFFS文件系统嵌入式系统正随着Internet的发展而在各个领域得到广泛的应用,作为一个优秀的操作系统,VxWorks实现了比其他实时操作系统更好的有效性、商用性、可裁减性以及互操作性,广泛应用在通信、军
2、事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演习、弹道制导、飞机导航等。如今越来越多的嵌入式操作系统中,通常都使用FLASH作为主存介质。许多开发者和用户为了方便以后升级用户程序,通常在FLASH上建立TFFS文件系统,建立文件系统后,我们就可以象在windows操作系统下对硬盘操作一样,进行数据的拷贝、删除以及文件的建立等操作。NOR和NAND是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NORflash技术,彻底改变了原先有EPROM和EEPROM一统天下的局面。NOR的特点是芯片内执行XIPexecuteInPlace,这样应用程序可以直接
3、在flash闪存内运行,不必再把代码读到系统RAM中。NOR的传输效率很高,在14MB的小容量时具有很高的成本效益,因此在嵌入式系统得到广泛的应用。一、TFFS文件系统结构简介Tornado的TrueFFS是和VxWorks兼容的一种M-SystemsFlite实现方式,版本为。它为种类繁多的flash存储设备提供了统一的块设备接口,并且具有可重入、线程安全的特点,支持大多数流行的CPU构架。有了Tornado的TrueFFS,应用程序对flash存储设备的读写就好象它们对拥有MS-DOS文件系统的磁碟设备的操作一样。如图1所示,TrueFFS由核心层和三个功能层,翻译层,MTD层,socke
4、t层组成。核心层:核心层主要起相互连接其他几层的功能。同时它也可以进行碎片回收、定时器和其他系统资源的维护。通常WindRiver公司将这部分内容以二进制文件提供。翻译层主要实现TrueFFS和dosFs之间的高级交互功能。它也包含了控制flash映射到块、wear-leveling、碎片回收和数据完整性所需的智能化处理功能。目前有三种不同的翻译层模块可供选择。选择哪一种层要看你所用的flash介质是采用NOR-based,还是NAND-based,或者SSFDC-based技术而定。Socket层则是提供TrueFFS和板卡硬件的接口服务。其名字来源于用户可以插入flash卡的物理插槽。用来
5、向系统注册socket设备,检测设备拔插,硬件写保护等。后面将详细讲解它的功能。MTD层功能主要是实现对具体的flash进行读、写、擦、ID识别等驱动,并设置与flash密切相关的一些参数。TrueFFS已经包含了支持Intel,AMD以及samsung部分flash芯片的MTD层驱动。新的芯片需要新的MTD支持,你可以使用一个标准的接口来加入这些驱动。以上四部分,我们通常要的工作就是后两层。当在VxWorks下配置TrueFFS时,你必须为每一层至少包含一个软件模块。后面我们将详细讨论。二、MX29LV160BT芯片上建立TrueFFS文件系统1、配置相关文件在此,我以NorFlashMX2
6、9LV160BT为例,开发工具为。要在VxWorks映像中包含TrueFFS文件系统,首先必须在文件中定义INCLUDE_TFFS。这使得VxWorks的初始化代码调用tffsDrv()来创建管理TrueFFS所需的结构和全局变量,并为所有挂接了的flash设备注册socket组件驱动。在链接的时候,通过解析与tffsDrv()相关联的符号可以将TrueFFS所必需的软件模块链接到VxWorks映象中。为了支持TrueFFS,每一个BSP目录下都必须包含一个文件。它将TrueFFS所有的层链接到一起并和VxWorks绑定。因此,我必须编辑这个文件并决定哪一种MTD和翻译层模块应该包含到True
7、FFS中。即:#defineINCLUDE_MTD_MX29LV/*MX29LV160BTMTDdriver*/#defineINCLUDE_TL_FTL/*FTLtranslationlayer*/#defineFLASH_BASE_ADRS0x2a10000/*Flashmemorybaseaddress*/#undefFLASH_SIZE#defineFLASH_SIZE0x001f0000/*Flashmemorysize,2M(parameterblock)*/其他无关的MTDdriver包含头都#undef掉,同时定义Flash在系统中的基地址和大小。另外,还必须编辑中的sysPh
8、ysMemDesc数组,将Flash基地址和大小加入到MMU中,以供将来访问Flash,否则访问Flash会失败。如果BSP目录下没有文件,那么我们可以从其他BSP目录下拷贝一个即可,然后做上述修改,其他的内容基本可以不用修改。接下来需要修改文件,为了方便管理,通常我们将src/drv/tffs/目录下该文件拷贝到我们BSP目录下,然后再做出修改。在MTDidentifyRoutinemtdTable表中加入如下语句:#ifdefINCLUDE_MTD_MX29LVmx29lvMTDIdentify,#endif/*INCLUDE_MTD_MX29LV*/并在该文件开头声明。#ifdefINC
9、LUDE_MTD_MX29LVFLStatusmx29lvMTDIdentify(FLFlashvol);#endif/*INCLUDE_MTD_MX29LV*/最后就是将我们的flash相关MTD驱动加入到makefile中。即:MACH_EXTRA=为了方便我们调试MTD驱动,应该在重新编译VxWorks映象前将诸如格式化flash、创建TrueFFS块设备、绑定此块设备到dosFs所必要的功能包含到VxWorks映像中。比如如下定义:#defineINCLUDE_TFFS#ifdefINCLUDE_TFFS#defineINCLUDE_TFFS_DOSFS#defineINCLUDE_T
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 操作系统 VxWorks TFFS 文件系统 构建
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。