Porting to OS/2: Case #5 select()

select() is a main cause of raising CPU loads. Because unlike Unix-like systems, select() on OS/2 kLIBC works only on sockets. If any other descriptors than sockets are passed to select(), select() fails. And if select() is in a loop, the loop will be reapted tightly. As a result, CPU load go to the peak.

So if CPU load is the peak when you ported something, then search select() and check if select() is used on sockets. If not, you have to replace the codes with the same functioning codes not using select().

Fortunately, MinGW also shares this defect. So you may use MinGW codes to avoid this problem. Otherwise, you have to do it yourself although it may be difficult somewhat.

댓글

이 블로그의 인기 게시물

토렌트: < 왕좌의 게임 > 시즌 1 ~ 시즌 8 완결편 마그넷

토렌트: NGC < 코스모스 > 우리말 더빙 전편(1편~13편) 마그넷

토렌트: < 스타워즈 > Ep.1 ~ Ep.6 마그넷