Ha egyszerűség is elég, akkor már inkább poll(), mint select(). A select()-el iszonyat nagyokat lehet szívni, ha túl sok nyitott fájlod van. És most akármilyen fájlról beszélek, nem csak socket és device amit tényleg figyelni akarsz (hint: FD_SETSIZE).
Ha sok monitorozott dolgod van, akkor tényleg epoll() a jó irány.