linux编程
文章平均质量分 83
McHeaven
这个作者很懒,什么都没留下…
展开
-
Linux的Posix aio API
Q:什么是异步/同步io,什么是阻塞/非阻塞io? A:按照获取数据的方式可将io区分为同步和异步的:同步是指需要调用者主动访问I/O口来进行数据的读写;异步是指调用者只需要提出io请求,然后处理其他事情,由内核完成读写操作之后通知调用者。重点就是读写操作是不是调用者主动完成的。 按照执行的时候进程是否被挂起可将io区分为阻塞和非阻塞:阻塞当然就是进程需要等待io完成而被挂起;非阻塞就原创 2015-03-14 23:33:16 · 1295 阅读 · 0 评论 -
Linux信号驱动I/O 学习记录
Q:什么是信号驱动I/O? A:对于给定的I/O口(一般就是对于文件描述符)设定为信号驱动I/O,则当I/O口准备好之后(读:有数据可读;写:有空间可写),向注册它的进程发送事先约定好的信号,进程收到信号后触发signal handler进行I/O处理。Q:Linux下信号驱动I/O的注册方法? A:系统设定两种信号为专用信号:SIGIO和SIGURG,这两种都是非实时、不可靠信号,不能参原创 2015-03-16 17:49:34 · 2554 阅读 · 0 评论 -
Linux epoll API 学习记录
Q:epoll是什么,有哪些接口以及实现什么功能? A:epoll是SUS标准之外,只在Linux平台上提供的多路复用I/O接口,普遍用于高并发的网络编程,用以代替select/poll,提高并发网络I/O效率。epoll不是一个函数,而是一组函数,由epoll_create、epoll_ctl和epoll_wait组成,包含在sys/epoll.h头文件中。epoll_create:原创 2015-03-17 23:21:08 · 2693 阅读 · 1 评论