《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > TrueFFS上VxWorks應用程序的啟動及動態更新
TrueFFS上VxWorks應用程序的啟動及動態更新
摘要: 為了便于用戶的使用,VxWorks操作系統提供了基于Flash的文件系統,即TrueFFS。TrueFFS與DosFS文件系統基本兼容,通過VxWorks提供的操作接口以文件的方式實現對Flash的操作。而對于用戶來說,如何在自己的硬件系統上根據Flash的具體型號和使用要求實現TrueFFS系統,并在此基礎上完成應用程序代碼的靈活啟動、更新,同時兼顧仿真調試的需求,則非常重要。
Abstract:
Key words :

  引 言

  在嵌入式產品中,一般使用Flash作為應用程序代碼及各種數據和參數的存儲介質。尤其是NOR Flash具有操作接口簡單、傳輸效率高、芯片內執行(eXecute In Place,XIP)的特點,在電力、鐵路等工業控制領域得到了廣泛應用。

  為了便于用戶的使用,VxWorks操作系統提供了基于Flash的文件系統,即TrueFFS。TrueFFS與DosFS文件系統基本兼容,通過VxWorks提供的操作接口以文件的方式實現對Flash的操作。而對于用戶來說,如何在自己的硬件系統上根據Flash的具體型號和使用要求實現TrueFFS系統,并在此基礎上完成應用程序代碼的靈活啟動、更新,同時兼顧仿真調試的需求,則非常重要。

  1 系統基本功能

  本系統應用于鐵路牽引自動化系統中,實現在電氣化鐵路供電系統中對相關電力設備的保護、測量和控制功能。系統基本功能框圖如圖1所示。核心CPU選用Freescale公司的ColdFire系列32位微控制器MCF5234。該處理器內部集成了UART、SPI、I2C、ETPU、CAN、以太網等豐富的功能模塊,系統主頻可達150 MHz,主要用于工業控制、智能家電等方面(尤其是電力自動化控制領域)。系統通過2路以太網接口實現與當地或遠方設備的通信,維護串口用來實現對本設備的維護,采用2片16位接口的NOR Flash實現應用程序和有關參數及數據的存儲。系統提供模擬量輸入、數字量輸入、數字量輸出等接口。有關的模擬量及開關量狀態信息經過對應接口采集到系統內部,經過保護算法軟件的處理后,再通過數字量輸出接口完成對有關設備的控制操作。

系統基本功能框圖

  在傳統嵌入式系統中,編譯好的運行態應用程序一般通過硬件調試工具(如BDM調試器)直接固化到程序Flash的指定位置,裝置上電或復位后,CPU直接跳轉到Flash的起始位置,從Flash中取指并開始執行。但是在VxWorks中,采用該方式不方便軟件的仿真調試,需要重新固化bootrom才行。另外,由于系統要求保存較多的參數和數據,需要在2片Flash中都實現TrueFFS系統;并且為了滿足動態更新程序的要求,還需要實現FTP的功能。因此,需要實現如下功能:在2片Flash上實現True-FFS;在bootrom和應用VxWorks程序上實現TrueFFS和FTP的加載;對bootrom進行改造,以實現應用VxWorks程序和調試VxWorks程序分別通過TrueFFS和TFTP的方式啟動。

  2 TrueFFS的實現及加載

  2.1 TrueFFS的層次結構

  如圖2所示,VxWorks中TrueFFS的層次結構包括內核層、翻譯層、socket層、MTD層。由于VxWorks對TrueFFS進行了優秀的層次劃分和封裝,用戶一般不需要對上述基本層次代碼進行修改。MTD層實現了對常用幾種類型Flash的讀、寫、擦除等基本控制。如果用戶選用了支持的類型,則基本不需要編寫代碼;而如果用戶選用了特殊類型的Flash,則可以參考用例代碼完成對應MTD層代碼的編寫。

