epoll 实际上是 poll 的一种改进,它可以处理大批量的句柄。而 poll 又是 select 的一种改进。在 select 中对所打开的文件描述符个数有一定的限制,该限制由 FD_SETSIZE 设置(一般为 1024 或 2048), 而且内核中的 select 的实现是采用轮询来处理描文件描述符集,因此效率低。当文件描述符集中的某个描述符处于可读、可写或异常状态时,select 采用内存拷贝方法通知用户空间。因此, 在 select 模型中文件描述符个数受限且效率低的问题就很明显。为了解决 se...
分类:
其他好文 时间:
2015-01-15 22:01:57
阅读次数:
239
#include #include #include #include #include #include #include #include #include #define MAXINTERFACES 16void get_ip(){ int sock_fd; struct ifreq buf[...
epoll异步精髓(ET模式):
2个epoll初始化片段:
epoll_event ev;
ev.events = EPOLLIN | EPOLLET;
ev.data.fd = fd;
int ret = epoll_ctl(_epfd, EPOLL_CTL_ADD, fd, &ev);
_pEvents = new epoll_event[EPOLL_SIZE - 1];
i...
分类:
其他好文 时间:
2015-01-12 17:38:26
阅读次数:
311
Select在Socket编程中还是比较重要的,它能够监视我们需要监视的文件描述符的变化情况——读写或是异常。
Select的函数格式(Unix系统下的伯克利socket编程,和windows下的略有区别,
体现两个方面:
一是select函数的第一个参数,在windows下可以忽略,但在linux下必须设为最大文件描述符加1;
二是结构fd_set在两个系统里定义不一样)
/*参...
分类:
其他好文 时间:
2015-01-12 14:46:55
阅读次数:
204
1.intruductionexec用来启动一个新shell来执行指定程序,它会清除现有shell环境,而不是开启子shell来执行命令。exec的另一种作用是操作文件描述符,而此时exec不会覆盖你当前的shell环境2.sysopsisexec程序/命令3.exec实现高级IOIO的各种实现离不开对FD的操作,创建新的输入或..
分类:
其他好文 时间:
2015-01-10 18:30:10
阅读次数:
465
linux socket中select()函数以及FD_ZERO FD_SET FD_CLR FD_ISSET...
分类:
系统相关 时间:
2015-01-10 15:15:11
阅读次数:
250
原题:如果使用追加标志打开一个文件以便读、写,能否仍用 lseek 在任一为止开始读?能否用 lseek 更新文件中任一部分的数据?
验证程序如下:
#include
#include
#include
#include
#include
#define BUF_SIZ 32
int main()
{
int fd;
int res;
off_t offs...
分类:
其他好文 时间:
2015-01-09 17:24:09
阅读次数:
269
live555的核心函数是void BasicTaskScheduler::SingleStep(unsigned maxDelayTime): 1 void BasicTaskScheduler::SingleStep(unsigned maxDelayTime) { 2 fd_set r...
分类:
其他好文 时间:
2015-01-08 17:20:38
阅读次数:
459
大部分驱动除了需要具备读写设备的能力之外,还需要具备对硬件控制的能力。 一、在用户空间,使用ioctl系统调用来控制设备,原型如下intioctl(intfd,unsignedlongcmd,...);/*fd:文件描述符cmd:控制命令...:可选参数:插入*argp,具体内容依赖于cmd*/ ....
分类:
系统相关 时间:
2015-01-08 00:53:16
阅读次数:
311
原 dup2()函数:
#include
int dup2( int fd, int fd2 );
对于 dup2,可以用 fd2 参数指定新描述符的值。如果 fd2 已经打开,则先将其关闭。如若 fd 等于 fd2,则 dup2 返回 fd2,而不关闭它。否则,fd2 的 FD_CLOEXEC 文件描述符标志就被清除,这样 fd2 在进程调用 exec 时是打开状态。该函数返回的新文件描...
分类:
其他好文 时间:
2015-01-07 20:54:57
阅读次数:
158