2011年8月15日
摘要: http://my.chinaunix.net/space.php?uid=20196318&do=blog&id=366042http://blog.endlesscode.com/2010/03/27/select-poll-epoll-intro/linux提供了select、poll、epoll接口来实现IO复用,三者的原型如下所示,本文从参数、实现、性能等方面对三者进行对比。int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout 阅读全文
posted @ 2011-08-15 20:23 阿笨猫 阅读(49487) 评论(3) 推荐(10) 编辑
摘要: http://blog.csdn.net/heyan1853/article/details/6457362首先,介绍几种常见的I/O模型及其区别,如下:blocking I/Ononblocking I/OI/O multiplexing (selectandpoll)signal driven I/O (SIGIO)asynchronous I/O (the POSIXaio_functions)blocking I/O这个不用多解释吧,阻塞套接字。下图是它调用过程的图示:重点解释下上图,下面例子都会讲到。首先application调用 recvfrom()转入kernel,注意kerne 阅读全文
posted @ 2011-08-15 20:20 阿笨猫 阅读(12557) 评论(0) 推荐(6) 编辑
摘要: http://hi.baidu.com/jjpro/blog/item/06ea380859eac433e82488f8.html一、什么是对齐,以及为什么要对齐:1. 现代计算机中内存空间都是按照byte划分的,从理论上讲似乎对任何类型的变量的访问可以从任何地址开始,但实际情况是在访问特定变量的时候经常在特定的内存地址访问,这就需要各类型数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这就是对齐。2. 对齐的作用和原因:各个硬件平台对存储空间的处理上有很大的不同。一些平台对某些特定类型的数据只能从某些特定地址开始存取。其他平台可能没有这种情况, 但是最常见的是如果不按照适合其平 阅读全文
posted @ 2011-08-15 20:10 阿笨猫 阅读(1062) 评论(0) 推荐(1) 编辑