libnet介绍与分析当前,基于socket的网络编程已成为当今不可替代的编程方法,它将网络通讯当作文件描述符进行处理,把对这个“网络文件”(即socket套接字)的操作抽象成一种类似于文件操作的方式进行。从实现细节上,这种工作方式根据TCP/IP的网络通讯模型,封装了一系列的实现,使得我们只需要使...
分类:
Web程序 时间:
2014-07-10 13:52:57
阅读次数:
280
在linux shell执行命令时,每个进程都和三个打开的文件相联系,并使用文件描述符来引用这些文件。由于文件描述符不容易记忆,shell同时也给出了相应的文件名。 标准输入:0(缺省是键盘,为0时是文件或者其他命令的输出) 标准输出:1(缺省是屏幕,为1时是文件) 标准出错:2(缺省是屏幕,...
分类:
其他好文 时间:
2014-07-09 23:54:40
阅读次数:
380
libevent API
可以指定一个函数回调,当在文件描述符上产生了特定操作或者有超时动作时,这个函数回调会被调用,不仅如此,libevent还支持的事件类型包括信号量和常规超时。libevent的意图在于替代在事件驱动的网络服务中的事件循环,一个应用在使用libevent时之需要调用event_...
分类:
其他好文 时间:
2014-06-29 07:44:08
阅读次数:
257
线程共享的内容包括:进程代码段进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录和 进程用户ID与进程组ID线程独有的内容包括:线程ID寄存器组的值线程的堆栈错误返回码线程的信号屏蔽码
分类:
编程语言 时间:
2014-06-26 23:09:20
阅读次数:
234
GCD介绍(一): 基本概念和Dispatch QueueGCD提供很多超越传统多线程编程的优势:易用:GCD比之thread跟简单易用。由于GCD基于work unit而非像thread那样基于运算,所以GCD可以控制诸如等待任务结束、监视文件描述符、周期执行代码以及工作挂起等任务。基于block...
分类:
其他好文 时间:
2014-06-22 23:58:08
阅读次数:
432
执行网络I/O,一个进程必须做的第一件事就是调用socket函数,指定期望的通信协议类型。
#include
int socket(int family, int type, int protocol);
/*返回值:若成功则为非负描述符,若出错则为-1*/
socket函数成功时返回一个小的非负整数值,它与文件描述符类似,把它称为套接字描述符,简称sockfd。family参数指明协议...
分类:
其他好文 时间:
2014-06-22 15:40:10
阅读次数:
301
dup与dup2函数用于复制现存的文件描述符。原型:#include int dup(int fd);int dup2(int fd, int fd2);两函数若成功则返回新描述符,出错则返回-1。dup函数返回一个新的描述符,并且这个新描述符一定是可用描述符中数值最小的一个。dup2函数使用fd2...
分类:
其他好文 时间:
2014-06-19 09:03:12
阅读次数:
171
Linux的通信方式主要有分类有下面几种:
-匿名管道和FIFO有名管道
-消息队列,信号量和共享存储
-套接字
.对于套接字的进程通信,我就留在套接字的文章中再写了.
一.管道
管道是最古老的进程通信机制了.提供进程间的单向通信.
1.创建管道
int pipe(int fdes[2]);
实际上管道通过参数返回读和写的两个文件描述符.相当于是打开了两个文件吧.但是这个文...
分类:
系统相关 时间:
2014-06-17 19:07:02
阅读次数:
339
昨天解了个bug,关于文件描述符的,这种问题很久之前也遇到过,这次再犯真的不该。
问题是这样的。
fopen()打开一个文件,然后做了一些操作,然后函数执行结束。。。没有调用fclose()导致了,再执行此函数时,系统提示,文件描述符分配完毕。
分析了下:
根据以前的知识储备,
1.linux打开文件描述符的最大个数为1024,根据这次发现,
2.这是针对于单独进程的,
...
分类:
系统相关 时间:
2014-06-14 09:14:13
阅读次数:
354
继续上文CentOS6.5
Nginx优化编译配置本文记录有关Nginx系统环境的一些细节设置,有关Nginx性能调整除了配置文件吻合服务器硬件之前就是关闭不必要的服务、磁盘操作、文件描述符、内核调整等。1、关闭系统中不需要的服务###Centos
minimal 本来就是最小安装,这里我也就不提....
分类:
其他好文 时间:
2014-06-10 12:33:04
阅读次数:
234