1. 实验目的

用信号量来解决实际进程互斥问题,进而加深对信号量、进程互斥的理解。

2. 实验内容

在服务器上用Vim编写一个程序,使用信号量解决经典IPC问题:读者和写者问题。

  • 读者和写者共享文件shared.txt
  • 创建10个读者。对于每个读者,读出文件最后一行的内容,并输出屏幕
  • 创建10个写者。对于每个写者,在文件末尾写入自己的线程ID,获取线程ID用函数pthread_self

线程创建函数:pthread_create(3): create new thread - Linux man page

在指定文件编写代码:

  • 信号量创建、加锁、解锁操作,直接使用库提供的API,见信号量操作
  • 在文件reader_writer_pv.c实现读者和写者问题

3. 实验要求

实验基本要求见:所有实验要求章节

截止时间:

  • 代码,实验课结束完成,由程序辅助判定
  • 实验报告,截止时间为实验课当天21:00

4. 评分

得分:

  • 本次实验:15分
    • 信号量声明、初始值,得3分
    • 写者,得3分
    • 读者,得6分
    • 非关键性代码(如读写文件),得3分
  • 评分由程序辅助判定+教师评分

5. 实验报告

实验报告模板

本文系Spark & Shine原创,转载需注明出处本文最近一次修改时间 2022-05-31 09:52

results matching ""

    No results matching ""