2019-2020-1 20175330 20175324 20175311 实验一 开发环境的熟悉
2018-2019-1 20175311 20175324 20175330 实验一 开发环境的熟悉
目录
一、实验目的
二、实验步骤
三、实验过程中遇到的问题及解决
四、实验感想
一、实验目的
熟悉Linux开发环境并学会Linux开发环境的配置和使用,熟悉arm箱的使用,熟悉以下知识点:- 交叉编译
- 宿主机与目标机
- NFS
- 超级终端
- file命令
二、实验步骤
任务一 交叉编译环境
1. 安装老师提供的software目录中的“中的“VMware-workstation-full-10.0.1-1379776.exe”
2. 解压老师提供的software目录中的“中的“Ubuntu1204.rar”
3. 用VMWare打开Ubuntu,用户名:linux,口令:1
4. 建立实验目录:`mkdir linux_组员1学号_组员2学号_组员3学号`
5. 在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名
6. 参考bocsd目录中的脚本的脚本armc.sh,分别用,分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:`gcc hello.c -o linuxhello`;用arm-none-linux-gnuenbi-gcc编译的命名为armhello: /usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello
7. 分别运行linuxhello,armhello
2. 解压老师提供的software目录中的“中的“Ubuntu1204.rar”
3. 用VMWare打开Ubuntu,用户名:linux,口令:1
4. 建立实验目录:`mkdir linux_组员1学号_组员2学号_组员3学号`
5. 在实验目录中编写“hello word”程序,另外补充几行打印所有组员的学号姓名
6. 参考bocsd目录中的脚本的脚本armc.sh,分别用,分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c,用gcc编译的可执行文件命名linuxhello:`gcc hello.c -o linuxhello`;用arm-none-linux-gnuenbi-gcc编译的命名为armhello: /usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello
7. 分别运行linuxhello,armhello
实验步骤:
- 用VMWare打开Ubuntu,用户名:linux,口令:1。
- 建立实验目录`mkdirlinux_20175311_20175324_20175330`
- 在实验目录中编写“helloworld”程序,另外补充几行打印所有组员的学号姓名
- 分别用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译hello.c 用gcc编译的可执行文件命名为“linuxhello”:`gcc hello.c -o linuxhello`用arm-none-linux-gnuenbi-gcc编译的命名为'“armhello”: 首先使用`chmod +x +x arm.sh`命令赋予权限`/usr/local/toolchain/toolchain4.3.2/bin/arm-none-linux-gnuenbi-gcc hello.c -o armhello`
- 分别运行linuxhello,armhello
运行截图:
实验分析:
经过运行发现,在Linux中只能运行使用gcc编译的linuxhello,而无法运行使用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译的armhello。这是因为,使用gcc编译的linuxhello适用于x86-64机器,而使用gcc和交叉编译器arm-none-linux-gnuenbi-gcc编译的armhello只能在arm实验箱上运行任务二 目标机宿主机连通
1. 到实验室把“USB转串口线”的USB口插入自己的电脑,把串口连到实验箱的COM0
2. 参考视频配置超级终端,用超级终端作为实验箱的显示终端
3. 用`ifconfig`在超级终端中查看实验箱ip(目标机),在Ubuntu中(宿主机)中用`ifconfig`在命令行查看ip
4. 用网线连接电脑和ARM实验箱的网口NET1
5. 用ping命令保证目标机和宿主机能互相ping通
2. 参考视频配置超级终端,用超级终端作为实验箱的显示终端
3. 用`ifconfig`在超级终端中查看实验箱ip(目标机),在Ubuntu中(宿主机)中用`ifconfig`在命令行查看ip
4. 用网线连接电脑和ARM实验箱的网口NET1
5. 用ping命令保证目标机和宿主机能互相ping通
实验步骤:
- 连接好arm实验箱的电源线,并将串口线接入实验箱COM1、网线接入NET1
- 进入bocsd目录,运行,运行armc.sh 交叉编 交叉编译出hello程序
- 在win7 虚拟机中查看ip:
- 通过设备管理器查看USB转串口的端口号为COM3
- 打开超级终端,选择正确的串口号COM3,并在属性中,将波特率设置为115200。
- 打开arm机电源开关,等待arm机的信息在超级终端的窗口显示,登陆用户为root
- 用ifconfig在超级终端中查看实验箱ip(目标机),在Ubuntu中(宿主机)中用ifconfig在命令行查看IP。记录下arm机的ip为:p为:192.168.0.232,Ubu,Ubuntu的ip为:p为:192.168.0.230
- 使用ping命令测试目标机与宿主机是否能连通
运行截图:
三、实验过程中遇到的问题及解决
问题一:在实验过程中,我们打开windows7虚拟机发现没有armtest——超级终端。
原因:在老师的帮助指导下,我们明白了这是因为我们昨天提前在没有连接实验箱的前提下完成了实验一导致window7虚拟机没有建立连接,而事实上所有的实验除了一些安装过程可以提前在自己的电脑中完成之外,其他的过程都需要我们在实验箱连接的前提下进行的。
解决方法:我们将之前创建的文件都相应的删除,并且在连接试验箱后重新完成了实验一工作,这让我们的操作变得更加的熟练了。
问题二:在实验过程中,我们发现连接实验箱时window7虚拟机没有com3接口。
原因:经过检查我们发现,由于实验箱的接口是最开始就连接到了虚拟机上,可能存在一些接触或是系统提示已经跳出来却没有看到的情况 。于是我们重新连接了虚拟机与试验箱上,果然屏幕界面就跳出是否将实验箱连接至虚拟机的提示,在提示中选择即可。
解决方法:将连接线重新与电脑中的虚拟机进行连接,再次插入后点击提示框中的“虚拟机--window7”项即可。
问题三:在实验的过程中,我们发现命令行输入ifconfig无法查询到window7本机IP地址。
原因:经过求助相关的网络资料,我们了解到可能是电脑未启动虚拟机网络功能从而造成虚拟机没有本机IP地址。
解决方法:我们在电脑设置本机设置中找到并启动虚拟机本地网络功能,在重新进行IP地址的查询,就能找到相应的地址。
四、实验感想
通过这次信息安全系统的第一次实验,我们对虚拟机和信息安全系统都有了更深刻的认识。在三人合作的过程中,我们遇到了不少困难,一一克服这些困难后,我们获得了极大的成就感。在实验过程中,我们曾多次请教老师,娄老师不厌其烦地为我们解答问题,指导着我们实验正确进行。