課程:信息安全系統設計基礎
班級:1453
姓名:劉宇飛、趙1、何志威
學號:201453十、2014531八、20145322
指導教師:婁嘉鵬
實驗日期:2016.11.10
實驗時間:10:00—12:00
儀器組次:
必修/選修:必修
實驗序號:2
實驗名稱:固件設計linux
瞭解多線程程序設計的基本原理,學習 pthread 庫函數的使用。
瞭解在 linux 環境下串行程序設計的基本方法。
掌握終端的主要屬性及設置方法,熟悉終端I /O 函數的使用。學習使用多線程來完成串口的收發處理。
熟悉linux開發環境,學會基於S3C2410的linux開發環境的配置和使用。使用linux的armv4l-unknown-linux-gcc編譯,使用基於NFS方式的下載調試,瞭解嵌入式開發的基本過程。windows
過程與實驗一相同,大體過程爲:
一、鏈接arm開發板
將arm開發板電源線接好,保持開發板開關處於閉合狀態。再分別將串口線、並口線和網線與pc機鏈接好。
二、創建超級終端
運行windows XP系統下「開始」、「全部程序」、「附件」、「通信」、「超級終端」。
新建一個通訊終端,取名爲arm。在屬性對話框中,將波特率設爲115200,數據位設爲8,無奇偶校驗,中止位爲1,無數據流控制。另存爲在桌面。
安全
三、啓動實驗平臺
打開超級終端,打開arm機電源開關。等待一分鐘,arm機的信息會顯示在超級終端的窗口中。
繼續等待,直至出現所示界面。輸入ifconfig命令,記錄下arm機的ip爲:192.168.0.121
bash
四、修改xp系統與redhat虛擬機的ip,使得它們均與arm機的ip在同一網段。在pc機中的xp系統中,設置步驟如圖7-9,redhat虛擬機中設置步驟如圖10-14。本次實驗中將pc機的ip設爲192.168.0.55,redhat虛擬機ip爲192.168.0.234。
修改完IP,重啓一下虛擬機,IP才能啓做用。重啓後在命令行中使用ifconfig確認修改正確
五、安裝arm編譯器。
在pc機中「開始」、「運行」,輸入虛擬機的ip。\192.168.0.234,輸入用戶名bc,密碼123456而後肯定
就能夠訪問虛擬機的文件了。而後把所需文件解壓縮拷貝到共享文件夾bc中。
進入虛擬機,在命令行中輸入./install.sh,安裝腳本程序將會自動創建目錄,配置編譯環境。
六、配置環境變量
在虛擬機中使用vi修改/root/.bash_profile文件中的PATH變量爲PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ (由於該文件爲隱藏系統文件,因此使用ls命令不可見),存盤後執行:source/root/.bash_profile,則之後armv4l-unknown-linux-gcc 會自動搜索到,能夠在終端上輸入。
保存退出後,重啓虛擬機。多線程
1.將實驗代碼拷貝到共享文件夾中。
二、在虛擬機中編譯代碼。
對於多線程相關的代碼,編譯時須要加-lpthread的庫
三、下載調試
在超級終端中運行可執行文件pthread,可得實驗結果如圖所示。函數
運行可執行文件term。
注意:若是在執行./term 時出現下面的錯誤
/dev/ttyS0: No such file or directory
能夠經過方法創建一個鏈接來解決。
在 Linux 下串口文件位於/dev 下,通常在老版本的內核中串口一爲/dev/ttyS0 ,串口二爲 /dev/ttyS1, 在咱們的開發板中串口設備位於/dev/tts/下,由於開發板中沒有ttyS0這個設備,因此咱們要創建一個鏈接。
首先在超級終端中進入/dev文件夾中。
輸入命令「ln –sf /dev/tts/0 /dev/ttyS0」 注意空格與字母l、數字0。學習
出現了/dev/ttyS0: No such file or directory錯誤,按照指導書上的方法成功解決。命令行
此次的實驗很簡單,是和實驗一一塊兒作的,主要麻煩的地方仍是在arm試驗箱配置,剩下和實驗一大同小異。代碼是關於多線程的,讀懂就能夠,之後還要深刻學習。線程