適用于Windows CE 6.0操作系統(tǒng)的Multi-bin技術(shù)解析
2017-10-30 |
rar |
0.3 MB |
次下載 |
1積分
資料介紹
Windows CE是微軟推出的一款32位的嵌入式操作系統(tǒng)。它具有良好的多媒體功能和友好的人機交互界面,支持PowerPC、X86、ARM和MIPS等多個系列處理器的體系結(jié)構(gòu),并為所支持的處理器提供完善的系統(tǒng)庫[1]。它還提供了完善的設(shè)備驅(qū)動程序和軟件開發(fā)包,大大縮短了開發(fā)周期,節(jié)約了電子智能產(chǎn)品的上市時間。在這些產(chǎn)品開發(fā)過程中,系統(tǒng)啟動時間的時延是影響客戶體驗(QoE)的重要因素。啟動速度受很多因素的影響,包括定制系統(tǒng)鏡像文件的大小、系統(tǒng)內(nèi)核加載驅(qū)動的多少、內(nèi)存占用的大小等。為了減少系統(tǒng)啟動時延,目前比較流行的做法是在Bootloader中添加LOGO啟動畫面,從而在視覺上降低客戶的時延感受[2]。從本質(zhì)上講,這種方法并沒有從根本上減少系統(tǒng)的啟動時延,僅僅是從視覺的角度轉(zhuǎn)移了客戶的注意力。
本文在分析Windows CE 6.0系統(tǒng)啟動過程的基礎(chǔ)上,設(shè)計了一種在Bootloader中實現(xiàn)BinFS文件系統(tǒng)進而完成Multi-bin加載的方法,從而真正達到縮短啟動時間的效果,同時還為用戶節(jié)省了大量的內(nèi)存空間。實驗結(jié)果表明,該方法性能穩(wěn)定,可移植性強,并已經(jīng)應(yīng)用到一款基于Samsung 2440處理器的IPTV手持式測試儀系統(tǒng)上。
1 Windows CE系統(tǒng)啟動過程
Windows CE系統(tǒng)啟動過程如圖1所示。

在Windows CE操作系統(tǒng)中,當(dāng)基于Windows CE的目標(biāo)設(shè)備上電啟動或者復(fù)位時,系統(tǒng)首先加載并運行Bootloader程序,Bootloader程序進行必要的硬件初始化,然后通過Bootloader再加載并啟動操作系統(tǒng)內(nèi)核映像。啟動操作系統(tǒng)內(nèi)核的過程實際上就是加載并運行OAL(OEM Adaptation Layer)程序的過程。OAL是Windows CE操作系統(tǒng)內(nèi)核的重要組成部分,OAL并不能被單獨加載并運行,它最終被編譯進操作系統(tǒng)內(nèi)核,從而通過操作系統(tǒng)內(nèi)核存在并發(fā)揮作用,操作系統(tǒng)的啟動過程就是一個加載并運行OAL程序的過程[3]。
系統(tǒng)從啟動加載內(nèi)核映像文件到最后的顯示桌面會有一段時間,這個時間段就是通常所說的啟動時延。通常情況下為10 s~13 s。為了縮短這段時延,可以將系統(tǒng)映像分為多塊,將系統(tǒng)核心啟動部分的內(nèi)容放到內(nèi)存中,其他部分放到固態(tài)存儲器(如Nand Flash)中,使用BINFS文件系統(tǒng)讀出。即在系統(tǒng)啟動過程中,先加載操作系統(tǒng)內(nèi)核映像的核心部分,而操作系統(tǒng)內(nèi)核映像的其他部分仍然駐留在Nand Flash中,需要時再從Nand Flash中進行加載,從而大大減少開機讀取系統(tǒng)的時間。同時,也不再需要為操作系統(tǒng)預(yù)留全尺寸的內(nèi)存空間,而只需預(yù)留最小開機核心部分的內(nèi)存空間,剩下的作為通用內(nèi)存空間。這樣就使得操作系統(tǒng)內(nèi)存的使用有了很大靈活性,同時可用系統(tǒng)內(nèi)存大大增加。從而,在根本上達到了按需加載系統(tǒng)模塊到內(nèi)存的要求。這就是所謂的Multi-bin技術(shù)。
2 Windows CE .bin鏡像文件解析與下載
由Windows CE的開發(fā)工具Platform Build編譯生成的Windows CE操作系統(tǒng)及Bootloader的鏡像文件主要有兩種格式類型:以.bin為文件名后綴的記錄型鏡像文件和以.nb0為后綴的原始型(raw)鏡像文件。前者以記錄(Record)為單位組織鏡像的數(shù)據(jù),后者則是鏡像在嵌入式系統(tǒng)中運行時的二進制數(shù)據(jù)快照。其中,.bin文件是一個描述性質(zhì)的鏡像文件,它由文件頭(Head)、鏡像數(shù)據(jù)目的起始地址(ImageStart)、鏡像數(shù)據(jù)長度(ImageLength)和多條相對獨立的記錄(Record)構(gòu)成。本文以實現(xiàn)Multi-bin的操作系統(tǒng)xip.bin為例進行分析,使用UltraEdit將其打開,如圖2所示。

