Като цяло всички подсистеми за Async I/O имат различни вътрешни елементи, но в настоящия конкретен случай тези конкретни асинхронни I/O библиотеки се използват за поддържане на възможно най-много платформи. Това е:
- evport =Solaris 10
- epoll =Linux
- kqueue =OS X, FreeBSD
- изберете =обикновено се инсталира на всички платформи като
fallback
Evport
, Epoll
и KQueue
имат O(1) сложността на алгоритъма за избор на дескриптор и всички те използват вътрешни структури на паметта на ядрото. Също така те могат да служат много (стотици хиляди) файлови дескриптори.
Освен останалите, select
може да обслужва самодо 1024 дескриптори и извършва пълно сканиране на дескриптори (така че всеки път, когато повтаря всички дескриптори, за да избере един, с който да работи), така че сложността е O(n) .