读取请求时写入文件-Linux

读取请求时写入文件-Linux,linux,io,system-calls,Linux,Io,System Calls,我希望在任何程序试图读取某个特定文件时都能写入该文件。例如,我创建一个空文件,或者用零填充,一个程序尝试从文件的第M个字节开始读取N个字节(使用读取/查找系统调用),我需要让读取调用等待,直到我将请求的字节写入文件,以使系统调用成功地读取写入的字节而不出错。该文件应与程序预期读取的文件相同。或者有没有一种方法可以将所需的字节“发送”到read()调用,而无需在此之前将它们直接写入文件?我需要让它在不编辑代码的情况下与任何程序一起工作。您需要使用某种IPC机制在读写器之间创建自己的同步协议 或者,

我希望在任何程序试图读取某个特定文件时都能写入该文件。例如,我创建一个空文件,或者用零填充,一个程序尝试从文件的第M个字节开始读取N个字节(使用读取/查找系统调用),我需要让读取调用等待,直到我将请求的字节写入文件,以使系统调用成功地读取写入的字节而不出错。该文件应与程序预期读取的文件相同。或者有没有一种方法可以将所需的字节“发送”到read()调用,而无需在此之前将它们直接写入文件?我需要让它在不编辑代码的情况下与任何程序一起工作。

您需要使用某种IPC机制在读写器之间创建自己的同步协议


或者,您可以使用存储过程在数据库中执行此操作。

这必须通过在内核级别拦截文件系统读取请求来完成。最简单的方法是利用用户空间实现文件系统过滤器。其他程序将从您的文件系统中读取,让您完全控制它们读取的内容