<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于XIP技術(shù)的ARM Linux系統(tǒng)的研究與移植

          基于XIP技術(shù)的ARM Linux系統(tǒng)的研究與移植

          作者: 時(shí)間:2012-11-26 來源:網(wǎng)絡(luò) 收藏

            6 系統(tǒng)與性能測(cè)試

            6.1 系統(tǒng)啟動(dòng)

            完成整個(gè)系統(tǒng)的制作并逐步調(diào)整后,使用 Jflash 燒寫B(tài)ootloader,然后利用Bootloader的tftp 工具,從宿主機(jī)下載內(nèi)核映像和根文件系統(tǒng)映像并燒寫到閃存上,最后啟動(dòng)開發(fā)板,引導(dǎo)系統(tǒng)。從串口輸出系統(tǒng)中的啟動(dòng)信息可以看出,系統(tǒng)依次進(jìn)行CPU 片級(jí)初始化、板級(jí)初始化和一些子系統(tǒng)初始化、并加載根文件系統(tǒng),進(jìn)入Busybox 的Shell 命令行,說明系統(tǒng)啟動(dòng)成功。

            6.2 系統(tǒng)啟動(dòng)時(shí)間測(cè)試

            本文采用開發(fā)板上 OSCR 寄存器測(cè)量內(nèi)核映像解壓所節(jié)省的時(shí)間,使用內(nèi)核全局變量jiffies 測(cè)量啟動(dòng)過程各個(gè)部分的時(shí)間,測(cè)量所得時(shí)間數(shù)據(jù)如表2 所示:


            從表中可以看出, Bootloader 啟動(dòng)時(shí)間與內(nèi)核映像無關(guān),當(dāng)Bootloader 引導(dǎo)非壓縮的Image 時(shí),把內(nèi)核映像拷貝到主存RAM 中需要耗費(fèi)拷貝的時(shí)間。對(duì)于zImage,解壓縮過程需要耗費(fèi)545ms,而xipImage 則不需要。在xipImage 執(zhí)行過程中,需要額外拷貝內(nèi)核映像中可讀寫的數(shù)據(jù)段部分,因而內(nèi)核啟動(dòng)時(shí)間要比zImage 要略長一下,但綜合整體時(shí)間,使用Kernel XIP 執(zhí)行方式的系統(tǒng)能有效的縮短系統(tǒng)啟動(dòng)時(shí)間。

            6.3 系統(tǒng)內(nèi)存使用測(cè)試

            本文利用 RAMUST 和free 工具,測(cè)量系統(tǒng)使用的主存情況如表3 所示:


            從表中可以看出,采用 Kernel XIP 的xipImage 內(nèi)核映像通過增加對(duì)Flash 的使用需求,可以顯著減少主存SDRAM 的使用量,F(xiàn)lash 上的內(nèi)核代碼的執(zhí)行,不需要持續(xù)間斷的動(dòng)態(tài)刷新,從而降低了系統(tǒng)的整體功耗和成本。

            總結(jié):本文在通用Linux 2.6.12 內(nèi)核基礎(chǔ)上,以深圳億道公司的XSBase255 開發(fā)板為硬件平臺(tái),研究并實(shí)現(xiàn)了以Kernel XIP 方式運(yùn)行的 Linux 系統(tǒng)的移植,通過系統(tǒng)與性能測(cè)試,取得了較為理想的效果。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();