第二次实验
北京电子科技学院(BESTI)
实验报告
课程:信息安全系统设计基础 班级:1353
姓名:刘世鹏 郝爽
学号:20135304 20135335
成绩: 指导教师:娄家鹏 实验日期:2015.11.10
实验密级: 预习程度: 实验时间:15:30~18:00
仪器组次: 必修/选修: 实验序号:2
实验名称:固件设计
实验目的与要求:
- 掌握程序的烧写方法
- 能够实现Bootloader
- 实现密码学中常见算法的固化。
内容:
- 读懂 pthread.c 的源代码,熟悉几个重要的PTHREAD库函数的使用。
- 掌握共享锁和信号量的使用方法。
- 进入/arm2410cl/exp/basic/02_pthread 目录,运行make 产生pthread程序,使用NFS方式连接开发主机进行运行实验。
实验仪器:
名 称 型 号 数 量
PC Lenovo 1
Laptop Sony 1
虚拟Linux环境 Redhat 9.0 1
ARM开发板 UP-NETARM2410-CL 1
实验过程:
- 配置环境,因实验一和实验二环境相同,所以详情请参见信息安全系统设计基础实验一实验报告(环境配置图片已经补充)
- 进入02_pthread目录,使用vi编辑器或其他编辑器阅读理解源代码。运行make 产生pthread 可执行文件。
- 进入/host/exp/basic/02_pthread目录,运行pthread,观察运行结果的正确性。实验结果如
遇到的问题:
make无法使用
解决的办法:
咨询了闫佳歆同学之后得到如下解决办法:一、是把他的环境变量修改一下,;其二是直接手动编译即可。
总结体会
本次实验总的来说并不难,在实验指导书上有较相信的步骤,跟着上面的步骤一步步的来基本都能做出来,唯一要提出来说的就是代码的理解,对代码的理解并不是特别透彻,基本都是依葫芦画瓢。还有就是做实验的时候一定要细心,该有空格的地方要空格,还有在那个系统下面L和1不太好区别,需要格外注意下,在做的过程中也没遇见啥大的问题,只有MAKE无法使用,但是也很快就通过咨询同学寻求帮助得到了解决。
参考资料
参考资料1:Linux多进程实例与代码优化
参考资料2:Linux下的多线程机制--生产者和消费者实例
参考资料3:缓冲区实现(一)——循环缓冲区(操作固定长度数据)
参考资料4:由环形队列消锁引发的思考