1. IPC( Inter Process Communication )
1) 사용자 정의 메시지
- SendMessage 로 메시지를 보낸다. 64비트 만 전달 할 수 있다.
- 포인터는 가상주소간의 접근이 금지 되어 있으므로 불가능하다.
2) WM_COPYDATA
- 내부적으로 MMF 를 쓰기 때문에 결국 포인터가 아닌 MMF 공간의 주소를 사용한다.
3) 공유 메모리
4) MMF
5) PIPE
- 이름 없는 파이프는 상대방이 능동적으로 알 수 없다.
- 만든놈이 알려줘야 한다. DuplicateHandle
- 상속을 해주자. SetHandleInformation
- 이름 있는 파이프 : 로컬 내에서만 지원한다.
- '\\pc이름\PipeMailSlot\이름' 의 형식으로 파이프를 생성 해줘야 한다.
6) 클립보드
7) 메일 슬롯
8) DDE, SOKET, RPC
2. IOCP ( 비동기 I/O : 중첩된 입출력, Overlapped I/O )
- 큰파일을 쓰는 동안 다른 작업을 할 수 있도록 할 수 있다.
- 작업의 취소가 가능해진다.
- CreateIoCompletionPort 로 IOCP 를 생성한다.
1) 사용자 정의 메시지
- SendMessage 로 메시지를 보낸다. 64비트 만 전달 할 수 있다.
- 포인터는 가상주소간의 접근이 금지 되어 있으므로 불가능하다.
2) WM_COPYDATA
- 내부적으로 MMF 를 쓰기 때문에 결국 포인터가 아닌 MMF 공간의 주소를 사용한다.
3) 공유 메모리
4) MMF
5) PIPE
- 이름 없는 파이프는 상대방이 능동적으로 알 수 없다.
- 만든놈이 알려줘야 한다. DuplicateHandle
- 상속을 해주자. SetHandleInformation
- 이름 있는 파이프 : 로컬 내에서만 지원한다.
- '\\pc이름\PipeMailSlot\이름' 의 형식으로 파이프를 생성 해줘야 한다.
6) 클립보드
7) 메일 슬롯
8) DDE, SOKET, RPC
2. IOCP ( 비동기 I/O : 중첩된 입출력, Overlapped I/O )
- 큰파일을 쓰는 동안 다른 작업을 할 수 있도록 할 수 있다.
- 작업의 취소가 가능해진다.
- CreateIoCompletionPort 로 IOCP 를 생성한다.
2007/10/21 - [Study/System] - 10.19(금) 실습 - ( IPC 기법들, IOCP 기초 )