转自 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
1.文件共享内核使用3种数据结构来表示打开的文件,他们的关系如下:每个进程都有一张进程表项,记录进程打开的文件:fd标志:close_on_exec,若一个文件描述符在close_on_exec中的对应比特位被设置,那么在执行execl函数时该描述符将被关闭,即在execl函数执行的程序中直接使用该...
分类:
其他好文 时间:
2015-06-23 21:30:02
阅读次数:
114
在GNU Linux下使用原生套接字编写了服务端程序与客户端程序,按照常规,服务端程序都是会先创建一个socket并监听此端口的,而客户端程序主要是对服务端的连接,在只开启服务端程序的时候,使用lsof可以看到服务端的所有打开的文件的描述的,服务端程序的进程为29016,如下:
ufo@ufo:~/socket$ lsof -p 29016
COMMAND PID USER FD TYPE D...
分类:
系统相关 时间:
2015-06-23 00:55:15
阅读次数:
194
#include#include#include#include#include#include#define BUFFER_SIZE 1024int main(int argc ,char **argv){ int from_fd,to_fd; int bytes_read,bytes...
分类:
其他好文 时间:
2015-06-22 22:03:30
阅读次数:
175
文件结构stat——下面三个函数可以获取文件的状态信息:#include
int stat(const char *path, struct stat *buf);
int fstat(int fd, struct stat *buf);
int lstat(const char *path, struct stat *buf);stat函数指定文件路径,fstat指定文件...
分类:
其他好文 时间:
2015-06-19 11:57:24
阅读次数:
177
ioctl 是设置和获取设备文件的物理特性,不同设备文件其物理特性不一样。比如串口的波特率,显示器分变率等。值得说明的是fcntl 与ioctl不同在于fcntl是描述文件访问控制属性而
ioctl是操作文件的物理特性。可以简单理解fcntl是操作文件共性,ioctl是操作文件的个性。
#include
int ioctl(int fd, int request, ...);
下面...
分类:
其他好文 时间:
2015-06-15 09:27:56
阅读次数:
190
Linux为多路复用IO提供了较多的接口,有select(),pselect(),poll()的方式,继承自BSD和System V 两大派系。 select模型比较简单,“轮询”检测fd_set的状态,然后再采取相应的措施。 信号驱动模型有必要仔细研究一下,一般有如下步骤:设置安装函数,信...
分类:
其他好文 时间:
2015-06-14 01:48:48
阅读次数:
225
fs.open(path, flags, [mode], [callback(err, fd)])是 POSIX open 函数的封装,与 C 语言标准库中的 fopen 函数类似。它接受两个必选参数,path 为文件的路径,flags 可以是以下值。 ? r :以读取模式打开文件。 ? r+ .....
分类:
Web程序 时间:
2015-06-11 16:07:07
阅读次数:
189