信息安全系统设计基础_exp2
| 北京电子科技学院(BESTI) | ||
| 实 验 报 告 | ||
| 课程:信息安全系统设计基础 | 班级:1353 | 姓名:吴子怡、郑伟 | 
| 学号:20135313、20135322 | 指导教师: 娄嘉鹏 | 实验日期:2015年11月10日 | 
| 必修/选修:必修 | 实验序号:exp2 | 实验时间:15:30-18:00 | 
| 实验名称: exp2_固件设计 | ||
| 实验目的与要求 | 1、初步掌握硬件开发平台的搭建和硬件开发的流程 | |
| 2、能够编译、运行简单程序;掌握程序调试与测试方法 | ||
| 3、掌握程序的烧写方法 | ||
| 4、能够实现Bootloader | ||
| 5、实现密码学中常见算法的固化 | ||
| 实验器材 | 1、Lenovo计算机一台 | |
| 2、ARM实验箱一个 | ||
搭档博客链接:20135313吴子怡http://www.cnblogs.com/paperfish/
配置实验环境:
1. 连接arm开发板
| 1 | 将arm开发板电源线接好,保持开发板开关处于闭合状态。再分别将串口线、并口线和网线与pc机连接好。 | 
2. 建立超级终端
| 1 2 3 | 运行windows XP系统下“开始”、“所有程序”、“附件”、“通讯”、“超级终端”。新建一个通信终端,取名为arm。在属性对话框中,将波特率设为115200,数据位设为8,无奇偶校验,停止位为1,无数据流控制。另存为在桌面。 | 
3. 启动实验平台
| 1 2 | 打开超级终端,打开arm机电源开关。等待一分钟后arm机的信息会显示在超级终端的窗口中。继续等待,直至出现如下图所示界面。输入ifconfig命令,记录下arm机的ip为:192.168.0.121。 | 

4. 修改xp系统与redhat虚拟机的ip
| 1 | xp系统与redhat虚拟机的ip均与arm机的ip在同一网段。在pc机中的xp系统中,设置步骤如下: | 



| 1 | redhat虚拟机中设置步骤如图。本次实验中将pc机的ip设为192.168.0.55,redhat虚拟机ip为192.168.0.234。 | 





5. 安装arm编译器
| 1 | 在pc机中“开始”、“运行”,输入虚拟机的ip。\\192.168.0.234,输入用户名bc,密码123456。然后就可以访问虚拟机的文件。再把所需文件解压缩拷贝到共享文件夹bc中。 | 

| 1 | 进入虚拟机,在命令行中输入./install.sh,安装脚本程序将会自动建立目录,配置编译环境。 | 

6. 配置环境变量
| 1 2 | 在虚拟机中使用 vi修改 /root/.bash_profile。文件中的 PATH变量为 PATH=$PATH:$HOME/bin:/opt/host/armv4l/bin/(因为该文件隐藏系统, 所以使用 ls命令不可见)存盘后执行: source/root/.bash_profile,则以后armv4l-unknow-linux-gcc会自动搜索到,可以在终端上输入。 | 
Exp2
一、实验步骤
1.环境搭建依然是Exp1中的步骤。
2.将实验代码拷贝到共享文件夹中,也是Exp1中的步骤。
3、在虚拟机中编译代码。对于多线程相关的代码,编译时需要加-lpthread 的库。

4、下载调试。在超级终端中运行可执行文件 pthread,可得实验结果如图所示。运行可执行文件 term。

二、遇到的问题及解决方法
1、03_tty代码使用编译工具armv4l编译时无法通过
<<实验中为了简便把03_tty文件夹放在了桌面上,代码存储路径包含了中文就无法通过编译,所以我们把代码文件夹放到了c盘根目录下,成功编译。
2、在超级终端运行term时出现错误
<<开发板中没有ttyS0设备导致出现问题,于是我们在超级终端进入了/dev文件夹后输入:ln –sf /dev/tts/0 ttyS0后建立了开发板和超级终端的连接,最终解决了问题。
三、exp2学习摘要
本次实验中,学到了命令中加入-lpthread的用法。在第十章的学习中,我们就遇到了头文件找不到、编译不出来这类的问题。20135317韩玉琪同学的解答中就提及:因为csapp.c中有关于线程的头文件,所以需要加上-lpthread。那么同理,在这次实验中,我们发现实验中需要用到-lpthread的原因也是因为代码与多线程相关。
四、心得体会
这一个实验步骤简单,主要是省去了环境搭建步骤。而且有了exp1的实验操作,一切就很简单啦。也没有遇到什么问题。就只要一步一步按部就班即可。很快就再实验课上找老师报告了实验进度。两个人都很有成就感。
信息安全系统设计基础_exp2的更多相关文章
- 20145213《信息安全系统设计基础》实验一 Linux开发环境的配置
		北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号:20145213 20145222 成绩: 指导教师:娄嘉鹏 实验日期:2016 ... 
