999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

嵌入式Linux仿真開發(fā)環(huán)境研究

2017-06-01 12:24:00郭翠玲
關(guān)鍵詞:嵌入式環(huán)境系統(tǒng)

高 麗,郭翠玲

(商丘職業(yè)技術(shù)學院,河南 商丘 476000)

?

嵌入式Linux仿真開發(fā)環(huán)境研究

高 麗,郭翠玲

(商丘職業(yè)技術(shù)學院,河南 商丘 476000)

仿真開發(fā)環(huán)境為嵌入式Linux的學習與研究提供了一條新的途徑,使嵌入式軟件的開發(fā)與調(diào)試可以脫離具體的目標硬件平臺,給嵌入式Linux的學習與研究提供了方便.文章詳細討論了一種構(gòu)建基于arm的嵌入式Linux仿真開發(fā)環(huán)境的方法.仿真結(jié)果表明,基于提出方法構(gòu)建的嵌入式仿真環(huán)境可以應用于日常無硬件開發(fā)平臺的嵌入式Linux系統(tǒng)的學習與實驗,并且具有極大的穩(wěn)定性與可行性.

嵌入式Linux;SkyEye;交叉編譯;ARM;仿真環(huán)境

嵌入式系統(tǒng)是一門實踐性非常強的學科,然而,對于缺少相應的硬件開發(fā)板和完善的軟件開發(fā)環(huán)境情況下,無法深入研究和學習嵌入式Linux系統(tǒng).Linux下的開源仿真軟件SkyEye[1]10-13可以實現(xiàn)基于電腦軟件模擬嵌入式硬件開發(fā)板的功能,同時SkyEye提供了對當前主流嵌入式操作系統(tǒng)的支持.SkyEye的諸多特性,使得在缺少相關(guān)硬件開發(fā)板情況下,研究和學習嵌入式Linux系統(tǒng)開發(fā)得以成為現(xiàn)實.

嵌入式Linux仿真開發(fā)環(huán)境主要有2個部分構(gòu)成,分別是搭建仿真環(huán)境和構(gòu)建交叉編譯工具鏈[2]68-70.本文首先剖析了仿真環(huán)境原理,然后詳細介紹了仿真軟件SkyEye的安裝與配置文件,并利用crosstool腳本工具構(gòu)建了基于ARM的嵌入式Linux交叉編譯工具鏈.從而實現(xiàn)了利用仿真軟件快速搭建一個基于ARM的嵌入式Linux仿真開發(fā)環(huán)境.

1 仿真環(huán)境分析

現(xiàn)有嵌入式開發(fā)框架一般采用個人PC機進行嵌入式軟件的開發(fā).由于CPU體系架構(gòu)的不一致,導致了個人PC機上無法運行嵌入式硬件平臺上的代碼.一種較為通用的手段是在個人PC機上采用某種仿真軟件來模擬嵌入式硬件平臺,即采用仿真環(huán)境進行嵌入式Linux系統(tǒng)開發(fā).基于仿真環(huán)境嵌入式開發(fā)的實質(zhì)是在個人PC機平臺上采用指令仿真器執(zhí)行嵌入式硬件平臺上的二進制代碼[3]79-83.一個典型的基于仿真環(huán)境的嵌入式系統(tǒng)開發(fā)架構(gòu)流程如圖1所示.

圖1 基于仿真環(huán)境的嵌入式開發(fā)

基于個人PC機的嵌入式仿真開發(fā)環(huán)境下,應用程序源代碼仍然采用交叉編譯工具鏈編譯成能夠在嵌入式硬件平臺執(zhí)行的目標機代碼,然而這些代碼也可以直接在個人PC機上運行.需要特別指出的是,編譯后的程序源代碼在個人PC機上直接運行需要有相關(guān)嵌入式硬件平臺仿真器的支持.指令仿真器是嵌入式硬件平臺仿真器的核心部分,其功能是將能夠在嵌入式硬件平臺上執(zhí)行的二進制程序代碼轉(zhuǎn)換為個人PC機CPU體系架構(gòu)所支持的程序代碼[4]34-38.

2 SkyEye的安裝與配置

構(gòu)建仿真環(huán)境所必需的skyeye-1.3.2_rc1.tar.gz需從SkyEye官方站點下載獲取,將其在Linux系統(tǒng)下進行解壓縮安裝.安裝過程中需要超級用戶的權(quán)限,在安裝前切換到root用戶.整個安裝命令如下.

su root

_ (輸入root用戶的密碼)

tar zxvf skyeye-1.3.2_rc1.tar.gz

cd skyeye-1.3.2_rc1.tar.gz

./configure

make

make install

SkyEye模擬的硬件配置和模擬行為由配置文件skyeye.conf中的選項確定.在使用SkyEye前,必須要對它進行相關(guān)的修改.通過編寫合適的文件,可以配置出SkyEye支持的任何硬件環(huán)境.skyeye.conf文件由選項組成,每個選項描述一種需要模擬的硬件[5]78-81.

