20145223《信息安全系统设计》 实验二 固件开发
20145223杨梦云《信息安全系统设计》实验报告
实验步骤
一、配置开发环境(同实验一)
1、连接 arm 开发板
将 arm 开发板电源线接好,保持开发板开关处于闭合状态。再分别将串口线、
并口线和网线与 pc 机连接好。
2、建立超级终端
运行 windows XP 系统下“开始”、“所有程序”、“附件”、“通讯”、“超级终端”,新建一个通信终端,取名为 arm。在属性对话框中,将波特率设为 115200,数据位设为 8,无奇偶校验,停止位为 1,无数据流控制。另存为在桌面。
3、3、启动实验平台
打开超级终端,打开 arm 机电源开关。等待一分钟,arm 机的信息会显示在超级终端的窗口中。 输入 ifconfig 命令,记录下 arm 机的 ip。
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,输入用户名 bc,密码 123456 然后确定,就可以访问虚拟机的文件了。然后把所需文件解压缩拷贝到共享文件夹 bc 中。进入虚拟机,在命令行中输入./install.sh,安装脚本程序将会自动建立
目录,配置编译环境。
6、配置环境变量
在虚拟机中使用 vi 修改/root/.bash_profile 文件中的 PATH 变量为PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/ (因为该文件为隐藏系统文件,所以使用 ls 命令不可见)
7、存盘后执行: source /root/.bash_profile,则以后 armv4l-unknown-linux-gcc 会自动搜索到,可以在终端上输入。注意空格!
8、下载调试
在超级终端中将共享文件夹挂载好,建立开发板与虚拟机之间的通讯。输入命令“mount -t nfs -o nolock 192.168.0.234:/home/bc /host”(注意 bc后面要有空格!)
二、理解代码
将实验代码解压并拷贝到共享文件夹bc文件夹,用vi编辑器打开,阅读并了解代码含义
三、编译应用程序
对于多线程的代码,编译时需要添加-lpthread的库armv4l-unknown-linux-gcc pthread.c -o pthread -lpthread
四、运行程序
回到超级终端窗口,运行pthread和term,观察运行结果的正确性。
五、遇到的问题及解决方法
问题:如果在执行./term 时出现错误:/dev/ttyS0: No such file or directory No such file or directory
解决:在 Linux 下串口文件位于/dev 下,一般在老版本的内核中串口一为/dev/ttyS0 ,串口二为 /dev/ttyS1, 在我们的开发板中串口设备位于/dev/tts/下,因为开发板中没有ttyS0这个设备,所以我们要建立一个连接。
1、首先在超级终端中进入/dev文件夹中。
[/mnt/yaffs] cd /dev
2、输入命令“ln –sf /dev/tts/0 /dev/ttyS0” 注意空格与字母l、数字0。建立一个与端口tts和端口ttyS0的连接,输入指令如下:
[/dev] ln –sf /dev/tts/0 ttyS0//(注意首字母是l, 不是数字1)