实验贡献:韩旭飞 刘一阳 李昊
实验报告贡献:李昊 刘一阳 韩旭飞

PART1

一、实验原理

交叉编译,简单地说,就是在一个平台上生成另一个平台上的可执行代码。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。在Linux PC上,利用arm-linux-gcc编译器,可编译出针对Linux ARM平台的可执行代码。

二、实验内容与步骤

1.连接arm开发板

首先连接电源线,使开发板的开关处于闭合状态,再分别将串口线、并口线、网线和USB线与PC机连好。连接串口线时接左端的串口。

2.建立超级终端

新建一个通信终端,取名为arm。在属性对话框中,将波特率设为 115200,数据位设为 8,无奇偶校验,停止位为 1,无数据流控制

3.启动实验平台

先打开超级终端,再打开arm机电源开关。等arm机的信息显示在超级终端的窗口中。输入 ifconfig 命令,记录下arm机的ip

4.修改xp系统与redhat虚拟机的ip均与arm机的ip在同一网段。

xp系统的ip地址在本地连接的属性选项卡,Internet协议 (TCP/IP)选项中;Rad Hat的IP地址在"系统设置-网络-编辑-静态的IP地址"中设置,设置完成后重启虚拟机,IP才会生效。

5.安装arm编译器

通过PC机访问共享文件夹,将编译器拷贝到共享文件夹中,从而虚拟机也可以访问。安装解压后的文件。

6.配置环境变量

在虚拟机中使用 vi 修改/root/.bash_profile 文件中的 PATH 变量为PATH=PATH:HOME/bin:/opt/host/armv4l/bin/,存盘后执行: source /root/.bash_profile,则以后 armv4l-unknown-linux-gcc 会自动搜索到,可以在终端上输入。

7.建立.c文件并编译

在虚拟机中进入文件夹/root/bc,在此目录下编写 hello.c 文件。利用命令armv4l-unknown-linux-gcc 对 hello.c 进行编译,生成 hello 可执行文件。

8.下载调试

在超级终端中将共享文件夹挂载好,建立开发板与虚拟机之间的通讯。输入命令“ mount -t nfs -o nolock 192.168.0.234:/home/bc /host” (注意 bc后面要有空格,目的是将bc文件挂载到/host目录下,如果没有空格则表示一个子目录。)

PART2

实验目的与要求

  • 了解多线程程序设计的基本原理,学习 pthread 库函数的使用。
  • 了解在 linux 环境下串行程序设计的基本方法。
  • 掌握终端的主要属性及设置方法,熟悉终端I /O 函数的使用。学习使用多线程来完成串口的收发处理。
  • 熟悉linux开发环境,学会基于S3C2410的linux开发环境的配置和使用。使用linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程
    实验过程
    开发环境的配置
    1、连接arm开发板
    将arm开发板电源线接好,保持开发板开关处于闭合状态。再分别将串口线、并口线和网线与pc机连接好。
    2、建立超级终端
    运行windows XP系统下“开始”、“所有程序”、“附件”、“通讯”、“超级终端”。
    新建一个通信终端,取名为arm。在属性对话框中,将波特率设为115200,数据位设为8,无奇偶校验,停止位为1,无数据流控制。
    3、启动实验平台
    打开超级终端,打开arm机电源开关。等待一分钟,arm机的信息会显示在超级终端的窗口中。
     继续等待,输入ifconfig命令,记录下arm机的ip
    4、修改xp系统与redhat虚拟机的ip,使得它们均与arm机的ip在同一网段。修改完IP,重启一下虚拟机,IP才能启作用。重启后在命令行中使用ifconfig确认修改正确
    5、安装arm编译器。在pc机中“开始”、“运行”,输入虚拟机的ip,输入用户名bc,密码123456然后确定 就可以访问虚拟机的文件了。然后把所需文件解压缩拷贝到共享文件夹bc中。
    进入虚拟机,在命令行中输入./install.sh,安装脚本程序将会自动建立目录,配置编译环境。
     6、配置环境变量在虚拟机中使用vi修改/root/.bash_profile文件中的PATH变量为PATH=PATH:HOME/bin:/opt/host/armv4l/bin/ (因为该文件为隐藏系统文件,所以使用ls命令不可见),存盘后执行:source/root/.bash_profile,则以后armv4l-unknown-linux-gcc 会自动搜索到,可以在终端上输入。
    验证实验代码
    1.将实验代码拷贝到共享文件夹中。 
    2、在虚拟机中编译代码。对于多线程相关的代码,编译时需要加-lpthread的库
     下载调试在超级终端中运行可执行文件pthread!
    运行可执行文件term。