3 構(gòu)建ARM Linux交叉工具鏈

3.1 準備工具

首先給出需要準備的資源文件,如表1所示.

表1 工具包文件

為了便于管理和使用,在/home/arm/下新建一個目錄soure_file存放這些資源文件.然后在/home/arm下使用tar命令解壓crosstool-0.42.tar.gz.

3.2 創(chuàng)建腳本文件

由于要構(gòu)建的是基于arm9架構(gòu)的,所以要創(chuàng)建的是arm920t的arm-linux-gcc.在/home/arm/crosstool-0.42目錄下,新建一個編譯腳本arm.sh,在命令行下用vi命令編輯它的內(nèi)容如下.

set-ex

RESULT_TOP=/opt/crosstool

export TARBALLS_DIR RESULT-TOP

GCC_LANGUAGES=“c,c++”

export GCC_LANGUAGES

mkdir-p $RESULT_TOP

eval ‘cat arm.dat gcc-3.3.6 - glibc-2.3.6.dat’ sh all.sh-notest

1.2.2 細胞轉(zhuǎn)染 lncRNA BLACAT1 siRNA及negative siRNA采購于銳博公司。轉(zhuǎn)染試劑為廣州銳博公司提供的riboFectTM CP。siRNA BLACAT1序列5’-GCATCTAAACTCATCACCA-3’。按siRNA終濃度100 nM進行轉(zhuǎn)染。轉(zhuǎn)染具體步驟遵循riboFectTM CP試劑盒說明書。

echo Done.

3.3 建立配置文件

編譯腳本arm.sh內(nèi)的配置文件arm.dat和gcc-3.3.6-gblic-2.3.6.dat,必須依據(jù)嵌入式系統(tǒng)的具體配置做相關(guān)的修改.依據(jù)本文的實驗環(huán)境,需要將交叉編譯工具鏈選項的字段配置為:“TARGET= ARM-Linux”.配置文件gcc-3.3.6-gblic-2.3.6.dat實現(xiàn)對交叉編譯過程中的一些必需庫文件以及版本信息進行配置,其中需要將LINUX_DIR選項修改為當前所使用的嵌入式操作系統(tǒng),此處為Linux-2.6.20.

3.4 執(zhí)行arm.sh編譯腳本

完成arm.sh中有關(guān)配置文件的調(diào)整后,需要運行腳本文件arm.sh編譯交叉編譯工具鏈.在Linux操作系統(tǒng)命令行下,首先需要切換到crosstool-0.42目錄,然后執(zhí)行“./arm.sh”.隨后系統(tǒng)進行交叉編譯工具的編譯過程,通常需要1~2 h左右.當Linux操作系統(tǒng)完成編譯過程后,opt/crosstool目錄下將會出現(xiàn)若干個不同名稱的交叉編譯工具.

3.5 添加環(huán)境變量

編譯完交叉工具鏈之后,還需要修改Linux環(huán)境變量PATH.只需要將其在Linux操作系統(tǒng)etc目錄下的配置文件bash.bashrc中進行注冊,即在配置文件中的代碼的最后添加上剛剛生成的交叉編譯工具鏈所在的存儲路徑,其配置代碼為“export PATH=/opt/crosstool/gcc-3.3.6-glibc-2.3.6/arm-linux/bin:$PATH”.

4 仿真開發(fā)環(huán)境測試

完成交叉編譯工具鏈和SkyEye安裝后,嵌入式linux仿真開發(fā)環(huán)境就算搭建完成.我們編寫了一個程序Simulation _example.c來測試搭建的仿真開發(fā)環(huán)境.

void simulation ( )

{char *t=“Embedded Linux Simulation example ! ” ;

long* paddr=(long*) 0x50000020;

while(*t)

{ *paddr=*t ;

t++;}

while ( 1 ) ;}

在Linux系統(tǒng)的終端命令里首先運行arm-linux-gcc生成一個Simulation_example.o文件,然后使用arm-linux-ld生成一個ELF格式的可執(zhí)行程序Simulation_example,最后使用arm-linux-objcopy命令,生成一個只包含程序機器碼的二進制文件Simulation_example.bin.由于s3c2410在國內(nèi)比較流行,因此,我們針對s3c2410這款芯片進行仿真.配置文件skyeye的具體內(nèi)容如下.

cpu : arm920t

mach : s3c2410x

mem_bank : map=M , type=RW , addr=0x00000000 , size=0x00800000 , file=. /simulation_example.bin

mem_bank : map=I , type=RW , addr=0x48000000 , size=0x20000000

把skyeye.conf與simulation_example.bin放置在同一個文件夾下.在終端中運行skyeye命令,結(jié)果可以得出,Embedded Linux simulation example!字符串在仿真環(huán)境中打印出來了,說明simulation_example能夠正常運行,驗證了利用構(gòu)建的嵌入式Linux仿真開發(fā)環(huán)境能夠進行嵌入式系統(tǒng)的開發(fā)與研究.

