IOCP - Window io 통지모델
Window I/O 통지모델 : WSAAsyncSelect , WSAEventSelect, Overlapped I/O
WSAAsyncSelect(이하 WAS)는 윈도우 운영체제에서 제공하는 socket용 통지모델이다. 대놓고 Async를 표방한만큼 지금까지 앞에서 언급했던 동기형 통지모델과 다른 방식으로 통지를 해준다. 사용자가 커널의 상황을 지속적으로 확인하며 통지를 받는 것이 아니라, 특정 상황이 되면 통지를 주도록 예약을 하는 것이다. 그야말로 비동기 통지방식이다. 기존 Select가 확인하던 I/O 상태변화에 대해서 소켓별로 WAS를 사용하여 등록을 하면 윈도우 메시지를 통해서 통지가 된다.
https://ozt88.tistory.com/22?category=123069

windows IOCP 기초
이전 게시물까지 이야기 했던 통지모델들은 싱글쓰레드 멀티플렉싱을 위한 확장처럼 보였다. 하지만 싱글쓰레드 스마트폰도 보기 힘든 2015년 현재, 굳이 하이엔드 스펙을 갖춘 서버에서 싱글쓰레드를 써야할까? 이전 멀티쓰레드형 서버의 문제는 컨텍스트 스위칭 비용이었다. 하지만 CPU개수만큼만 쓰레드를 사용한다면, 컨텍스트 스위칭 문제는 크게 문제가 되지 않는다. 그러니까 우리는 딱 CPU개수만큼만 쓰레드를 쓰는 서버 를 만들고 싶다.
https://ozt88.tistory.com/23?category=123069


Seonglae Cho