- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式实验报告1
嘉应学院电子信息工程实验中心
学生实验报告
实验课程名称:
实验项目名称: 多线程应用程序设计
实 验 时 间: 年 月 日
班 级:
座 号:
姓 名:
电子信息工程学院编制
2016年1月
实验目的:
? 了解多线程程序设计的基本原理。
? 学习 pthread 库函数的使用。 二、所用实验仪器设备、耗材及数量
硬件:UP-TECH S2410/P270 DVP 嵌入式实验平台,PC 机 Pentium 500 以上, 硬盘 40G 以上,内存大于 128M。
软件:PC 机操作系统 REDHAT LINUX 9.0 +MINICOM +ARM-LINUX 发环境。 三、实验原理(实验电路图及原理说明)
1.多线程程序的优缺点
多线程程序作为一种多任务、并发的工作方式,有以下的优点:
1) 提高应用程序响应。这对图形界面的程序尤其有意义,当一个操作耗时很长时,整个系统都会等待这个操作,此时程序不会响应键盘、鼠标、菜单的操作,而使用多线程技术,将耗时长的操作(time consuming)置于一个新的线程,可以避免这种尴尬的情况。
2) 使多 CPU 系统更加有效。操作系统会保证当线程数不大于 CPU 数目时,不同的线程运行于不同的 CPU 上。
3) 改善程序结构。一个既长又复杂的进程可以考虑分为多个线程,成为几个独立或半独立的运行部分,这样的程序会利于理解和修改。 LIBC 中的 pthread 库提供了大量的 API 函数,为用户编写应用程序提供支持。
2.实验源代码与结构流程图
本实验为著名的生产者-消费者问题模型的实现,主程序中分别启动生产者线程和消费者线程。生产者线程不断顺序地将 0 到 1000 的数字写入共享的循环缓冲区,同时消费者线程不断地从共享的循环缓冲区读取数据。
四、实验步骤(详细说明实验的操作过程及注意事项)
1、阅读源代及编译应用程序
进入exp/basic/02_pthread目录,使用vi 编辑器或其他编辑器阅读理解源代码。运行make
产生 pthread 可执行文件。
2、下载和调试
切换到 minicom 终端窗口,使用 NFS mount 发主机的/arm2410cl 到/host 目录。
进入/host/exp/basic/pthread目录,运行pthread,观察运行结果的正确性。运行程序
后一部分结果如下:
wait for not empty
put--994
put--995
put--996
put--997
put--998
put--999
producer stopped!
993--get
994--get
995--get
996--get
997--get
998--get
999--
get consumer stopped!
[/host/exp/basic/02_pthread 五、实验现象或结果描述
六、程序流程图
七、思考题
1.加入一个新的线程用于处理键盘的输入,并在按键为 ESC 时终止所有线程。
2.线程的优先级的控制。
2
5
成绩评定 教师签名
您可能关注的文档
最近下载
- 2025年(完整版)社区网格员考试复习资料.pdf VIP
- 医院感染控制的交叉感染防护.pptx VIP
- 冰雪经济-时政押题-2025年统编版高考政治必备知识与时政热点.pdf VIP
- 2024年同等学力申硕公共管理综合真题.docx
- 完整《进一步加强和改进流动党员管理工作的意见》.ppt VIP
- 世界防治结核病日结核病防治常识PPT.pptx VIP
- 个人防护与交叉感染的防控.pptx VIP
- 高教版 职业道德与法治 第三课增强职业道德意识.pptx VIP
- 2025年无锡工艺职业技术学院单招职业适应性测试题库及一套参考答案.docx VIP
- 标准图集 - 16J916-1 住宅排气道(一).pdf
文档评论(0)