北京電子科技學院(BESTI)linux
實 驗 報 告編程
課程:深刻理解計算機系統 班級: 1352 windows
姓名:莫凡 潘俊洋bash
學號:20135225 20135230工具
成績: 指導教師:婁嘉鵬 實驗日期:2015/11/10學習
實驗密級: 預習程度: 實驗時間:3:30~6:00spa
儀器組次: 必修/選修:必修 實驗序號:1操作系統
實驗名稱: 開發環境的熟悉 命令行
實驗目的: 熟悉Linux開發環境,學會基於S3C2410的Linux開發環境的配置和使用。使用Linux的armv4l-unknown-linux-gcc編譯,3d
使用基於NFS方式的下載調試,瞭解嵌入式開發的基本過程。
實驗儀器:
名稱 |
型號 |
數量 |
實驗箱 |
UP-NETARM2410嵌入式 |
1 |
PC |
WinXP |
1 |
實驗內容、步驟與體會:
實驗內容:本次實驗使用Redhat Linux 9.0操做系統環境,安裝ARM-Linux的開發庫及編譯器。建立一個新目錄,並在其中編寫hello.c和Makefile文件。學習在Linux下的編程和編譯過程,以及ARM開發板的使用和開發環境的設置。下載已經編譯好的文件到目標開發板上運行。
實驗步驟:
1.鏈接 arm 開發板
將 arm 開發板電源線接好,保持開發板開關處於閉合狀態。再分別將串口線、 並口線和網線與 pc 機鏈接好。
2.創建超級終端
運行 windows XP 系統下「開始」、「全部程序」、「附件」、「通信」、 「超級終端」。
新建一個通訊終端,取名爲 arm。在屬性對話框中,將波特率設爲 115200,
數據位設爲 8,無奇偶校驗,中止位爲 1,無數據流控制。
3.啓動實驗平臺
打開超級終端,打開 arm 機電源開關。等待一分鐘,arm 機的信息會顯示在
超級終端的窗口中。
繼續等待,直至出現如圖 6 所示界面。輸入 ifconfig 命令,記錄下 arm 機的 ip
爲:192.168.0.121。
4.修改 xp 系統與 redhat 虛擬機的 ip,使得它們均與 arm 機的 ip 在同一網段。
本次實驗中將 pc 機的 ip 設爲 192.168.0.55,redhat 虛擬機 ip 爲 192.168.0.234。
5.安裝arm編譯器
在pc機中運行,輸入虛擬機ip 192.168.0.234 打開文件夾,訪問虛擬機的文件,而後把所需文件armv4l拷貝到共享文件夾bc中。
進入虛擬機,在命令行中輸入./install.sh 安裝腳本會自動創建目錄,配置編譯環境。
6.配置環境變量虛擬機中使用vi 修改/root/.bash_profile 文件中的
PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ , 存盤後執行:source /root/.bash_profile,則以armv4l-unknown-linux-gcc 會自動搜索到,能夠在終端上輸入。
7.創建hello.c文件並編譯
在虛擬機中進入文件夾 /root/bc,在此目錄下編寫 hello.c文件。利用命令
armv4l-unknown-linux-gcc對 hello.c進行編譯,生成 hello可執行文件。
8.下載調試
在超級終端中將共享文件夾掛載好,創建開發板與虛擬機之間的通信。輸入
命令「mount -t nfs -o nolock 192.168.0.234:/home/bc /host」
在超級終端中運行編譯經過的hello可執行文件。
實驗體會:
(1)爲何須要交叉編譯?如何安裝交叉編譯環境?
交叉編譯就是在A機器上利用編譯工具把代碼生成能夠再B機器上運行。交叉編譯就是這個功能,由於若是你在電腦上生成的代碼只是適合於電腦運行的代碼,若是你放在一個開發板上,是不能運行的,由於開發板的硬件與電腦的硬件很不一樣,因此須要交叉編譯工具來編譯,使代碼能在開發板上運行。安裝方法在以上實驗步驟5中已經說明
(2)實驗箱、虛擬機Redhat、WinXP之間的IP須要知足什麼關係?如何配置?爲何?
xp 系統與 redhat 虛擬機的 ip均須要與 arm 機的 ip 在同一網段。配置方法在以上實驗步驟4中已經說明
(3)實驗中mount命令中每一個選項什麼意思?
用mount命令進行掛載
通常形式 mount -t 文件類型 文件名 加載的目錄
-t vfstype:須要mount的類型,如nfs等
-o options:主要用來描述設備或檔案的掛接方式。
實驗過程當中遇到的問題以及解決方案。
(1)超級終端問題及解決方案
問題:鏈接超級終端和arm機時提示失敗,沒法顯現信息
解決方案:將串口線接到串口0
(2)Vim問題及解決方案
無
(3)Linux命令問題及解決方案
問題:配置armv4l失敗,環境變量設置失敗
解決方案:指令輸入錯誤,同時注意不要遺漏空格
(4)交叉編譯問題及解決方案
問題:沒法讀取虛擬機的共享文件夾
解決方案:沒有將虛擬機ip 地址和 pc的 ip地址設置到同一網段
經過實驗步驟4完成設置