unix
天高任鸟飞-海阔凭鱼跃
天高任鸟飞 海阔凭鱼跃
展开
-
Posix消息队列
mq_open函数mq_close函数mq_unlink函数#include "unpipc.h"int main(int argc,char **argv){ int c,flags; mqd_t mqd; flags = O_RDWR | O_CREAT; while((c = Getopt(argc, argv, "e")) != -1){ switch(c){原创 2020-09-07 02:41:19 · 72 阅读 · 0 评论 -
有名管道(FIFO)
单项(半双工)数据流mkfifo函数mkfifo函数的作用是在文件系统中创建一个文件,该文件用于提供FIFO功能,即命名管道。前边讲的那些管道都没有名字,因此它们被称为匿名管道,或简称管道。对文件系统来说,匿名管道是不可见的,它的作用仅限于在父进程和子进程两个进程间进行通信。而命名管道是一个可见的文件,因此,它可以用于任何两个进程之间的通信,不管这两个进程是不是父子进程,也不管这两个进程之间有没有关系。Mkfifo函数的原型如下所示:#include <sys/types.h>.原创 2020-09-07 02:21:29 · 288 阅读 · 0 评论 -
popen和pclose
fgets函数描述C 库函数char *fgets(char *str, int n, FILE *stream)从指定的流 stream 读取一行,并把它存储在str所指向的字符串内。当读取(n-1)个字符时,或者读取到换行符时,或者到达文件末尾时,它会停止,具体视情况而定。声明下面是 fgets() 函数的声明。char *fgets(char *str, int n, FILE *stream)参数str-- 这是指向一个字符数组的指针,该数组存储了要读取的...原创 2020-09-07 01:41:51 · 819 阅读 · 0 评论 -
全双工管道
Fork() 函数:返回0时是子进程,否则,是父进程。pipe函数int pipe(int filedes[2]);返回值:成功,返回0,否则返回-1。参数数组包含pipe使用的两个文件的描述符。fd[0]:读管道,fd[1]:写管道。必须在fork()中调用pipe(),否则子进程不会继承文件描述符。两个进程不共享祖先进程,就不能使用pipe。但是可以使用命名管道。当管道进行写入操作的时候,如果写入的数据小于128K则是非原子的,如果大于128K字节,缓冲区的数据将被连续地写入原创 2020-09-07 00:59:01 · 388 阅读 · 0 评论 -
UNIX网络编程卷2 源码编译篇
1 tar -xzfv unpv22e.tar.gz2 cd unpv22e3 ./configure4 cd lib5 make make编译失败,因为需要对两个文件修改,unpv22e/config.h和unpv22e/wrapunix.c。vi config.h/*注释掉这三行*/// #define uint8_t unsigned char /* <sys/types.h> */// #define uint16_t unsigned sho..转载 2020-09-05 13:31:48 · 362 阅读 · 0 评论