coLinux構建嵌入式開發(fā)環(huán)境
coLinux的安裝非常容易,包括幾個簡單的步驟。安裝過程中 coLinux提示可以從網(wǎng)上下載 ArchLinux、Debian 4.0、Fedora 7、Gentoo Deluxe、Ubuntu 7.1等幾個 Linux文件系統(tǒng)映像的壓縮包。點擊相應的“ *Notes”可以打開對應的說明文字與下載的網(wǎng)頁。下面筆者以 Fedora9的文件系統(tǒng)映像壓縮包為例來介紹 coLinux中 Linux的安裝和配置。
從網(wǎng)上下載的 Fedora9文件系統(tǒng)映像壓縮包中包含 5個文件,這些文件對于主機操作系統(tǒng)(Windows)來說都是一些普通的文件,但是對于 coLinux來說其中某些文件(Fedora-9.img、 swap.img)卻是可讀寫的 ext3 / swap類型的 Linux文件系統(tǒng)。
Fedora-9.img是一個 4G大小的 Fedora9文件系統(tǒng)映像,內含了 Fedora9系統(tǒng)中必需的所有文件,并預先配置了 slirp的網(wǎng)絡,gdm登陸的 Xvnc以及支持聲音的 ESD等功能。使用 Fedora9時無需對宿主機的網(wǎng)絡功能方面做任何配置,就可以通過宿主機的 API來控制當前的網(wǎng)絡適配器(網(wǎng)卡)來收發(fā) TCP/UDP數(shù)據(jù)包。由于 Slirp不能收發(fā) ICMP信息,ping和 traceroute等命令無法工作,但是其他網(wǎng)絡功能絲毫不會受到影響。從外部訪問 Linux,需要進行端口重定向,在 coLinux配置文件中可以進行簡單設置。另外 coLinux也為 Linux之間提供了 tuntap與 pcap-bridge的通訊模式,具體信息可以參考 colinux自帶的幫助文檔。
swap.img:這是一個 512M的交換分區(qū)的映像。
start-Fedora-9.bat:啟動 Fedora9+coLinux的批處理文件(需要根據(jù)情況進行修改) ,里面是一個啟動 coLinux的命令,命令后面添加了相關的配置參數(shù)。
start-Fedora-9.sh:啟動 Fedora9+coLinux的腳本文件(需要根據(jù)情況進行修改,于 Cygwin環(huán)境的 Bash下運行)。
README-Fedora-9.txt:本映像的說明文件。
將下載的文件解壓釋放出來,編輯文件 start-Fedora-9.bat,根據(jù)“ Fedora-9.img”和 “swap.img”在宿主機(Windows系統(tǒng))中的真實位置,對 cobd0、cobd1進行適當?shù)男薷?注意:使用“/”進行目錄層次分隔)即可。修改完成后,將其保存在 coLinux軟件的安裝位置,如 “C:Program FilescoLinux”,雙擊即可啟動 coLinux。Fedora9 Linux開始運行后, Linux啟動信息被發(fā)送到一個新打開的 FLTK控制臺中。如果 cobd0、cobd1的配置信息無誤,則能夠順利啟動。
5構造擁有 Window和 Linux雙重優(yōu)點的嵌入式開發(fā)環(huán)境
與 Cygwin相似, coLinux允許在 Windows操作系統(tǒng)上開發(fā)和執(zhí)行 Linux應用程序。但是基于 coLinux的 Linux系統(tǒng)可以用 apt-get/yum等應用程序管理軟件安裝、更新或刪除應用程序,從而達到對 Linux操作系統(tǒng)進行維護的目的。
與 Cygwin不同的是,在 coLinux上執(zhí)行的 Linux應用程序不需要重新構建。從這個角度來講,在 coLinux中與 Windows 操作系統(tǒng)協(xié)作的不是一個模擬的環(huán)境,而是一個真正的 Linux操作系統(tǒng)。
Fedora9啟動后,呈現(xiàn)出一個 FLTK控制臺,可以在里面對 Fedora9進行基本的操作。為了搭建一個嵌入式開發(fā)環(huán)境,還需要安裝部分軟件,如 gcc工具鏈等。由于 Fedora9已經(jīng)配置了 slirp網(wǎng)絡功能,這些軟件可以直接通過網(wǎng)絡進行安裝。輸入簡單的 “yum install gcc”按照提示就可以順利完成 gcc工具鏈的安裝。其他所缺的軟件可以按照同樣的方法進行安裝。如果網(wǎng)絡上無法找到您必須的某些東西,也可以通過源代碼重建來得到。
Fedora 9通過 cofs驅動與宿主機( Windows XP)進行文件共享。 cofs類似于 UML主機
文件系統(tǒng),用于將宿主機 VFS(虛擬文件系統(tǒng))和 Linux的 VFS進行綁定。這樣就可以將宿主機中的文件夾 mount(掛載)到 Linux的文件系統(tǒng)中,如此一來,宿主機和 Linux可以同時對該文件夾中的內容進行讀寫操作,方便了 Windows與 Linux之間的文件交換。
文件共享的配置如下:在啟動 coLinux的配置參數(shù)中添加如下內容:
cofs0=”D:/test/”
重新啟動 coLinux后,在控制臺中執(zhí)行如下命令,就會將 Windows中的“D:test”文件夾掛載到 Fedora系統(tǒng)中的 /mnt文件夾下。
mount -t cofs cofs0 -o uid=dax,gid=dax /mnt
如此以來 Windows XP和 Fedora都可以完全訪問該文件夾中的內容,詳細參數(shù)可參考 coLinux自帶的幫助文件 cofs.txt。Linux系統(tǒng)中所需要用到的軟件,可以用 Windows中的軟件下載,保存到“ D:test”文件夾中,然后在 Linux系統(tǒng)中直接進行安裝。也可把需要使用 Linux環(huán)境進行編譯的代碼放到“ D:test”文件夾下,可在 Windows系統(tǒng)中用熟悉的編輯工具編輯源代碼,而在 Linux系統(tǒng)中編譯,編譯的結果可以使用 Windows下的工具進行下載調試等。
6 總結
本文介紹了一種可以在 Windows系統(tǒng)中以原生方式運行 Linux的軟件—— coLinux。通過分析 coLinux的運行機制,闡述了基于 coLinux的 Linux系統(tǒng)的優(yōu)點,并對基于 coLinux的 Fedora 9的基本配置方法進行了介紹,為熟悉 Windows平臺開發(fā)的人員提供了一個更好的使用 Linux的方法,在實踐中有一定的指導意義。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論