linux下利用互斥实现线程访问共享资源(含源文件).docVIP

  • 63
  • 0
  • 约2.33万字
  • 约 23页
  • 2017-03-28 发布于江苏
  • 举报

linux下利用互斥实现线程访问共享资源(含源文件).doc

linux下利用互斥实现线程访问共享资源(含源文件)

“计算机操作系统”课程设计大作业 一、实验题目: linux下利用互斥实现线程访问共享资源 二、实验目的:掌握线程创建和终止,加深对线程和进程概念的理解,会用同步与互斥方法实现线程之间的通信。 三、实验内容 事先了解操作系统中经典的生产者-消费者问题,安装linux虚拟机(可以用virtualbox或者vmware软件)。在linux下创建三个生产者线程(P1,P2,P3)和一个消费者线程(C1),生产者和消费者线程共享一个长度为2KB的环型公共缓冲区,生产者向缓冲区写入消息,消费者从缓冲区中取走消息显示到屏幕。只要缓冲区未满,生产者可将消息送入缓冲区;只要缓冲区未空,消费者可从缓冲区取走一个消息。 每个消息具下列结构格式: 消息长度(1个字节),消息内容(n个字节)。 每个生产者每隔2秒生产一个消息加入缓冲区,并把消息产生时间和内容记录在一个文本文件中。P1每次生产的数据为26个大写字母, P2每次生产的数据为26个小写字母,P3每次生产的数据为10个阿拉伯数字。 消费者C1每隔3秒读取缓冲区中的一个消息并将消息内容显示到屏幕上。 用两种方法(不采线程用互斥和采用线程互斥技术)编写上述功能的程序,对比两种程序运行结果有何区别?不采线程用互斥时存在什么问题? 备注:编程中用到的函数 创建线程函数:pthread_create 互斥锁初始化:pthread_mutex_i

文档评论(0)

1亿VIP精品文档

相关文档