從圖2可以看出,文件頭(head)由7個字節(jié)組成,內(nèi)容是:42 30 30 30 46 46 0A,即“B000FF\x0A”,這是判斷鏡像文件是.bin類型的依據(jù)。鏡像數(shù)據(jù)目的起始地址(ImageStart,00 00 07 80)由4個字節(jié)組成,它定義了鏡像文件解析后裝載在內(nèi)存中的起始地址是0x80070000。鏡像數(shù)據(jù)長度(ImageLength,68 07 13 02)也由4個字節(jié)組成,它表示.bin鏡像文件解析后在內(nèi)存中占用的總的存儲空間大小為(0x02130768)。每條記錄(Record)由4字節(jié)的起始存儲地址(RecordStart)、4字節(jié)的數(shù)據(jù)長度(RecordLength)、4字節(jié)的校驗碼(RecordCheckSum)和RecordLength個字節(jié)的記錄數(shù)據(jù)(RecordData)組成。以第一條記錄(陰影部分)為例,分別為0x80070040、0x00000008、0x000001E3和0X8007004C434543454。
本文在分析Windows CE 6.0系統(tǒng)啟動過程的基礎(chǔ)上,設(shè)計了一種在Bootloader中實現(xiàn)BinFS文件系統(tǒng)進而完成Multi-bin加載的方法,從而真正達到縮短啟動時間的效果,同時還為用戶節(jié)省了大量的內(nèi)存空間。實驗結(jié)果表明,該方法性能穩(wěn)定,可移植性強,并已經(jīng)應(yīng)用到一款基于Samsung 2440處理器的IPTV手持式測試儀系統(tǒng)上。
1 Windows CE系統(tǒng)啟動過程
Windows CE系統(tǒng)啟動過程如圖1所示。

在Windows CE操作系統(tǒng)中,當(dāng)基于Windows CE的目標(biāo)設(shè)備上電啟動或者復(fù)位時,系統(tǒng)首先加載并運行Bootloader程序,Bootloader程序進行必要的硬件初始化,然后通過Bootloader再加載并啟動操作系統(tǒng)內(nèi)核映像。啟動操作系統(tǒng)內(nèi)核的過程實際上就是加載并運行OAL(OEM Adaptation Layer)程序的過程。OAL是Windows CE操作系統(tǒng)內(nèi)核的重要組成部分,OAL并不能被單獨加載并運行,它最終被編譯進操作系統(tǒng)內(nèi)核,從而通過操作系統(tǒng)內(nèi)核存在并發(fā)揮作用,操作系統(tǒng)的啟動過程就是一個加載并運行OAL程序的過程[3]。
系統(tǒng)從啟動加載內(nèi)核映像文件到最后的顯示桌面會有一段時間,這個時間段就是通常所說的啟動時延。通常情況下為10 s~13 s。為了縮短這段時延,可以將系統(tǒng)映像分為多塊,將系統(tǒng)核心啟動部分的內(nèi)容放到內(nèi)存中,其他部分放到固態(tài)存儲器(如Nand Flash)中,使用BINFS文件系統(tǒng)讀出。即在系統(tǒng)啟動過程中,先加載操作系統(tǒng)內(nèi)核映像的核心部分,而操作系統(tǒng)內(nèi)核映像的其他部分仍然駐留在Nand Flash中,需要時再從Nand Flash中進行加載,從而大大減少開機讀取系統(tǒng)的時間。同時,也不再需要為操作系統(tǒng)預(yù)留全尺寸的內(nèi)存空間,而只需預(yù)留最小開機核心部分的內(nèi)存空間,剩下的作為通用內(nèi)存空間。這樣就使得操作系統(tǒng)內(nèi)存的使用有了很大靈活性,同時可用系統(tǒng)內(nèi)存大大增加。從而,在根本上達到了按需加載系統(tǒng)模塊到內(nèi)存的要求。這就是所謂的Multi-bin技術(shù)。
2 Windows CE .bin鏡像文件解析與下載
由Windows CE的開發(fā)工具Platform Build編譯生成的Windows CE操作系統(tǒng)及Bootloader的鏡像文件主要有兩種格式類型:以.bin為文件名后綴的記錄型鏡像文件和以.nb0為后綴的原始型(raw)鏡像文件。前者以記錄(Record)為單位組織鏡像的數(shù)據(jù),后者則是鏡像在嵌入式系統(tǒng)中運行時的二進制數(shù)據(jù)快照。其中,.bin文件是一個描述性質(zhì)的鏡像文件,它由文件頭(Head)、鏡像數(shù)據(jù)目的起始地址(ImageStart)、鏡像數(shù)據(jù)長度(ImageLength)和多條相對獨立的記錄(Record)構(gòu)成。本文以實現(xiàn)Multi-bin的操作系統(tǒng)xip.bin為例進行分析,使用UltraEdit將其打開,如圖2所示。

