文档库

最新最全的文档下载
当前位置:文档库 > 实验四 文件操作

实验四 文件操作

南昌大学实验报告

学生姓名:陈星任学号:6100412040 专业班级:网工121班实验类型:□验证□综合□设计□创新实验日期:2015.5.10 实验成绩:

一、实验项目名称

《文件操作》

二、实验目的

通过编写文件读写及上锁的程序,进一步熟悉Linux 中文件I/O 相关的应用开发,并且熟练掌握open()、read()、write()、fcntl()等函数的使用。

三、实验内容

在Linux 中FIFO 是一种进程之间的管道通信机制。Linux 支持完整的FIFO通信机制。本实验内容,通过使用文件操作,仿真FIFO(先进先出)结构以及生产者-消费者运行模型。

本实验中需要打开两个虚拟终端,分别运行生产者程序(producer)和消费者程序(customer)。此时两个进程同时对同一个文件进行读写操作。因为这个文件是临界资源,所以可以使用文件锁机制来保证两个进程对文件的访问都是原子操作。

先启动生产者进程,它负责创建仿真FIFO 结构的文件(其实是一个普通文件)并投入生产,就是按照给定的时间间隔,向FIFO 文件写入自动生成的字符(在程序中用宏定义选择使用数字还是使用英文字符),生产周期以及要生产的资源数通过参数传递给进程(默认生产周期为1s,要生产的资源数为10 个字符)。

后启动的消费者进程按照给定的数目进行消费,首先从文件中读取相应数目的字符并在屏幕上显示,然后从文件中删除刚才消费过的数据。为了仿真FIFO 结构,此时需要使用两次复制来实现文件内容的偏移。每次消费的资源数通过参数传递给进程,默认值为10 个字符。

四、实验步骤

(1)实验流程图本实验的两个程序的流程图如图:

免费下载Word文档免费下载: 实验四 文件操作

(共8页)