发布时间:2013-01-11 23:07:34
一、sys_epoll_ctl()函数 源码和注释如下:/* * @epfd: epool_create创建的用于eventpoll的fd * @op: 控制的命令类型 * @fd: 要操作的文件描述符 * @event:与fd相关的对象. */SYSCALL_DEFINE4(epoll_ctl, int, epfd, int, op, int, fd, struct epoll_event __user *, event){ &n......【阅读全文】
发布时间:2013-01-10 21:25:44
eventpoll的优点就不用说了,网上的资料很多,eventpoll的使用也很广泛,特别是在Web服务器中。因为最近要用到epoll,所以好好地看了一下它的实现,把学到的一些东西做下整理,做个记录。一、sys_epoll_create() 其源码如下:SYSCALL_DEFINE1(epoll_create, int, size){ if (size <= 0) return -EINVAL; &nb......【阅读全文】
发布时间:2012-12-13 16:23:48
内核版本:2.6.32 tcp_send_ack()函数是内核用来发送ACK的函数,该函数比较简单,就是先分配一个SKB包,然后简单的初始化(初始化操作中没有设置ip_summed)后,调用tcp_transmit_skb()来将SKB包传递到IP层。tcp_transmit_skb中先做一些操作后(仔细看过,到计算校验和之前,没有更改过ip_summed),会调用tcp_v4_send_check(语句是:icsk->icsk_af_ops->send_check(sk, skb->len, skb);)来计算校验和。 tcp_v4_se......【阅读全文】