网站大量收购独家精品文档,联系QQ:2885784924

嵌入式实验报告1.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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 成绩评定 教师签名

文档评论(0)

yaobanwd + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档