• 信息安全系统设计基础实验一


    北京电子科技学院(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

    1

    实验内容、步骤与体会:

     一、实验内容

           本次实验建立在掌握嵌入式开发平台使用方法和配置方法的基础上,要求使用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下的编程有了更深的认识,为今后更深入的实验也打下了良好的基础!

  • 相关阅读:
    Python subprocess方法
    Python hashlib、hmac加密模块
    mysql binlog详解
    Nginx 关键字详解
    账号笔记
    Python configparser模块
    Python yaml处理
    Linux && 与 ||
    spring boot 学习(十一)使用@Async实现异步调用
    spring boot 学习(十)SpringBoot配置发送Email
  • 原文地址:https://www.cnblogs.com/20135235my/p/4984665.html
Copyright © 2020-2023  润新知