




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第四章嵌入式Linux開發環境的搭建第一頁,共六十八頁。本章目標了解主機系統引導、登錄及退出Linux掌握配置Linux下的minicom和windows下的超級終端掌握嵌入式交叉編譯環境的搭建掌握配置NFS服務掌握主機、目標板的通信配置第二頁,共六十八頁。一、主機系統引導、登錄及退出Linux1系統引導引導過程(boot
process),也稱啟動過程,指的是從主機(如PC機)電源開關閉合或者在加電狀態按下RESET鍵以后,到內核獲得控制權這一段時間。第三頁,共六十八頁。計算機內部運行過程,主要包括:⑴①PC機內部有一片ROM存儲區,存儲了BIOS(Basic
Input
Output
System,基本輸入輸出系統),加電或RESET后,CPU把第一條可執行指令的物理地址設置為0xFFFF0,即指向BIOS的入口地址;②CPU執行BIOS中的程序,對底層硬件、接口和設備進行測試及初始化,例如對中斷控制器、DMA控制器、串行端口等等進行測試和初始化;③運行的BIOS中的程序,從指定的引導盤上將一個引導扇區的內容裝入內存。第四頁,共六十八頁。⑵BIOS將程序執行權移交給剛剛從引導扇區裝入內存的這段程序,由這段程序,將硬盤上的Linux內核代碼壓縮包裝入內存。⑶為了節省存儲空間,通常Linux內核代碼是經過壓縮的,并且在壓縮包的頭部有一小段程序是未經壓縮的可執行代碼,這段程序的功能是對Linux壓縮包中的內核代碼解壓縮。⑷程序執行權移交給解壓縮代碼,由它解壓縮并分配內存空間、填充解壓縮后的代碼。解壓縮完成后,執行權轉移到內核代碼入口處。系統引導是由兩部分程序共同配合完成的,BIOS將引導扇區內容讀入內存,由引導扇區讀入內存的這段代碼再把內核裝入內存。
內核代碼開始執行表示引導過程結束。內核要進行初始化,初始化任務依不同的硬件和不同的Linux版本而有所不同。第五頁,共六十八頁。2登錄Linux第六頁,共六十八頁。3
Linux的終端Linux必須使用的終端設備(包括控制臺等),是借助于與主機連接的顯示器、鍵盤、鼠標和終端仿真程序或終端應用程序來實現的,一般把它們稱為虛擬終端或偽終端(pseudo
terminal),簡稱終端。在圖形桌面環境,鼠標點擊“紅帽子”,選擇“終端”,就可以打開一個虛擬終端,打開虛擬終端的同時,系統為使用該終端的用戶啟動一種shell。第七頁,共六十八頁。圖2.3虛擬終端窗口(a)第八頁,共六十八頁。圖2.3虛擬終端窗口(b)第九頁,共六十八頁。一個root用戶打開的兩個虛擬終端窗口。用鼠標點擊哪一個窗口,這個窗口對應的虛擬終端就被激活。第十頁,共六十八頁。①可以用tty命令,查詢當前激活窗口使用的是哪個終端:[root@localhost
~]#
tty/dev/pts/3上述顯示的pts是pseudo
terminal
slave的縮寫,意思為:從偽終端,是眾多偽終端類型中的一種;顯示的3表示第3個從偽終端。第十一頁,共六十八頁。字符界面命令提示符12主提示符[登錄用戶@主機名工作目錄]輔助提示符root用戶(管理員)登陸后,該提示符為“#”其他普通用戶登陸后,該提示符為“$”[root@localhost
~]#[teacher@localhost
~]$第十二頁,共六十八頁。②用echo命令,可以查詢使用的終端類型:[root@localhost
~]#echo
$TERM
Xterm上述顯示的Xterm,表示是一個基于X-WindowSystem的標準虛擬終端。③通過cat命令查詢主機上Linux支持哪些種類的終端:[root@localhost
~]#
cat
/proc/tty/drivers④在/dev目錄下,用ls命令查詢串行端口能夠連接多少個終端:[root@localhost
dev]#
ls
/dev/ttyS*
-l第十三頁,共六十八頁。4查看及修改用戶使用的shell用戶登錄后,打開一個終端時,系統啟動該用戶使用的shell,關閉這個終端時,終止這個shell的運行。①查看使用的shell[root@localhost
dev]#
ps
-e②臨時改用另一種shell[root@localhost
~]#
tty/dev/pts/3[root@localhost
~]#
shsh-3.1#sh-3.1#
ps
–esh-3.1#
exitexit第十四頁,共六十八頁。[root@localhost
~]#
tty/dev/pts/3[root@localhost
~]#
ps
-e③不同種類shell對應的可執行文件,一般都存儲在/bin錄下,如果在命令行只輸入shell名,比如csh,卻不能啟動csh,那么應該在shell名前加上路徑名,例如/bin/csh。也可以用以下命令,查找系統中已經安裝了哪些shell:[root@localhost
~]#
cd
/bin[root@localhost
bin]#
ls
*shbash
csh
ksh
sh
tcsh
zsh第十五頁,共六十八頁。5通過退出與shell的會話退出Linux(1)在普通PC機或筆記本電腦上,可以使用exit命令
退出shell,退出后系統關閉了該用戶登錄后已經打開的窗口。(2)在GUI桌面環境下,也可以用鼠標關閉窗口退出;或者單擊鼠標右鍵,在隨后出現的菜單中,選擇關閉會話菜單條,退出第十六頁,共六十八頁。6關閉運行的Linux系統退出命令有shutdown、halt、poweroff、reboot等。shutdown最為常用,它使用系統提供的腳本,執行正確的關閉步驟;halt一般會立即關閉系統,不像shutdown命令退出時執行那么多關閉步驟,這可能會引起文件系統同步的問題。poweroff通過切斷電源來關閉系統;reboot將先退出然后重新啟動系統。第十七頁,共六十八頁。關機及重啟命令重啟shutdown
-r
nowshutdown-r
+15“警告:系統將于15分鐘后重啟”
reboot關機shutdown
-h
nowhalthalt
-p18第十八頁,共六十八頁。·
使用VMWare虛擬機,可以用鼠標點擊桌面窗口右上角的關閉窗口圖標,關閉運行的Linux,之后系統會提示Suspend(掛起)還是Power
Off(斷電)。通常可以選擇掛起,這樣在下一次從虛擬機中啟動Linux時,啟動時間比較短。第十九頁,共六十八頁。·
選擇掛起(suspend)后,終止了Linux運行的同時,也關閉了虛擬機窗口,結束了虛擬機運行。下次要運行Linux時,需要雙擊Windows桌面虛擬機圖標,然后在虛擬機窗口選擇Resume
this
virtualmachine(恢復虛擬機)。·
選擇斷電(power
off)后,在虛擬機中模擬單獨運行Linux時的斷電操作。下次要運行Linux時,雙擊Windows桌面虛擬機圖標,選擇power
on。第二十頁,共六十八頁。7使用幫助命令help和man(1)
help命令①輸入help命令后,終端上將顯示用戶現在使用的
shell內部定義的全部命令②如果要查找某一條命令的具體含義,例如[root@localhost
~]#
help
pwd[root@localhost
~]#
help
ls第二十一頁,共六十八頁。(2)用ls命令查找shell之外的命令除了shell內部定義的那些命令之外,其余命令對應的可執行文件,一般都可以在子目錄/bin和/sbin中找到。可以使用命令ls/bin或者ls/sbin去查找,以下是2條命令及部分顯示輸出:[root@localhost
~]#
ls
/bin[root@localhost
~]#
ls
/sbin第二十二頁,共六十八頁。(3)man命令Linux帶有聯機幫助功能,它的幫助文件稱為聯機幫助頁(man
pages),要想找某一個命令的詳細信息,比如ls命令,只要在命令行輸入man后跟隨空格及ls,然后回車就可以了。[root@localhost
~]#
man
ls第二十三頁,共六十八頁。二、超級終端和Minicom配置及使用1、超級終端:(1)Windows下“開始”->”附件”->”通訊”->”超級終端”,在“名稱”處可隨意輸入該連接的名稱。第二十四頁,共六十八頁。第二十五頁,共六十八頁。(2)在“連接時使用”的方式改為“COM1”,即通過串口1第二十六頁,共六十八頁。(3)設置串口連接參數。每塊開發板的連接參數有可能會有差異,其中的具體數據在開發商提供的用戶手冊中有說明。比如:遠峰的YF2410采用的波特率:115200,數據為8位,無奇偶校驗位,停止位1,無硬件流;第二十七頁,共六十八頁。第二十八頁,共六十八頁。(4)基本配置完成,“單擊”確定,如果把開發板的串口線和PC機相連,在開發板上電后,就會顯示超級終端的信息。。例以以后后再再使使用用超超級級終終端端時時,,只只要要啟啟動動實實例例程程序序就就可可以以了了通通過過::開開始始→→所所有有程程序序→→附附件件→→通通訊訊→→超超級級終終端端→→實實程程序序名名,,去去啟啟動動。。第二十九頁,共六十八頁。2主機Linux下的minicom仿真終端(1)minicom仿真終端設置主機Linux環境最常用的一個仿真終端程序是minicom。在第一次使用minicom時,也應該進行設置,再次使
用就不需要設置了,設置過程如下:①在Linux圖形桌面環境,打開一個終端,在終端窗口輸入minicom-s并回車,顯示的內容如圖所示,選擇
serial
port
setup,回車。第三十頁,共六十八頁。minicom仿真終端設置窗口第三十一頁,共六十八頁。②然后按下A鍵,將對應參數設置為/dev/ttyS0并回車;按下E鍵,按下I鍵,將對應參數設置為115200
8N1,回車;按下F鍵,將對應參數設置為No;設置參數如圖所示,然后回車保存參數,選擇save
setup
as
df1。選擇擇EExxiitt退退出出。。③保存參數后,④重啟終端,輸入minicom回車第三十二頁,共六十八頁。3、目標板加電或RESET顯示信息舉例⑴目標板只加載bootloader主機運行minicom程序后,目標板加電或按下RESET鍵,目標板首先
示如下信息,見圖運運行行的的裝裝載載引引導導程程序序,,在在主主機機mmiinniiccoomm窗窗口口顯顯22..1144。。第三十三頁,共六十八頁。⑵目標板由bootloader自動引導Linux在目標板加電或RESET后,如果主機鍵盤不按下任何鍵,目標板的u-boot會自動將Linux裝入內存并運行,在主機minicom終端顯示內容如圖2.15所示。第三十四頁,共六十八頁。4、在虛擬機中增添串口設備
如果minicom程序設置參數后,目標板加電或RESET后,該窗口不顯示目標板啟動信息,那么要檢查串口電纜連接是否正確、連接的端口是否正確、minicom程序參數設置是否正確。
在使用minicom程序時,要把Windows的超級終端程序關閉掉,不允許一個在前臺、另一個在后臺運行。
還有一種可能,就是虛擬機安裝后的默認設置中不包含串口,當用戶第一次安裝虛擬機和Linux后,要在虛擬機中添加串口設備。第三十五頁,共六十八頁。添加串口的步驟如下:(1)如果正在運行虛擬機、Linux,這時要添加串口設備,則必須先用power
off方式退出虛擬機,而不能用suspend(掛起)方式退出,見圖2.17。用power
off方式退出,其實并不是真正切斷了PC機的電源,只是模擬切斷電源退出的一種方式。第三十六頁,共六十八頁。(2)然后再次啟動虛擬機,點擊“VM”,選擇
“settings”,見圖2.18。第三十七頁,共六十八頁。(3)點擊Add按鈕。第三十八頁,共六十八頁。(4)選擇“Serial
Port”點擊“Next”按鈕。第三十九頁,共六十八頁。(5)然后在出現的各個對話框中,依次點擊“Next”、
“Finish”,則在虛擬機中添加了串行端口,如圖所示。第四十頁,共六十八頁。(6)繼續啟動虛擬機,選擇“Power
on
thisvirtual
machine”,直到啟動Linux后,可以檢查
minicom與主機串口通信是否正常。第四十一頁,共六十八頁。三、嵌入式交叉編譯環境的搭建交交叉叉編編譯譯::就就是是在在一一個個平平臺臺上上生生成成可可以以在在另另一一個個平平臺臺上上執執行行的的代代碼碼。。編編譯譯最最主主要要的的工工作作就就是是將將程程序序轉轉化化成成運運行行該該程程序序的的ccppuu所所能能識識別別的的機機器器代代碼碼。。交交叉叉編編譯譯器器完完整整的的安安裝裝一一般般涉涉及及到到多多個個軟軟件件的的安安裝裝,,包包括括bbiinnuuttiillss、、ggcccc、、gglliibbcc等等軟軟件件;;下下載載地地址址::第四十二頁,共六十八頁。器編譯器的安裝舉例⒈⒈將將交交叉叉編編譯譯器器拷拷貝貝到到//uussrr//llooccaall子子目目錄錄啟啟動動虛虛擬擬機機、、運運行行LLiinnuuxx后后,,查查找找并并選選擇擇交交叉叉編編譯譯
aarrmm--22000077qq33--5511--aarrmm--nnoonnee--lliinnuuxx--ggnnuueeaabbii--
ii668866..ttaarr..bbzz,,選選擇擇復復制制菜菜單單條條,,如如圖圖33..11所所示示。。第四十三頁,共六十八頁。然后在Linux圖形桌面環境,在/usr/local子目錄,點擊鼠鼠標標右右鍵鍵,,選選擇擇““粘粘貼貼11個個UURRLL””,,交交叉叉編編譯譯器器將將會會粘粘貼貼到到該該子子目目錄錄,,如如圖圖33..22所所示示。第四十四頁,共六十八頁。⒊建立/usr/local/arm子目錄并解壓縮交叉編譯器在Linux終端窗口輸入如下命令,將建立/usr/local/arm子目錄,然后將交叉編譯器解壓縮到該子目錄下。要求啟動Linux時,以root用戶名登錄。[root@localhost
local]#
mkdir
/usr/local/arm[root@localhost
local]#
tar
xvjf
arm-2007q3-51-arm-none-linux-gnueabi-i686.tar.bz
-C
/usr/local/arm第四十五頁,共六十八頁。解壓縮后的代碼分6個子目錄保存,可以用如下命令查看。[root@localhost
local]#
cd
/usr/local/arm[root@localhost
arm]#ls-l總計8drwxr-xr-x
8
root
root
4096
12-25
10:30
arm-2007q3[root@localhost
arm]#[root@localhost
arm]#cd
arm-2007q3[root@localhost
arm-2007q3]#ls-l
總計
48第四十六頁,共六十八頁。drwxrwxr-x
6
root
root
4096
2007-09-28
arm-none-linux-gnueabidrwxr-xr-x
2
root
root
4096
2007-09-28
bindrwxrwxr-x
2
root
root
4096
2007-09-28
includedrwxrwxr-x
3
root
root
4096
2007-09-28
libdrwxrwxr-x
4
root
root
4096
2007-09-28
libexecdrwxrwxr-x
3
root
root
4096
2007-09-28
share第四十七頁,共六十八頁。4對查找工具鏈的路徑變量進行修改安裝了交叉編譯器后,需要修改/root/.bashrc文件內容,應該在這個文件中增加一行語句,指出交叉編
譯器所在的路徑。之后每當打開終端窗口時,Linux自動運行/root/.bashrc文件,給出缺省路徑名的交叉編譯器的查找路徑。第四十八頁,共六十八頁。(1)在/root/.bashrc文件中增加語句可以用如下命令檢查原來的路徑變量值:[root@localhost
local]#
echo
$PATH/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lo
sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/uR6/bin:/root/bin然后用vi增加一行語句:[root@localhost
local]#
vi
/root/.bashrcexport
PATH=/usr/local/arm/arm2007q3/bin:$PATH第四十九頁,共六十八頁。(2)重啟/root/.bashrc文件可以使用source命令重啟/root/.bashrc文件,然后系統才能修改查找路徑:[root@localhost
~]#
source
/root/.bashrc如果不使用source命令重啟文件,也可以用exit命令關閉終端窗口,然后再次打開終端窗口,打開終端窗口過程中系統會自動啟動/root/.bashrc文件。第五十頁,共六十八頁。(3)檢查新的路徑變量值用echo命令可以檢查新的路徑變量值:
[root@localhost
~]#echo
$PATH/usr/local/arm/arm-2007q3/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/loc
al/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:sr/X11R6/bin:/root/bin第五十一頁,共六十八頁。四主機Linux環境網絡配置1主機Linux環境IP地址設置(1)主機Linux環境IP地址設置簡介主機Linux環境IP地址,應該與目標板Linux的IP地址4個分組中的前3組完全相同,只允許最后一組不同。例如,目標板Linux的IP地址如果為192.168.1.9,那么主機
IP地址前3組必須設置為192.168.1,最后一組可以是
1~253中的一個數字。第五十二頁,共六十八頁。⒉主機Linux環境IP地址設置方法常用的方法有兩種:(1)一種是根據目標板LinuxIP地址,設置主機
Linux
IP地址。這種方法需要先查詢目標板LinuxIP地址,如果目標板還沒有設置過IP地址,應該先進行設置。(2)另一種是保留主機Linux
IP地址不變,根據這個地址設置目標板的IP地址。第五十三頁,共六十八頁。⒊目標板IP地址配置、檢查(1)如果目標板LinuxIP地址還沒有配置,那么在
minicom窗口輸入ifconfig命令之后,沒有任何輸出信息:root@Techv_OMAP35xx:~#
ifconfigroot@Techv_OMAP35xx:~#(2)對目標板Linux
IP地址進行配置,假定配置為192.168.1.9,輸入命令和參數,回車后顯示:root@Techv_OMAP35xx:~#
ifconfig
eth0
192.168.1.9root@Techv_OMAP35xx:~#
ifconfig配置的目標板LinuxIP地址,沒有保留在目標板的外部存儲器。目標板關機或RESET后丟失,下一次使用還需要重新配置。第五十四頁,共六十八頁。⒋主機Linux
IP地址配置、檢查在主機終端窗口,輸入ifconfigeth0192.168.1.5,將IP地址配置為192.168.1.5。[root@localhost
~]#
ifconfig
eth0
192.168.1.5然后用ifconfig命令檢查配置的參數:[root@localhost~]#
ifconfig主機LinuxIP地址配置后的值,保存到外設,主機Linux在虛擬機中用掛起方式退出、關機后,再次啟動仍保留以前配置過的值,直到下一次配置新的地址為止。如果主機Linux在虛擬機中以poweroff方式退出,再次以poweron方式啟動運行Linux后,保存的IP地址丟失,需要重新配置。第五十五頁,共六十八頁。五、主機Linux環境網絡防火墻設置(1)在主機Linux終端窗口,輸入setup命令并回車,然后后在在彈彈出出的的菜菜單單中中選選擇擇““防防火火墻墻配配置置((FFiirreewwaallllccoonnffiigguurraattiioonn))””見見圖圖33..44,,回回車車。。第五十六頁,共六十八頁。(2)在彈出的界面中用光標移動鍵選擇“禁用”防
火墻,選擇“確定”后回車,退出設置,見圖3.5。第五十七頁,共六十八頁。(2)另一種設置方法是:在主機Linux圖形桌面,點擊
“紅帽子”→“安全級別和防火墻”,在彈出的窗口選擇禁用防火墻,如圖3.6所示。第五十八頁,共六十八頁。六、主機與目標板網絡通信測試⒈在主機終端窗口用命令測試主機與目標板的通信在主機Linux終端,輸入ping命令,后跟目標板IP地址,例如:[root@localhost/]#ping
192.168.1.9可以用Ctrl+c鍵去終止ping命令。⒉在目標板終端窗口用命令測試目標板與主機的通信在目標板終端窗口(輸入minicom后的窗口),輸入ping命令,后面跟隨主機IP地址,例如:root@Techv_OMAP35xx:~#
ping
192.168.1.5第五十九頁,共六十八頁。⒊ping命令測試提示的錯誤信息如果網絡不通,系統會產生Unreachable(不可到達)提示信息,這時要檢查:
網絡防火墻設置是否正確,因為防火墻不允許ICMP流量通過;網口電纜與接口是否正確連接;ping命令中的IP地址是否為正確地址;測試命令和IP地址是否在正確的終端窗口輸入。第六十頁,共六十八頁。七、主機Linux環境NFS設置⒈NFS簡述NFS(Network,網絡文件系統)協議,允許在一組通
過網絡互聯的計算機中,計算機A的某個存儲位置(導出),能夠被計算機B使用。NFS協議通過網口的連接,把主機導出目錄的文件,連接到目標板的指定目錄,目標板可以像使用本地文件一樣,使用這些文件。第六十一頁,共六十八頁。⒉主機NFS設置⑴選擇NFS服務一種服同設設置置方方法法是是,,選選擇擇::紅紅帽帽子子→→服服務務,,在在彈彈出出的的務務窗窗口口用用光光標標選選擇擇nnffss服服務務,,見見圖圖33..77。。時還還要要選選擇擇去去掉掉iippttaabblleess服服務務。。然然后后關關閉閉該該窗窗口口。。第六十二頁,共六十八頁。另一種設置方法是,在主機終端窗口,輸入setup命令,在彈出的窗口中選擇“系統服務”并回車,然后用光標鍵上、下移動,用空格鍵選中
nfs服務,見圖3.8,然后去掉iptables服務,最后用F12鍵退出。第六十三頁,共六十八頁。⑵設置主機NFS導出目錄及讀寫權限除了要設置主機Linux允許NFS服務外,還要指定主機的哪些目錄作為
NFS區域,即導出目錄,同時要指定該目錄允許的讀寫權限。設置方法是用vi編輯器打開/etc/exports文件:[root@localhost
~]#
vi
/etc/exports將其內容修改為://home/nfs1*(rw)*(rw)然后保存、退出。第六十四頁,共六十八頁。⒊啟
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 行業分析承包合同
- 《無線電能兼容RF》課件
- 生產調度保證金協議
- 《費列羅巧克力的廣告》課件
- 客運站服務協議
- 鐵路市場營銷產品策略教學案例課件
- 物流公司司機合同管理規定
- 中專主題班會課件
- 世紀英才文化課件下載
- 世界民族音樂文化課件
- 《如何帶教新人》課件
- 2024四川省火鍋行業發展白皮書
- 2025水利云播五大員考試題庫(含答案)
- 養老院安全風險分級管控和隱患排查雙重預防
- 感染性休克指南解讀
- 《老年人合理用藥》課件
- 肝門膽管癌手術配合步驟
- 大數據與會計函授專科畢業實習報告
- 6.3價值的創造和實現 說課課件高中政治統編版必修四哲學與文化
- 2高壓旋噴40雙管法41樁施工記錄表2012-12-31
- XXX檢驗科職業暴露應急處理演練腳本
評論
0/150
提交評論