Linux实验二报告
北京电子科技学院(BESTI)
实 验 报 告
课程:信息安全系统设计基础 班级: 201352
姓名:池彬宁 贺邦
学号:20135212 20135208
成绩: 指导教师: 娄嘉鹏 实验日期:2015.11.17
实验密级: 预习程度: 实验时间:15:30~18:20
仪器组次: 必修/选修:必修 实验序号:2
实验名称:多线程应用程序设计 、串行端口程序设计
实验目的与要求:
1.了解多线程程序设计的基本原理。
2.学习pthread库函数的使用。
3.了解在Linux环境下串行程序设计的基本方法。
4.掌握终端的主要属性及设置方法,熟悉终端I/O函数的使用。
5.学习使用多线程来完成串口的收发处理。
实验仪器:
名称 |
型号 |
数量 |
ARM开发板 |
UP-NETARM2410-CL |
1 |
PC |
Windows Xp |
1 |
实验步骤
实验2.2
1. 路径配置,工具包导入等见实验一,这里不做详细说明。
2. 阅读源代码及编译应用程序
进入02_pthread所在目录,运行make产生pthread可执行文件
3. 到超级终端,进入/host目录运行pthread 结果如下。
实验2.3
- 路径配置,工具包导入等见实验一,这里不做详细说明。
- 进入03_tty所在目录,运行make产生term可执行文件
- 到超级终端窗口,进入/host目录,进入03_tty所在目录,运行term.
实验原理
1)多线程应用程序设计
实验代码实现的是生产者、消费者之间的关系,它们共用同一段缓存区,生产者可以向内写入数据,消费者也可以从中读出数据。一个首要的问题是如何判定是生产者执行写还是消费者执行读?
方法是,首先获取一个互斥锁,有这个锁在就能保证只能进行两种行为中的一种,而不能同时进行。然后针对写入或者读出能够顺利进行,要先判断缓存区的情况,如果缓存区满则不能写入,缓存区空则不能读出。
而在实验过程中,首先先在redhat虚拟机中编译运行,然后利用NFS将可执行文件映射到arm机上即可。Arm机的配置和映射和实验1相同,需要注意的就是路径不能一味按照指导书来,而是要按照自己实际的路径去写。
(2)串行端口程序设计
这个就是区分两个线程,发送线程和接收线程,然后在主函数里完成打开串口设备、终端属性设置等等。因为已经给了代码和指导书,理解起来就相对简单,这个实验就是帮助我们熟悉串行端口的一系列设置和代码实现,比较不好理解的就是之前没有遇见过的头文件和函数,针对解释详细查看即可。
实验感想
本次实验是第一次实验的延续与拓展,在实验的终端配置阶段的操作明显比在做实验一的时候熟练多了,有的甚至可以不需要查看指导书即可完成,并且实验一所遇到的问题也没有再犯,事实证明经验是积累的。
转载于:https://www.cnblogs.com/L1nke/p/4992758.html
Linux实验二报告相关推荐
- linux实验报告makefile,linux实验二交叉编译和Makefile实验报告.doc
linux实验二交叉编译和Makefile实验报告 实验二 交叉编译和Makefile 实验目的 了解和掌握交叉编译模式和方法: 了解和掌握makefile文件的编写 学会使用交叉编译工具和make工 ...
- linux服务器搭建实验4报告,LINUX实验四报告
<LINUX实验四报告>由会员分享,可在线阅读,更多相关<LINUX实验四报告(6页珍藏版)>请在人人文库网上搜索. 1.一. 实验目的掌握Linux系统中常用命令的作用和命令 ...
- python程序设计梁勇 百度网盘_20194220 2019-2020-2 《Python程序设计》实验二报告
20194220 2019-2020-2 <Python程序设计>实验二报告 课程:<Python程序设计> 班级: 1942 姓名: 梁勇 学号:20194220 实验教师: ...
- 计算机网络阅读报告,计算机网络实验二报告
计算机网络实验二报告 (5页) 本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦! 11.90 积分 计算机网络实验报告课程_ 计算机网络 _ 实验名称 TCP/ ...
- python实验二报告_20172304 2019-2020-2 《Python程序设计》实验二报告
20172304 2019-2020-2 <Python程序设计>实验二报告 课程:<Python程序设计> 班级: 1723 姓名: 段志轩 学号:20172304 实验教师 ...
- 20172310 《程序设计与数据结构》实验二报告
20172310 2017-2018-2 <程序设计与数据结构>实验二报告 课程:<程序设计与数据结构> 班级: 1723 姓名: 仇夏 学号:20172310 实验教师:王志 ...
- 北邮 计算机学院数据库实验报告二,北邮数据库_sql实验二报告.doc
<北邮数据库_sql实验二报告.doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<北邮数据库_sql实验二报告.doc>文档请在天天文库搜索. 1. ...
- 北京理工计算机实验二报告,北京理工大学计算机实验二报告表.doc
<北京理工大学计算机实验二报告表.doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<北京理工大学计算机实验二报告表.doc>文档请在天天文库搜索. ...
- 20223405 李硕 2022-2023-2 《Python程序设计》实验二报告
20223405 李硕 2022-2023-2 <Python程序设计>实验二报告 课程:<Python程序设计> 班级: 2234 姓名: 李硕 学号:20223405 实验 ...
最新文章
- Python时间转换函数:时间转化为时间戳、时间戳转化为时间、当前日期、当前时间、星期几、前面或者后面多少天、年、月、日等
- php lvs,LVS(四)LVS集群DR模式
- layerui的弹出层只显示两行英文字符不换行的解决方法
- python画树叶-用python画树叶
- magento本地安装成功后无法进入后台,密码和用户名均正确 .
- matlab的message函数,matlab用于数字调制,几个函数的使用问题
- 牛客网 二叉树的层序遍历
- boost::ratio_subtract相关的测试程序
- linux 单引号,双引号,反引号
- 大剑无锋之介绍几个常见的网络协议且位于哪一层?【面试推荐】
- Strom的trident单词计数代码
- 360文件粉碎机_中山三乡资料文件销毁粉碎销毁资料文件公司一览表
- 为什么要重构,何时进行重构
- UITableView方法详解
- Java周记(第五周)
- 中日海军实力分类比较
- [VBS]_[活动分组程序]
- [乡土民间故事_徐苟三传奇]第廿九回_蠢财主落水知上当
- 3.设计模式之分层思维:为什么要做代码分层架构?
- Delphi7 处理PNG图片