fifo

    0热度

    2回答

    我必须处理一个任务,并且我必须为IPC使用FIFO文件。 主要问题是,我卡在fget部分。我已经打开了该文件,但是当我尝试读取存储在其上的数据时,该程序停止工作。它并没有真正的运行,程序只是没有做任何事情。 我很确定这是系统调用fgets的问题,因为我一直在进行调试,并且问题仅在我在代码中包含fgets()行时才显示。 // ESCRITURA DENTRO DEL ARCHIVO FIFO QU

    0热度

    1回答

    在this question中,提问者已经解决了以非阻塞方式从命名管道读取的问题,但他使用了固定的缓冲区大小。有没有办法做到这一点,没有一个固定的缓冲区大小,只是等待另一端用一个换行符来终止它们自己的缓冲区?

    0热度

    1回答

    为什么函数open()在Unix中对于FIFO是不对称的?为什么我们需要首先打开先进先出读取然后写入? 在linux/fs/fifo.c写: /* * O_RDONLY * POSIX.1 says that O_NONBLOCK means return with the FIFO * opened, even when there is no process writing the FI

    0热度

    1回答

    的Linux: 我已经打开了一个名为管道 - 我可以看到 prw-rw-rw- usrA usrA 但经过我一段时间,其更改为普通文件 -rw-rw-rw- usrB usrB 任何想法如何可以发生?所有权也改变了。 有趣的是USRA实际上比usrB

    0热度

    1回答

    #include <sys/types.h> #include <sys/stat.h> #include <sys/mman.h> #include <fcntl.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <unistd.h> #include <limits.h> #inc

    0热度

    1回答

    我试图从Xilinx Core生成器生成一个FIFO。 它有一个与RAM块共同的时钟,它是一个标准的FIFO,2位宽和16深。 我做了基于该核心的一个测试平台: LIBRARY ieee; USE ieee.std_logic_1164.ALL; library unisim; use unisim.VComponents.all; ENTITY fifo_test IS END

    3热度

    1回答

    我正在尝试在Linux内核中开发FIFO虚拟字符设备驱动程序。 我试图将数据从一个设备上执行的一个进程复制到另一个相同类型的设备上执行的另一个进程。 我试图从mydevice1 cat /dev/mydevice1 读取和写入mydevice在 echo a > /dev/mydevice ,但我不断收到一个错误:在第二 cat: /dev/mydevice1: Invalid argument

    0热度

    2回答

    我正在为一个日志文件系统进行改进,这个日志文件系统是为我开发的一些服务构建的。之前我一直在打开文件,附加数据,并在写入检查之前查看日志文件是否已经增长到预定的大小,如果是这样的话,开始一个新的日志。 所以说日志大小是100MB,在这个大小我删除,并开始一个新的文件,但我松散的历史,功能,但不是最好的模型。 我想要做的是一个先进先出模型,它可以切断顶端并将其添加到最后,同时保持始终不超过100MB,

    2热度

    3回答

    我想通过命名管道发送数据块并希望接收者知道数据块在哪里结束。我应该如何使用命名管道来做到这一点?我是否应该使用某种格式来连接和分割块(将管道始终视为字节流)还是有其他方法? 我试着在发件人打开和关闭管道的每一个数据块,但数据已在接收端串接(EOF不发送): for _ in range(2): with open('myfifo', 'bw') as f: f.write(b

    0热度

    2回答

    我需要下面的结构写入FIFO: struct msg_t { int length; char* msg; }; 我的malloc的结构和字符*里面,我写的是这样的: (假设味精是变量名称) write(fifo_fd,& msg,sizeof(msg_t)); 从另一端读取长度就好了。 字符串不是.. 如何用一次写入来写这两个字段? 如果不是,两个单独的写入是否好? 谢