管道文件pipe#include int pipe(int fildes[2]);调用成功后,可以访问两个文件描述符,fildes[0]是用来读的文件描述符,而fildes[1]是用来写的文件描述符。在实际使用中,通过创建一个子进程,然后一个进程写,一个进程读来使用。dup2int dup2(int...
分类:
其他好文 时间:
2015-12-14 23:14:50
阅读次数:
159
1、什么是管道 管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道; 只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程); 单独构成一种独立的文件系统:管道对于管道两端的进程而言,就是一个文件,但它不是普通的文件,它不属于某种文件系统,而是自立门户,单独构成一种文件系统....
分类:
系统相关 时间:
2015-11-30 17:28:40
阅读次数:
402
转自:http://eriol.iteye.com/blog/1180624转自:http://www.cnblogs.com/jht/archive/2006/04/04/366086.htmldup和dup2也是两个非常有用的调用,它们的作用都是用来复制一个文件的描述符。它们经常用来重定向进程的...
分类:
其他好文 时间:
2015-09-14 15:29:11
阅读次数:
140
#include<stdlib.h>
#include<stdio.h>
#include<unistd.h>
#include<fcntl.h>
int?my_dup(int?fd,int?fd2)
{
????if(fd==fd2)
????????????return?fd2;
????int?n=?0;
????int?l...
分类:
其他好文 时间:
2015-08-19 23:50:39
阅读次数:
695
刚开始把nginx安装好后,我就对其源代码产生了浓厚兴趣,试图通过加入printf函数输出自己的调试信息来查看整个nginx的运行流程。最后发现自己加入的printf根本不管用,屏幕上没有任何信息。后来发现程序重定向了STDOUT文件符到/dev/null里了,所有看不到任何输出信息。原因找到..
分类:
其他好文 时间:
2015-07-29 19:42:49
阅读次数:
160
1.dup和dup2函数#includeint dup(int fd);int dup2(int fd1,int fd2);两个均为复制一个现存的文件的描述两个函数的返回:若成功为新的文件描述,若出错为-1;由dup返回的新文件描述符一定是当前可用文件描述中的最小数值。用dup2则可以用fd2参数指...
分类:
系统相关 时间:
2015-07-21 21:59:36
阅读次数:
196
dup和dup2也是两个非常有用的调用,它们的作用都是用来复制一个文件的描述符。它们经常用来重定向进程的stdin、stdout和stderr。这两个函数的原形如下:#include int dup( int oldfd ); int dup2( int oldfd, int targetfd...
分类:
其他好文 时间:
2015-07-17 00:07:16
阅读次数:
213
原子操作(automic operation)指的是由多步组成的操作。如果该操作原子的执行,则要么执行完所有步骤,要么一步也不执行,不可能只执行所有步骤的一个子集。向打开文件时设置O_APPEND标志的文件写入是原子操作。内核每次对这种文件进行写之前,都将进程的当前偏移量设置到该文件的尾端处。O_E...
分类:
其他好文 时间:
2015-06-24 22:18:07
阅读次数:
229
转自 http://blog.csdn.net/todd911/article/details/11747097#include#includeintmain(void){intfd=-1;fd=mydup2(0,10);if(fd256){printf("fdiswrong.\n");retur....
分类:
其他好文 时间:
2015-06-24 10:34:58
阅读次数:
100
脚本是:nohup /mnt/Nand3/H2000G >/dev/null 2>&1 &对于& 1 更准确的说应该是文件描述符 1,而1 一般代表的就是STDOUT_FILENO,实际上这个操作就是一个dup2(2)调用.他标准输出到all_result ,然后复制标准输出到文件描述符2(STDE...
分类:
系统相关 时间:
2015-06-13 15:40:09
阅读次数:
181