2014年1月19日

linux下使用共享存储编程初试 (转载)

摘要: 设计一个C/S结构的程序,在开辟的一片共享内存中读写程序,server端负责写数据(每次写一个长度为100的数组),client端负责读数据,并把100个数组的元素以tab符号分割的输出到一个文件中。在不使用任何锁和信号量的情况下完成数据读写的同步(既server在对数组中元素赋值的过程中,client端绝对不能读)。解决思路: 首先,在不加锁的情况下,为同步数据的读写,共享内存多申请一个int变量,作为数据读写权限的标志位(0-空闲,此时生产者可写,1-繁忙,两者均不能访问,2-新数据,此时消费者可读);Server/Client在读取标志位判断自己得到权限后首先应该修改标志位以告诉对方自己 阅读全文

posted @ 2014-01-19 16:26 yuanqing 阅读(605) 评论(0) 推荐(0)

导航