- 20145215&20145307《信息安全系统设计基础》实验二 固件设计
		20145215&20145307<信息安全系统设计基础>实验二 固件设计 实验目的与要求 了解多线程程序设计的基本原理,学习 pthread 库函数的使用. 了解在 linux ... 
- 20145215&20145307《信息安全系统设计基础》实验五 网络通信
		小组成员:20145215卢肖明.20145307陈俊达 实验报告链接:信息安全系统设计基础--实验五实验报告 
- 20145223《信息安全系统设计基础》 GDB调试汇编堆栈过程分析
		20145223<信息安全系统设计基础> GDB调试汇编堆栈过程分析 分析的c语言源码 生成汇编代码--命令:gcc -g example.c -o example -m32 进入gdb调 ... 
- 20145216 20145330 《信息安全系统设计基础》 实验五 简单嵌入式WEB 服务器实验
		20145216 20145330 <信息安全系统设计基础> 实验五 简单嵌入式WEB 服务器实验 实验报告封面 实验步骤 1.阅读理解源码 进入/arm2410cl/exp/basic/ ... 
- 20145208《信息安全系统设计基础》实验五 简单嵌入式WEB 服务器实验
		20145208<信息安全系统设计基础>实验五 简单嵌入式WEB 服务器实验 20145208<信息安全系统设计基础>实验五 简单嵌入式WEB 服务器实验 
- 2016-2017-1 《信息安全系统设计基础》 学生博客及Git@OSC 链接
		2016-2017-1 <信息安全系统设计基础> 学生博客及Git@OSC 链接 博客 1452 20145201李子璇 20145202马 超 20145203盖泽双 20145204张 ... 
- 20145215&20145307信息安全系统设计基础实验报告
		20145215&20145307信息安全系统设计基础实验报告 PART1 一.实验原理 交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码.同一个体系结构可以运行不同的操作系统 ... 
- 20145315&20145307《信息安全系统设计基础》实验五
		20145315&20145307<信息安全系统设计基础>实验五 北京电子科技学院(BESTI) 实 验 报 告 课程:信息安全系统设计基础 班级:1453 1452 姓名:陈俊达 ... 
随机推荐
- 使用batch insert解决MySQL的insert吞吐量问题
			最近使用了一个非常简单易用的方法解决了业务上的一个insert吞吐量的问题,在此总结一下. 首先我们明确一下,insert吞吐量其实并不是指的IPS(insert per second),而是指的RP ... 
- Windows下查看端口占用
			最近在重新安装Mysql的时候,发现3306默认端口被占用了.类似的情况常常遇到,想查看到底是哪个程序把这个端口占用了. 下面是我google找到的方法,和大家分享. 1. 首先,使用netstat ... 
- PHP模拟发送POST请求之四、加强file_get_contents()发送POST请求
			使用了笨重fsockopen()方法后,我们开始在PHP函数库里寻找更简单的方式来进行POST请求,这时,我们发现了PHP的文件函数也具有与远程URL交互的功能. 最简单的是fopen()和fread ... 
- Android 系统架构
			Android 系统从下至上分为四层:Linux 内核.Android 核心库及Android 运行时环境(Android Runtime). 应用程序框架以及应用程序等. Linux 内核(Linu ... 
- ext3,ext4,xfs和btrfs文件系统性能对比
			应为原文:http://www.ilsistemista.net/index.php/linux-a-unix/6-linux-filesystems-benchmarked-ext3-vs-ext4 ... 
- Chrome浏览器与常用插件推荐
			Chrome浏览器与常用插件推荐 官方chrome下载:http://www.google.cn/chrome/ 提示:需要FQ才能安装. 1,AdBlock 谷歌屏蔽广告: https://chro ... 
- java 19 -15 File类批量更改文件名的方法
			/* 需求: * 把H:\三国演义下面的视频名称修改为 00?_介绍.avi 思路: A:封装目录 B:获取该目录下所有的文件的File数组 C:遍历该File数组,得到每一个File对象 D:拼接一 ... 
- java 8-7  接口
			1. 接口的特点: A:接口用关键字interface表示 interface 接口名 {} B:类实现接口用implements表示 class 类名 implements 接口名 {} C:接口不 ... 
- 怎么解决Android studio导入项目卡死
			在使用Android studio的时候常常遇到这样的问题,从github或是其他地方导入项目,Android studio呈现卡死的现象!当遇到这种情况时,可以看看是下面那种情况,在按照方法来解决! ... 
- work_queue 函数调用栈
			init_workqueues ---> create_worker --> kthread_create_on_node 
