我创建了一个虚拟文件系统,将其输出显示为只读命名管道(即S_IFIFO
)。将数据写入到FUSE命名管道
至于getattr
而言,我的主机显示权限模式设置正确。但是,当我尝试打开管道(例如,cat my_fuse_mount/my_pipe
)时,显然是这样但没有数据流。
我期待open
-read
-release
序列做必要的打开和推送数据到命名管道,但显然不是。当我运行在调试模式下时,FUSE的日志似乎并不表示它正在尝试做任何事情。
使用什么FUSE操作将数据推送到命名管道?
尝试附加一个调试器并查看进程停止的位置。我不知道命名管道在FUSE文件系统上的工作方式,但通常在Linux上打开管道时,打开的呼叫会阻塞,直到另一个进程打开管道的另一端。然后! –