随笔分类 -  Linux

摘要:在linux的IO多路复用中有水平触发,边缘触发两种模式,这两种模式的区别如下: 水平触发:如果文件描述符已经就绪可以非阻塞的执行IO操作了,此时会触发通知.允许在任意时刻重复检测IO的状态,没有必要每次描述符就绪后尽可能多的执行IO.select,poll就属于水平触发. 边缘触发:如果文件描... 阅读全文
posted @ 2015-08-02 19:03 Crafet.36.77 阅读(842) 评论(0) 推荐(0)
摘要:从main函数切入,方便从宏观上掌握redis的运作机制,本篇就从main函数入手,从最上层看,main调用了哪些接口,具体完成了什么功能,然后再聚焦具体的模块。aeEventLoop是Redis的事件核心数据结构,Redis将aeEventLoop不同平台上的多路分离器进行适配,如select/k... 阅读全文
posted @ 2015-07-19 21:12 Crafet.36.77 阅读(1550) 评论(0) 推荐(0)
摘要:dup和dup2也是两个非常有用的调用,它们的作用都是用来复制一个文件的描述符。它们经常用来重定向进程的stdin、stdout和stderr。这两个函数的原形如下:#include int dup( int oldfd ); int dup2( int oldfd, int targetfd... 阅读全文
posted @ 2015-07-16 23:40 Crafet.36.77 阅读(243) 评论(0) 推荐(0)
摘要:研究了下select的使用方法,客户端模拟与server端进行通信。 在ubuntu下测试下来,select支持最大fd为1024个,其中预留1,2,3共3个标准输入/出/错误I/O。 代码记录下来,作为笔记[github上代码] 阅读全文
posted @ 2014-03-09 23:05 Crafet.36.77 阅读(161) 评论(0) 推荐(0)