programing150 [펌] Windows Registered I/O (RIO) vs IOCP http://www.slideshare.net/sm9kr/windows-registered-io-rio Windows Registered I/O (RIO) vs IOCP from Seungmo Koo 2015. 6. 3. [링크] 멀티쓰레드 프로그래밍이 왜이리 힘드나요? http://ndcreplay.nexon.com/NDC2014/sessions/NDC2014_0048.html#k%5B%5D=%EC%93%B0%EB%A0%88%EB%93%9C Ndc12 2 from 내훈 정 Ndc2014 시즌 2 : 멀티쓰레드 프로그래밍이 왜 이리 힘드나요? (Lock-free에서 Transactional Memory까지) from 내훈 정 2015. 6. 2. [펌] 게임 서버의 구조 출처 : http://www.hanbit.co.kr/network/view.html?bi_id=934 http://www.hanbit.co.kr/network/view.html?bi_id=936 온라인 게임에서 실질적인 게임을 진행시켜주는 것이 게임 서버이다. 우리는 게임서버의 구조는 게임의 진행과 시스템의 효율성에 많은 영향을 미치는 부분이다. 물리적으로 한정적인 시스템 자원을 효율적으로 사용하기 위해서 다양한 분산 처리는 필수적인 요소이다. 분산처리 구조를 익힘으로써 우리는 좀더 세련되고 뛰어난 성능을 발휘할수 있는 게임서버를 만들수 있다. 온라인 게임 서버 프로그래밍의 핵심인 게임 서버의 구조에 대해 알아 보도록 하자. 1. 일반적인 게임 서버 구조 2. 분산 게임 서버 구조 3. 서버간 통신 1... 2015. 6. 2. IOCP(Input Output Completion Port) - Completion Port > IOCP에서는 IO 완료 정보가 Completion Port 오브젝트라는 커널 오브젝트에 등록 > 소켓과 Completion Port 오브젝트와의 연결 요청 -> 소켓을 기반으로 진행되는 IO 완료 상황을 Completion Port 오브젝트에 등록 > 주의 사항 : I/O 작업에 사용할 버퍼가 I/O 작업을 신청한 시점부터 IOCP로부터 완료했다는 메시지를 받기 전까지 변경이 되면 안 된다는 것이다. 따라서, I/O 작업에 사용하는 버퍼는 전역 변수이거나 동적으로 할당된 메모리 공간이어야 한다. 특히 WSASend()나 WriteFile() 작업을 할 때, 함수를 호출하는 시점에 사용했던 공간을 함수가 끝나자 마자 지워버리거나(지역 변수), 다른 값으로 변경하게 되면.. 2015. 6. 2. 이전 1 ··· 26 27 28 29 30 31 32 ··· 38 다음