天天看點

資訊安全系統設計基礎實驗一

北京電子科技學院(BESTI)

實     驗    報     告

             課程: 資訊安全系統設計基礎                       班級: 1352班      

             姓名: 馬悅            學号: 20135235       成績:          

             指導教師: 婁嘉鵬                      實驗日期:2015.11.10

             實驗密級:        預習程度:        實驗時間:15:30—18:00

             儀器組次:        必修/選修:必修            實驗序号:一

             實驗名稱:   開發環境的熟悉                                                        

             實驗目的與要求:

             1、熟悉linux開發環境                                                                     

             2、使用linux的armv4l-unknown-linux-gcc編譯                                                                   

             3、編譯,使用基于NFS方式的下載下傳調試                                                       

             4、了解嵌入式開發的基本過程                                                           

             實驗儀器:

名稱 型号 數量
計算機 1
嵌入式開發平台 UP-NETARM2410-CL

實驗内容、步驟與體會:

 一、實驗内容

       本次實驗建立在掌握嵌入式開發平台使用方法和配置方法的基礎上,要求使用windows xp,linux(red hat),arm三個系統;在linux系統中安裝arm系統,然後利用arm平台完成linux系統中C語言源檔案的編譯,并在windows系統中執行生成的可執行檔案。

二、實驗步驟

  1. 連接配接arm開發闆
    • 領取試驗箱之後,首先打開實驗箱檢查 電源線、網線、并口線、插口線 無缺失;然後卸除主機後的保護闆,使得主機背後的插口友善與試驗箱連接配接;
    • 確定試驗箱的開關處于off檔位。将實驗箱的網線、并口線分别與主機上的對應位置連接配接好(将主機上之前的網線拔出)。将電源線插在插線闆上。将插口線一端插在arm闆的端口0處,另一端插在主機對應位置。
  2. 建立超級終端
    • 運作windows XP系統下“開始”、“所有程式”、“附件”、“通訊”、“超級終端”。打開之後,程式會自動建立一個通信終端,在彈出的對話框中,将該終端直接命名為 arm(圖示選擇預設即可),其他設定無強制性要求,并點選“确定”。在之後彈出的屬性對話框中,将波特率設為 115200,資料位設為 8,無奇偶校驗,停止位為 1,資料流控制設定為“無”。
    • 如圖所示:
    • 資訊安全系統設計基礎實驗一
    • 資訊安全系統設計基礎實驗一
  3. 啟動實驗平台
    資訊安全系統設計基礎實驗一
    • 打開超級終端,打開arm機電源開關。等待一分鐘,arm機的資訊會顯示在超級終端的視窗中。
    • 繼續等待,直至出現如圖6所示界面。輸入ifconfig指令,記錄下arm機的ip為:192.168.0.121。
    如圖
    資訊安全系統設計基礎實驗一
  4. 修改windows xp系統的ip使得它與arm機的ip在同一網段
    • 打開windows xp系統中的“控制台”——“網絡連接配接”——“本地連接配接”,輕按兩下檢視本地連接配接的狀态;點選“屬性”鍵,在“正常”頁籤中輕按兩下出現的“Internet協定(TCP/IP)”,檢視并修改本機ip(實驗中設定的ip為192.168.0.55);
    • 打開vmvare虛拟機平台,在“導入已有的虛拟機”選項中導入C槽下的red hat.vmi檔案,進入linux環境。然後點選“從這裡開始”——“系統設定”——“網絡”(輕按兩下),在彈出的“網絡配置”對話框中依次點選“編輯”——“裝置”,進入“以太網服務”頁籤,在“手工設定ip”下方修改red hat 的ip(實驗中設定的ip為192.168.0.234); 
    • 修改完IP,重新開機一下虛拟機,IP才能啟作用。重新開機後在指令行中使用ifconfig确認 如圖:
    • 資訊安全系統設計基礎實驗一
  5. 在red hat中安裝arm編譯器
    • 回到xp系統,點選“開始”——“運作”,輸入虛拟機的 ip:\192.168.0.234,會彈出要求輸入使用者名以及password的對話框,輸入使用者名 bc,密碼 123456 然後确定即可進入與虛拟機共享的檔案夾(bc)處(Samba Server對話框);
    • 把需要安裝的、包含在armv4l-tools壓縮包中的軟體安裝包解壓縮到bc檔案夾中(或者解壓縮之後拷貝至此處),這時linux虛拟機就可以對該軟體安裝包進行操作了;
    • 進入虛拟機,依次輸入“cd /home/bc”(回車)和“cd armv4l-tools”(回車),就可以進入到含有install.sh的檔案夾中。(這時可以輸入ls指令檢視現有檔案目錄,确定該路徑下含有install.h檔案)然後在指令行中輸入./install.sh,安裝腳本程式将會自動建立目錄,配置編譯環境。如圖:
    • 資訊安全系統設計基礎實驗一
    • 資訊安全系統設計基礎實驗一

 6.、配置環境變量