TrueFFS的層次結構

  2.2 MTD層代碼實現

  由于本系統中選用的2片Flash為Spansion公司的S29AL032D,因此需要編寫對應的驅動代碼。對于MTD層,一般向上提供MTD識別、Flash連續扇區擦除、Flash連續數據寫等主要接口函數,可以不提供單獨的鏡像函數,系統會使用內部缺省的鏡像函數。需要在2片Flash上實現TrueFFS,即每片Flash相當于一個分區,這一點在編寫驅動程序時需要重點考慮。在MTD層驅動程序中,Flash的單個字節(或字)寫入接口函數為重點,不同Flash類型以及不同的端口寬度都會導致該函數的實現不同。其寫操作流程如圖3所示。

寫操作流程

  為了在兩片Flash上實現2個文件分區,可以采用以下方式:在sysTffs.c中定義新的MTD類型,并根據實際需要定義2片Flash(即兩個分區)的起始地址和長度,并根據上述定義完成TrueFFS設備基址和窗口尺寸的設置;在sysTffsInit()函數中進行2次rfaRegister()操作以完成2個分區的注冊;在rfaRegister()中根據注冊的TrueFFS設備個數設置本TrueFFS設備的設備號。在MTD層接口函數中一般都有一個Flash驅動設備的參數,可以根據該參數來獲取2個TrueFFS設備的設備號,然后分別指向對應的Flash地址范圍進行相應的操作。

  MTD驅動設計完成后,可以根據VxWorks提供的方式完成TrueFFS的加載。在應用程序中可以通過組件配置界面進行加載配置,而在bootrom中則需要手動修改相應的配置文件。

  由于系統的啟動需要從boottom開始,其編譯的結果文件必須以二進制方式固化到程序Flash的起始位置,因此每片Flash起始的256 KB空間都預留出來,不參與TrueFFS系統的管理。這樣,Flash上文件的操作與bootrom啟動代碼的保存不存在沖突。

 

  3 bootrom的改進

  在VxWorks中,修改好的bootrom一般通過硬件調試工具固化到代碼Flash中,bootrom啟動后通過TFTP方式實現編譯好的調試用VxWorks映像文件的下載過程,并完成該映像文件的啟動。這樣就可以實現基于串口或網絡的應用程序調試,使用更加方便靈活。

  為了滿足系統的要求,bootrom還需要增加如下功能:支持2個Flash分區的TrueFFS加載;支持FTP功能;支持從TrueFFS加載及啟動應用程序,以及從TFTP網絡方式加載及啟動調試態VxWorks映像文件兩種方式,以保證系統即使在現場運行過程中,一旦發現問題,也能夠方便地進行仿真調試;支持Flash的格式化及True-FFS的初始化功能,一旦文件系統異常后,可以通過該功能進行TrueFFS的徹底重構。由于boottom的主要工作在bootconfig.c文件中實現,因此上述改進工作也主要在該文件中進行。

  還需要完成以下工作:在對應配置文件中加入IN-CLUDE_TFFS和INCLUDE_FTP_SERVER的定義,從而實現系統對TrueFFS和FTP功能的加載;對bootloader函數進行修改,使其不支持基于TrueFFS的應用程序啟動,當需要調試時通過網絡方式加載和啟動;增加一個類似于bootloader的功能函數,可以以此函數為模版進行修改,完成TrueFFS功能的初始化和加載過程,以及基本網絡功能和FTP功能的加載,同時在程序Flash文件分區中存在應用程序文件的前提下,實現該應用程序的加載和啟動功能;增加2片Flash的格式化和TrueFFS的初始化功能函數。

  對bootCmdLoop任務執行流程進行調整,改進后的流程如圖4所示。

