嵌入式Linux在IOP331上的移植實(shí)現(xiàn)
在本嵌入式系統(tǒng)中我們選擇的是RedBoot,它是Red Hat的一個(gè)標(biāo)準(zhǔn)嵌入式操作系統(tǒng)引導(dǎo)和Debug環(huán)境。RedBoot在這里完成了BIOS和BootLoader的任務(wù),所以使用exec命令啟動(dòng)操作系統(tǒng)時(shí),控制權(quán)在操作系統(tǒng)手中。此時(shí),操作系統(tǒng)進(jìn)行了如下操作:使用0x00000100的boot標(biāo)記à解壓縮內(nèi)核à顯示版本信息à顯示系統(tǒng)基本信息(CPU、內(nèi)存等)à使用內(nèi)核參數(shù)準(zhǔn)備啟動(dòng)Ramdisk文件系統(tǒng)à初始化并注冊(cè)系統(tǒng)設(shè)備à解壓縮在block 0的Ramdisk根文件系統(tǒng)映像à解壓并加載Ramdisk根文件系統(tǒng)à根據(jù)根文件系統(tǒng)中的初始化腳本文件運(yùn)行。
使用RedBoot的exec命令啟動(dòng)操作系統(tǒng),則串口能夠打印系統(tǒng)啟動(dòng)畫面,由此可以驗(yàn)證移植成功。
在系統(tǒng)啟動(dòng)的時(shí)候使用initrd來實(shí)現(xiàn)由bootloader(RedBoot)掛載Ramdisk盤,該盤作為根文件系統(tǒng)被掛載,并且供其它程序在它上面運(yùn)行。
至此,整個(gè)操作系統(tǒng)移植過程結(jié)束,其流程如圖2所示。
3.移植驗(yàn)證
IQ80331是Intel公司針對(duì)IOP331設(shè)計(jì)的評(píng)估板。板上資源除8M Flash、256M內(nèi)存、JTAG外,還有網(wǎng)口和串口與主機(jī)通信。通過網(wǎng)口和TFTP協(xié)議可以從主機(jī)下載文件到評(píng)估板,通過串口可以在Linux主機(jī)上的minicom中向評(píng)估板發(fā)送和接收評(píng)估板消息。
我們將嵌入式Linux操作系統(tǒng)移植至評(píng)估板,并在上述基礎(chǔ)上搭建虛擬磁帶庫(VTL)。在IQ80331上連接一塊雙通道SCSI控制器 LSI53C1030T,1030T的一個(gè)通道連接SCSI磁盤,另一個(gè)連接到主機(jī)主板上的單通道SCSI控制器LSI53C1020T上。這樣,在主機(jī)看來,IQ80331、1030T和SCSI磁盤就組成了一個(gè)設(shè)備,讀寫該設(shè)備跟直接讀寫一個(gè)磁帶沒有區(qū)別。這就實(shí)現(xiàn)了一個(gè)虛擬磁帶庫。加載相關(guān)的 SCSI設(shè)備驅(qū)動(dòng)模塊后系統(tǒng)可以正常運(yùn)行。
在主機(jī)端使用tar命令將38.0M的linux-2.6.15.4.tar.bz2文件寫入SCSI磁盤,耗時(shí)18.1s,平均速度2.1M/s,能夠正常穩(wěn)定工作。占用系統(tǒng)時(shí)間約0.1s,充分體現(xiàn)了I/O處理器對(duì)系統(tǒng)輸入輸出處理的重要作用。
4.結(jié)論
經(jīng)驗(yàn)證,移植后的系統(tǒng)穩(wěn)定可靠,以此為基礎(chǔ)搭建的VTL系統(tǒng)能夠正常穩(wěn)定工作,滿足設(shè)計(jì)要求。同時(shí),本文對(duì)于同類XScale架構(gòu)的處理器上的操作系統(tǒng)移植具有普遍意義。
本文作者創(chuàng)新點(diǎn):首次在虛擬磁帶庫設(shè)計(jì)中,將標(biāo)準(zhǔn)Linux操作系統(tǒng)移植到Intel 80331 I/O處理器,并對(duì)其過程進(jìn)行了詳細(xì)地闡述。
參考文獻(xiàn):
[1] 毛德操,胡希明。嵌入式系統(tǒng)——采用公開源代碼和StrongARM/XScale處理器[M].。浙江大學(xué)出版社,2003
[2] 馬忠梅,李善平,康慨等。ARM Linux嵌入式系統(tǒng)教程.。北京航空航天大學(xué)出版社,2004
[3] 林濤,孫鶴旭,云立軍等。Linux在嵌入式系統(tǒng)中地實(shí)現(xiàn)。微計(jì)算機(jī)信息,2004
[4] 陳金明,潘國(guó)良,白英彩?;贗ntel IOP處理器的存儲(chǔ)網(wǎng)絡(luò)技術(shù)的研究與實(shí)現(xiàn)。計(jì)算機(jī)應(yīng)用與軟件,2006
評(píng)論