在虛拟機中使用“vi /root/.bashprofile”進入bashprofile檔案(該檔案為隐藏的系統檔案,可以用ls -A檢視);

将其中的 PATH 變量修改為PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ (也就是補充一個路徑); 
  儲存檔案,然後後執行: source /root/.bash_profile,則以後 armv4l-unknown-linux-gcc 會自動搜尋到,可以在終端上輸入。               
資訊安全系統設計基礎實驗一

7、編寫并編譯hello.c檔案

在虛拟機中進入檔案夾/root/bc,在此目錄下編寫 hello.c 檔案(vi hello.c即可建立并編輯hello.c檔案,編輯結束之後輸入:wq儲存并退出);

   利用指令armv4l-unknown-linux-gcc hello.c -o hello對 hello.c 進行編譯,生成 hello 可執行檔案;

   可以利用ls指令檢視在bc檔案夾中是否出現了hello.c及hello可執行檔案。

資訊安全系統設計基礎實驗一

 8、下載下傳調試

      在超級終端中将共享檔案夾挂載好,建立開發闆與虛拟機之間的通訊。輸入指令“mount -t nfs -o nolock 192.168.0.234:/home/bc /host”(注意bc後面要有空格!)

     在超級終端中運作編譯通過的hello可執行檔案。

資訊安全系統設計基礎實驗一

 三、實驗中的疑問與解決方案

1、實驗過程的了解,實驗指導書中知識點的了解。

(1)為什麼需要交叉編譯?如何安裝交叉編譯環境?

答:<1>由于一般通用計算機擁有非常豐富的的系統資源、使用友善的內建開發環境和調試工具等,而嵌入式系統的系統資源非常緊缺,無法在其上運作相關的編譯工具,是以,嵌入式系統的開發需要借助主控端來編譯出目标機的可執行代碼。

       <2>先将安裝包解壓後放到共享檔案夾中,在虛拟機中安裝交叉編譯環境并修改環境變量,在超級終端中将共享檔案挂載好即可運作可執行檔案。 

(2)實驗箱、虛拟機Redhat、WinXP之間的IP需要滿足什麼關系?如何配置?為什麼?

  答:實驗箱、虛拟機、WinXP的IP必須處于同一網段。用ifconfig 指令檢視實驗箱的IP為:192.168.0.121,将pc機的ip設為192.168.0.55,redhat虛拟機ip設為192.168.0.234。這樣它們之間就可以互相通信了。

(3)實驗中mount指令中每個選項什麼意思?

答:mount -t nfs -o nolock 192.168.0.234:/root/bc /host

“-t nfs”指定檔案系統類型為檔案網絡共享類型,“-o nolock ”關閉檔案鎖,“192.168.0.234:”為要挂接的裝置,“/root/bc /host”表示挂載裝置中/root/bc目錄下的檔案到本機host檔案夾中。

2、實驗過程中遇到的問題以及解決方案。

(1)編譯器安裝問題及解決方案

  答:安裝arm編譯器時,在pc機中無法通路虛拟機中的檔案。考慮到實驗箱,虛拟機和pc機可能并沒有相通,于是檢視pc機ip位址,發現設定錯誤,pc機的ip位址與虛拟機并沒有處于同一網段,修改後問題得以解決,通路成功。

(2)Vim問題及解決方案

  答:hello.c檔案編輯好後,檔案編譯無法通過,于是vi進入檔案,發現少了一個分号,加上分号後問題得以順利解決。編輯hello.c檔案時,無法退出,按Esc退出編輯模式,再:wq順利退出。

(3)交叉編譯問題及解決方案

  答:在超級終端運作hello可執行檔案時,無法顯示結果。檢查後發現并沒有進入到hello檔案所在的目錄下,hello檔案是被挂載到host檔案夾下的,于是先輸入指令cd /host,再輸入./hello,檔案運作成功。

四、實驗體會

       本次實驗是資訊安全系統設計基礎的第一次實驗,由于對實驗裝置不太了解以及對linux系統接觸不多,實驗前做了較多的準備,認真預習了實驗步驟,是以實驗進行地還是相對比較順利的,當然也遇到了一些問題,但是經過小組的分析及讨論,最終問題都得以順利解決。第一次實驗相對來說比較簡單,更多的是對裝置的熟悉以及程式設計環境的搭建,通過本次實驗我們對Linux下的程式設計有了更深的認識,為今後更深入的實驗也打下了良好的基礎!