改進后的流程

  在bootCmdLoop進入超級終端界面循環操作過程后,可以通過相關命令完成基于網絡方式的調試態VxWorks映像文件的加載和啟動,也可以根據實際需要增加Flash格式化、自動進入超級終端界面標志命令設置、軟件復位等功能。經過上述改進,可以實現bootrom上運行態應用程序及調試態VxWorks映像文件的靈活加載和啟動,不僅避免了現場運行系統為進行調試而重新寫入bootrom的問題,而且方便應用程序的動態更新。

  4 應用程序的動態更新

  為了便于產品的維護和升級,本系統需要支持基于FTP的應用程序動態更新,而VxWorks提供了各種類型應用程序的加載啟動方式。由于應用程序最終在動態RAM中執行,因此在TrueFFS和FTP功能具備的前提下,實現應用程序的動態更新非常方便。

  經過改造后,bootrom和最終應用程序中都實現了TrueFFS和FTP功能,因此在bootrom和最終應用程序執行時都可以完成應用程序加載。另外,由于具備了bootrom中更新應用程序的功能,即使由于應用程序異常導致無法運行,復位后重新進入bootrom仍然可以進行新程序的更新,從而增強了系統的健壯性。

  需要注意的是,通過TrueFFS方式加載啟動的最終應用程序也是default類型的,而不是rom類型的。如果下載到文件系統中的應用程序是rom類型,則會導致bootrom無法成功加載該文件,因為其實現方式與仿真調試過程基本類似。

  結 語

  經過測試,采用上述實現方案后,系統運行穩定。通過FTP工具,可以靈活地對2片Flash上文件分區中的文件進行讀寫操作,2 MB左右的應用程序文件可在30 s內下載到Flash中。整個系統的啟動過程穩定可靠,對于2 MB左右的應用程序,從裝置上電到bootrom啟動,再到應用程序正常開始運行,基本可在十幾秒內完成。本方案對于基于VxWorks系統的嵌入式產品有一定的借鑒意義。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产欧美日韩不卡| 日韩一二在线观看| 欧美高清在线视频| 国产精品久久久对白| 国产一区二区日韩精品| 国产偷国产偷亚洲高清97cao| 欧美日韩国产综合网| 在线成人av网站| 欧美在线免费看| 欧美另类视频在线| 久久夜色精品国产欧美乱极品| 国产精品免费看片| 黄色欧美日韩| 日韩小视频在线观看专区| 欧美日本成人| 亚洲精品久久嫩草网站秘色| 亚洲自拍偷拍色片视频| 欧美日韩欧美一区二区| 国产精品久久影院| 国产精品www994| 亚洲精品字幕| 在线综合视频| 欧美夜福利tv在线| 亚洲午夜在线观看| 亚洲国产中文字幕在线观看| 国产精品久久久久久久久久免费看| 国产精品免费视频观看| 亚洲欧美日本日韩| 国产精品99久久久久久久久久久久| 欧美一级大片在线观看| 欧美午夜在线视频| 国产伦精品一区二区三区高清版| 在线看日韩欧美| 亚洲精品日韩在线观看| 国产一区高清视频| 在线观看不卡| 亚欧成人在线| 国产免费亚洲高清| 激情欧美国产欧美| 欧美在线免费观看视频| 国产亚洲欧美一区在线观看| 亚洲国产高潮在线观看| 欧美精品久久久久久久久久| 正在播放亚洲| 国产亚洲欧美aaaa| 亚洲国内精品| 亚洲国产一区在线| 中文日韩在线视频| 欧美.日韩.国产.一区.二区| 一区久久精品| 欧美日韩午夜| 国产精品国产三级国产aⅴ入口| 亚洲精品网站在线播放gif| 久久在线视频| 激情综合在线| 中文在线资源观看网站视频免费不卡| 欧美日韩三级一区二区| 欧美有码在线观看视频| 亚洲欧美日韩久久精品| 1024亚洲| 精品二区久久| 亚洲三级影院| 欧美色区777第一页| 久久久久国色av免费看影院| 久久精品人人做人人综合| 亚洲高清不卡在线观看| 亚洲欧美春色| 好吊色欧美一区二区三区四区| 欧美91精品| 欧美日韩国产成人在线| 亚洲一级二级在线| 欧美国产精品中文字幕| 欧美三日本三级少妇三99| 日韩视频在线观看| 亚洲欧洲精品一区二区三区| 国产精品久99| 欧美激情亚洲视频| 国产精品一区二区三区观看| 欧美少妇一区二区| 亚洲综合欧美日韩| 国产日韩一区二区三区在线| 国产精品久久久久久久久久久久| 欧美成人精品一区二区| 亚洲视频在线视频| 一区二区不卡在线视频 午夜欧美不卡'| 午夜精品久久99蜜桃的功能介绍| 久久精品午夜| 国产精品综合久久久| 欧美电影免费网站| 一区精品在线播放| 国产精品揄拍500视频| 激情五月综合色婷婷一区二区| 香港成人在线视频| 国产精品少妇自拍| 狠狠色狠狠色综合日日小说| 亚洲第一精品夜夜躁人人躁| 欧美~级网站不卡| 国产午夜久久久久| 亚洲小说春色综合另类电影| 狠狠色综合日日| 国产在线精品成人一区二区三区| 欧美一区二区三区免费视频| 一区二区欧美精品| 亚洲欧美高清| 国产精品拍天天在线| 红桃视频亚洲| 亚洲欧美变态国产另类| 日韩一级大片| 欧美视频导航| 禁久久精品乱码| 在线观看日韩专区| 9l视频自拍蝌蚪9l视频成人| 一本久久综合亚洲鲁鲁| 久久精品天堂| 欧美日韩伦理在线免费| 亚洲视频在线观看| 久久高清国产| 黄色另类av| 欧美成人免费va影院高清| 亚洲欧美国产77777| 国产中文一区二区三区| 国产日韩在线看| 91久久在线观看| 亚洲激情欧美| 亚洲女女女同性video| 国产精品99久久不卡二区| 国内自拍视频一区二区三区| 黄色精品免费| 久久这里只精品最新地址| 欧美激情一级片一区二区| 免费观看成人| 久久一区亚洲| 亚洲网址在线| 亚洲午夜国产成人av电影男同| 国产精品久久久久久久7电影| 一区二区视频免费完整版观看| 蜜桃av噜噜一区二区三区| 欧美在线视频一区| 国产精品久久久久av| 亚洲永久免费精品| 亚洲电影免费观看高清| 夜夜精品视频一区二区| 国产视频在线一区二区| 亚洲欧美成人一区二区在线电影| 尤物99国产成人精品视频| 久久午夜av| 亚洲无毛电影| 一本一本久久a久久精品综合麻豆| 欧美在线看片a免费观看| 久久精品中文字幕一区二区三区| 欧美日韩另类字幕中文| 欧美激情综合五月色丁香小说| 在线精品视频一区二区三四| 亚洲精品一区二区三区在线观看| 久久蜜桃资源一区二区老牛| 好吊色欧美一区二区三区视频| 欧美日韩成人综合天天影院| 欧美成人一区二区三区片免费| 久久av二区| 一区在线影院| 美女国内精品自产拍在线播放| 每日更新成人在线视频| 欧美日韩一区二区三区在线| 在线综合亚洲| 欧美亚洲日本国产| 亚洲人成绝费网站色www| 蜜臀久久99精品久久久画质超高清| 免费久久久一本精品久久区| 欧美一区二区视频在线观看| 久久久久久久一区二区三区| 国产一二三精品| 欧美视频第二页| 久久人91精品久久久久久不卡| 欧美在线播放视频| 欧美日韩国产大片| 欧美日韩亚洲国产精品| 亚洲欧美日本伦理| 欧美一级黄色网| 亚洲成在线观看| 国产精品视频网址| 国产精品久久夜| 欧美成人精品一区二区| 久久综合色8888| 亚洲国产欧美不卡在线观看| 免费不卡在线视频| 91久久黄色| 亚洲自拍另类| 99视频精品在线| 欧美视频在线免费| 一区二区毛片| 久久亚洲春色中文字幕久久久| 亚洲精品一区二区三区福利| 亚洲九九精品| 99精品国产一区二区青青牛奶| 好吊日精品视频| 欧美呦呦网站| 精品999在线播放| 欧美特黄a级高清免费大片a级| 亚洲一区二区在线免费观看视频| 性欧美xxxx大乳国产app| 韩国精品主播一区二区在线观看| 亚洲第一综合天堂另类专| 欧美成人精品激情在线观看| 欧美一二三视频| 久久久99久久精品女同性| 欧美日韩亚洲一区二区三区在线| 香蕉久久夜色精品| 欧美精品一区二区久久婷婷| 国产麻豆日韩| 日韩一级裸体免费视频| 国产精品一区久久| 国产精品美女久久久久aⅴ国产馆| 国产一区二区三区电影在线观看| 国产亚洲综合精品| 欧美视频三区在线播放| 一区二区三区视频在线看| 欧美久久成人| 亚洲欧美另类在线| 中日韩美女免费视频网址在线观看| 国产欧美一区二区三区另类精品| 国产精品高潮久久| 亚洲最新中文字幕| 亚洲日本国产| 国产精品美女久久久久aⅴ国产馆| 亚洲二区视频在线| 欧美三日本三级少妇三2023| 欧美亚州韩日在线看免费版国语版| 欧美一区二区黄色| 国产精品自拍视频| 狠狠色丁香久久综合频道| 欧美三区视频| 一区二区三区国产盗摄| 禁久久精品乱码| 亚洲丁香婷深爱综合| 亚洲欧美激情视频| 欧美一区二区三区精品电影| 美女黄毛**国产精品啪啪| 欧美二区在线看| 亚洲第一偷拍| 亚洲男人第一网站| 国产午夜精品视频| 午夜伦理片一区| 欧美系列一区| 在线日本成人| 久久er99精品| 亚洲一区在线观看免费观看电影高清| 亚洲激情网站免费观看| 国产精品av免费在线观看| 夜夜爽av福利精品导航| 亚洲制服丝袜在线| 久热re这里精品视频在线6| 亚洲国产高清在线| 99视频国产精品免费观看| 日韩图片一区| 亚洲国产精品久久久久| 欧美三级欧美一级| 亚洲黄色一区| 亚洲国产精品va在线看黑人动漫| 欧美成人中文| 亚洲欧美在线另类| 久久综合免费视频影院| 国产精品一区二区三区四区| 亚洲国产精品va在线观看黑人| 亚洲人人精品| 亚洲欧美日韩中文播放| 午夜视频在线观看一区二区| 久久亚洲精品一区| 午夜综合激情| 亚洲国产aⅴ天堂久久| 欧美激情一区三区| 国产欧美在线观看| 一区一区视频| 亚洲一区三区电影在线观看| 国产精品美女999| 亚洲精品人人| 国产欧美日韩视频一区二区| 男男成人高潮片免费网站| 亚洲第一在线综合网站| 国产精品美女xx| 亚洲伊人观看| 亚洲激情在线激情| 狠狠综合久久av一区二区老牛| 国产精品一二三视频| 一区二区三区日韩精品视频| 禁久久精品乱码| 美女任你摸久久| 狠狠干狠狠久久| 亚洲精品一品区二品区三品区| 欧美大秀在线观看| 国产一区二区三区免费不卡| 亚洲国产欧美日韩精品| 国产一区高清视频| 在线观看日韩www视频免费| 欧美日韩在线看| 欧美性jizz18性欧美| 亚洲天堂av在线免费观看| 久久国产福利国产秒拍| 免费观看国产成人| 久久综合久久综合久久| 国产亚洲精品激情久久| 国产精品美女在线| 国产亚洲欧美日韩美女| 欧美日韩视频不卡| 精久久久久久久久久久| 在线观看欧美一区| 欧美精品日日鲁夜夜添| 欧美日韩一二三四五区| 亚洲高清激情| 国产精品免费区二区三区观看| 亚洲国产成人精品久久久国产成人一区| 欧美国产视频在线观看| 亚洲欧美在线高清| 日韩午夜在线| 亚洲女女做受ⅹxx高潮| 亚洲一区二区三区在线视频| 99视频热这里只有精品免费| 欧美夫妇交换俱乐部在线观看| 欧美精品一区二区三区四区| 欧美性淫爽ww久久久久无| 国产综合在线视频| 亚洲三级性片| 午夜一级在线看亚洲| 欧美激情视频网站| 国产精品三区www17con| 精品成人一区二区三区四区| 国产精品入口| 久久久亚洲高清| 国产免费成人在线视频|