转载于:https://www.cnblogs.com/zym0728/p/6035955.html

201452202014520920145309信息安全系统设计基础实验报告(1)相关推荐

  1. 20135201李辰希20135219洪韶武——信息安全系统设计基础实验报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                                           班级:1352班 ...

  2. 20135201李辰希20135219洪韶武——信息安全系统设计基础实验五报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础          班级:   1352 姓名:李辰希,洪韶武 学号:20135201,20135219 ...

  3. 信息安全系统设计基础实验四:外设驱动程序设计 20145222黄亚奇 20145213祁玮

    北京电子科技学院(BESTI) 实 验 报 告 封 面 课程:信息安全系统设计基础 班级:1452 姓名: 黄亚奇 祁玮 学号: 20145222 20145213 成绩: 指导教师:娄嘉鹏 实验日期 ...

  4. 信息安全系统设计基础实验三

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础              班级:1352 姓名:马悦   学号:20135235 成绩:        ...

  5. 信息安全系统设计基础实验一—20135222胡御风20135215黄伟业

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                         班级: 1352 姓名:胡御风      黄伟业    ...

  6. 信息安全系统设计基础实验三—20135222胡御风20135215黄伟业

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                         班级: 1352 姓名:胡御风      黄伟业    ...

  7. 信息安全系统设计基础实验五—20135222胡御风20135215黄伟业

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计基础                         班级: 1352 姓名:胡御风      黄伟业    ...

  8. 信息安全系统设计基础 实验四:外社驱动程序设计 20135327郭皓 20135329 李海空...

    北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全设计基础                         班级:1353 姓名:郭皓 李海空 学号:20135327 ...

  9. 信息安全系统设计基础实验回顾

    实验一 实验内容 1.连接arm开发板 将arm开发板电源线接好,保持开发板开关处于闭合状态.再分别将串口线.并口线和网线与pc机连接好. 2.建立超级终端 运行windows XP系统下" ...

最新文章

  1. Extjs Ext.TreePanel
  2. 北师大毕彦超:AI和人类感知的相同点和不同点
  3. Java 洛谷 P1482 Cantor表(升级版)
  4. boost::checked_delete的测试程序
  5. 一朝清明不若鸿蒙什么意思,清明节得名并非源于“气清景明”
  6. 实例53:python
  7. Docker-基本概念(镜像和容器)
  8. 数字的可视化:python画图之散点图sactter函数详解
  9. 从分布式环境的特点、问题到CAP、BASE理论详解
  10. pandas基础实例
  11. 拓端tecdat|机器学习:在SAS中运行随机森林
  12. eclipse如何设置自己喜欢的主题
  13. 阿里云快速搭建网站教程
  14. Python爬虫实战 | (10) 爬取猫眼电影《海王》影评并存入MySql数据库
  15. 联想重装系统去掉保护_关于联想品牌电脑无法重装系统的几点注意
  16. http://cdn.ac.nbutoj.com/Problem/view.xhtml?id=1184Elaine's Queue
  17. java中hash值什么意思_到底什么是hash?它起什么作用?
  18. is automatically signed, but provisioning profile has been manually specified. Set the provisioning
  19. 服务器排性能行榜,服务器CPU性能排行榜天梯图(双路/三路/四路)
  20. open judge 1.7.18

热门文章

  1. 每天进步一点点《ML - 基于层次的聚类》
  2. mysql服务器守护程序_MySQL主从服务器的守护进程监视
  3. leetcode - 101. 对称二叉树
  4. JS中的基本数据类型与引用数据类型
  5. Markdown Pad2--公式编辑功能搭建
  6. 计算机暑期实践相关内容,计算机暑假社会实践报告5000范文
  7. admin.php wordpress,wordpress 中使用自带 admin-ajax.php
  8. 在Ubuntu 14 04安装和使用Docker
  9. P2872 [USACO07DEC]Building Roads S(最小生成树)
  10. Samsung x210 Android makefile 的一些配置实例问题