[国嵌攻略][081][有名管道通讯]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[国嵌攻略][081][有名管道通讯]相关的知识,希望对你有一定的参考价值。

有名管道

有名管道又称为FIFO文件,因此我们对有名管道的操作可以采用文件操作的方法,如使用open,read,write等。

 

FIFO文件的特点

1.读取FIFO文件的进程只能以RDONLY方式打开FIFO文件。

2.写入FIFO文件的进程只能以WRONLY方式打开FIFO文件。

3.FIFO文件里面的内容被读取后就消失了,但普通文件里面的内容被读取后还存在。

 

wFIFO.c

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

void main(){
    //创建管道
    mkfifo("fifo", 0777);
    
    //打开管道
    int fd;
    
    fd = open("fifo", O_WRONLY);
    
    //写入数据
    char buf[13] = "hello world!";
    
    write(fd, buf, 13);
    
    //关闭管道
    close(fd);
}

 

rFIFO.c

#include <stdio.h>

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>

void main(){
    //打开管道
    int fd;
    
    fd = open("fifo", O_RDONLY);
    
    //读取数据
    char buf[13];
    
    read(fd, buf, 13);
    
    //显示数据
    printf("%s\n", buf);
    
    //关闭管道
    close(fd);
    
    //删除管道
    unlink("fifo");
}

 

以上是关于[国嵌攻略][081][有名管道通讯]的主要内容,如果未能解决你的问题,请参考以下文章

[国嵌攻略][085][共享内存通讯]

[国嵌攻略][161][USB总线介绍]

有名管道通讯编程

进程间通讯之有名管道

[国嵌攻略][166][项目管理模型]

[国嵌攻略][155][I2C用户态驱动设计]