面试真题

操作系统 · 中等 · 小米

select、poll、epoll的区别?

中等 操作系统 🎤 小米
参考答案
结论:三者均为IO多路复用机制,epoll性能最优且支持海量连接。对比:select使用位图存fd,默认1024限制,每次拷贝全量fd到内核并轮询O(n);poll使用链表存fd无数量限制,但仍需遍历拷贝O(n);epoll内核红黑树存fd,事件就绪回调O(1),mmap避免拷贝,支持LT/ET模式;示例epoll_create、epoll_ctl_add、epoll_wait;select poll在少量连接可接受,epoll在C10K以上高并发优势明显。
题目整理自公开面经,答案由校招宝自研生成,仅供参考