5 結(jié)語

基于仿真環(huán)境的嵌入式系統(tǒng)的開發(fā)和學習可以脫離具體的目標機硬件,利用主機(PC)性能高、調(diào)試環(huán)境好的特點,同時又可以檢驗目標機系統(tǒng)上的代碼的正確性.本文詳細剖析了采用SkyEye創(chuàng)建基于ARM體系結(jié)構(gòu)的嵌入式Linux系統(tǒng)仿真開發(fā)環(huán)境的方法,實驗結(jié)果表明能夠使用仿真開發(fā)環(huán)境進行ARM平臺下的嵌入式Linux開發(fā),具有可靠的穩(wěn)定性.

[1] 王利明,李 明.一個開放源碼的嵌入式仿真環(huán)境[J].單片機與嵌入式系統(tǒng)應用,2003(8).

[2] 劉永林,梁 瑩,王詩琴.基于Linux的嵌入式交叉編譯環(huán)境的建立及實現(xiàn)[J].電腦開發(fā)與應用,2011,24(7).

[3] 栗華山,羅 婕.嵌入式系統(tǒng)仿真開發(fā)環(huán)境設(shè)計與實現(xiàn)[J].現(xiàn)代計算機(專業(yè)版),2012(36).

[4] 陳 渝,韓 超.嵌入式系統(tǒng)設(shè)計與實踐[M].北京:北京航空航天大學出版社,2009.

[5] 劉林海,王 明,杜克明.基于SkyEye的嵌入式Linux移植仿真技術(shù)研究[J].計算機與網(wǎng)絡(luò),2014(2).

[責任編輯 冰 竹]

2016-07-04

高 麗(1983- ),女,河南商丘人,商丘職業(yè)技術(shù)學院講師,碩士,主要從事嵌入式系統(tǒng)與智能計算研究。

TP316.81

A

1671-8127(2017)02-0098-03

猜你喜歡
嵌入式環(huán)境系統(tǒng)
Smartflower POP 一體式光伏系統(tǒng)
長期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
一種用于自主學習的虛擬仿真環(huán)境
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
孕期遠離容易致畸的環(huán)境
環(huán)境
搭建基于Qt的嵌入式開發(fā)平臺
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應用
主站蜘蛛池模板: 亚洲精品无码AⅤ片青青在线观看| 强奷白丝美女在线观看| 午夜啪啪福利| 国产视频自拍一区| 欧美一级在线看| 国产自在线播放| 亚洲有无码中文网| 久久情精品国产品免费| 99这里精品| 午夜爽爽视频| 精品久久国产综合精麻豆| 嫩草国产在线| 九九九久久国产精品| 国产Av无码精品色午夜| 国产亚洲精久久久久久无码AV | jijzzizz老师出水喷水喷出| 国产精品尤物铁牛tv| 五月天福利视频| 久久亚洲国产一区二区| 精品无码国产自产野外拍在线| 尤物国产在线| 日韩中文无码av超清| 国产成人精品18| 亚洲成人一区二区| 高潮毛片免费观看| 99热这里只有精品国产99| 亚洲乱强伦| 无码专区国产精品一区| 中文字幕有乳无码| 成年午夜精品久久精品| 制服丝袜国产精品| 一区二区午夜| 国产一区二区影院| 欧美区一区| 三级欧美在线| 2021精品国产自在现线看| 欧美成人国产| 欧美亚洲国产精品第一页| 波多野结衣第一页| 手机永久AV在线播放| 波多野结衣中文字幕一区二区| 久久窝窝国产精品午夜看片| 亚洲经典在线中文字幕| 白浆免费视频国产精品视频| 自偷自拍三级全三级视频| 亚洲视频一区在线| 午夜免费视频网站| 亚洲国产成人麻豆精品| 毛片视频网| 亚洲欧美日韩另类在线一| 久久人妻xunleige无码| 无遮挡国产高潮视频免费观看| 国产丝袜一区二区三区视频免下载| 久久国产V一级毛多内射| 99热这里只有精品在线播放| 重口调教一区二区视频| 2021国产精品自产拍在线观看 | 久久一级电影| 尤物精品国产福利网站| 国产欧美日韩精品综合在线| 夜夜操国产| 欧美在线综合视频| 国产精品永久不卡免费视频| 丁香五月婷婷激情基地| 香蕉精品在线| 国产尤物视频网址导航| 欧美色亚洲| 无遮挡一级毛片呦女视频| 国产成人麻豆精品| 免费观看精品视频999| 综合色区亚洲熟妇在线| 伊人久久久久久久| 综合色亚洲| 欧美亚洲日韩中文| 精品乱码久久久久久久| 国产精品亚洲va在线观看| 真实国产乱子伦视频| 香蕉蕉亚亚洲aav综合| 亚洲精品自在线拍| a毛片免费在线观看| 欧美黄色网站在线看| 国产精品深爱在线|