從圖2可以看出,文件頭(head)由7個字節(jié)組成,內(nèi)容是:42 30 30 30 46 46 0A,即“B000FF\x0A”,這是判斷鏡像文件是.bin類型的依據(jù)。鏡像數(shù)據(jù)目的起始地址(ImageStart,00 00 07 80)由4個字節(jié)組成,它定義了鏡像文件解析后裝載在內(nèi)存中的起始地址是0x80070000。鏡像數(shù)據(jù)長度(ImageLength,68 07 13 02)也由4個字節(jié)組成,它表示.bin鏡像文件解析后在內(nèi)存中占用的總的存儲空間大小為(0x02130768)。每條記錄(Record)由4字節(jié)的起始存儲地址(RecordStart)、4字節(jié)的數(shù)據(jù)長度(RecordLength)、4字節(jié)的校驗碼(RecordCheckSum)和RecordLength個字節(jié)的記錄數(shù)據(jù)(RecordData)組成。以第一條記錄(陰影部分)為例,分別為0x80070040、0x00000008、0x000001E3和0X8007004C434543454。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- Windows CE.net操作系统的内核定制0次下载
- AD7156-适用于单片机平台的无操作系统驱动程序7次下载
- AD7303-适用于单片机平台的无操作系统驱动程序16次下载
- AD7193-适用于单片机平台的无操作系统驱动程序53次下载
- AD7780-适用于单片机平台的无操作系统驱动程序11次下载
- 适用于Blackfin的安全、可现场升级的操作系统体系结构0次下载
- 嵌入式操作系统Windows CENET中Nkbin文件的自启动0次下载
- 基于Windows CE的数据管理系统的开发0次下载
- Windows CENET操作系统的架构0次下载
- Windows CE详解67次下载
- 基于MIPS的Win CE多媒体操作系统的研究14次下载
- 嵌入式操作系统Windows CE的研究15次下载
- 基于Windows CE.Net 4.2嵌入式操作系统多媒体59次下载
- Windows CE板卡支持包介绍27次下载
- Windows XP操作系统 ppt课件0次下载
- Windows操作系統(tǒng)中的常用命令 696次閱讀
- 深度解析全球操作系統(tǒng)格局 1268次閱讀
- 樹莓派4B操作系統(tǒng)安裝方案 3334次閱讀
- 基于pSoSystem操作系統(tǒng)實現(xiàn)通用網(wǎng)絡(luò)代碼框架的設(shè)計 2126次閱讀
- 如何才能將不同的操作系統(tǒng)移植到Android上 905次閱讀
- 基于S3C2410處理器對Windows CE 5.0操作系統(tǒng)實現(xiàn)BSP移植 1069次閱讀
- Linux操作系統(tǒng)的目錄結(jié)構(gòu) 3572次閱讀
- 海天雄電子:Cortex-A8嵌入式教學(xué)實驗系統(tǒng) 2835次閱讀
- 現(xiàn)在使用的電腦操作系統(tǒng)有哪些?分別有什么特點 1w次閱讀
- windows10操作系統(tǒng)安全模式的使用技巧 1295次閱讀
- 適用于測控領(lǐng)域的4種實時操作系統(tǒng)對比分析 3700次閱讀
- ARM嵌入式Wince的開發(fā)心得 7065次閱讀
- Windows CE.NET 4.2下的串行通信技術(shù)講解 1706次閱讀
- 簡要介紹了操作系統(tǒng)虛擬化的概念,以及實現(xiàn)操作系統(tǒng)虛擬化的技術(shù) 1.3w次閱讀
- uC/OS和uClinux操作系統(tǒng)的區(qū)別 4534次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關(guān)電源基礎(chǔ)知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計與實現(xiàn)
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發(fā)板設(shè)計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論