IT Expert 윈도우시스템 프로그램을 구현하는 기술
도서명:IT Expert 윈도우시스템 프로그램을 구현하는 기술
저자/출판사:이호동/한빛미디어
쪽수:1220쪽
출판일:2015-04-01
ISBN:9788968481789
목차
[1부] 동기화
01장 스레드와 동기화
_1.1 동기화를 위한 사전 지식
__1.1.1 프로세스
__1.1.2 커널 객체와 핸들 테이블
__1.1.3 스레드
__1.1.4 스레드 스케줄링
_1.2 스레드 동기화란?
__1.2.1 동기화의 필요성
__1.2.2 동기화의 목적과 방법
02장 커널 객체와 동기화
_2.1 스레드 동기화 API
__2.1.1 스레드 대기 함수
__2.1.2 대기 함수와 커널 객체
_2.2 데이터 보호를 위한 동기화 객체
__2.2.1 뮤텍스(Mutex)
__2.2.2 세마포어(Semaphore)
_2.3 흐름 제어를 위한 동기화 객체
__2.3.1 이벤트(Event)
__2.3.2 대기가능 타이머(Waitable Timer)
_2.4 통지를 위한 추가사항 고찰
__2.4.1 스레드 메시지 큐와의 연동
__2.4.2 콜백 함수와의 결합
__2.4.3 .NET BackgroundWorker 클래스의 구현
03장 유저 모드 동기화
_3.1 유저 영역의 동기화 객체
__3.1.1 크리티컬 섹션(Critical Section)
__3.1.2 SRW-락(Slim Reader-Writer Lock)
__3.1.3 조건 변수(Condition Variables)
_3.2 상호잠금(Interlocked) API
__3.2.1 상호잠금 함수의 사용 예
__3.2.2 상호잠금을 이용한 스핀락 구현
_3.3 새로운 동기화 수단
__3.3.1 동기화 장벽(Synchronization Barrier)
__3.3.2 주솟값에 대한 대기
__3.3.3 원-타임 초기화(One-Time Initialization)
[2부] 비동기 입출력
04장 파일, 비동기 입출력과 IOCP
_4.1 파일 커널 객체
__4.1.1 파일 생성 및 입출력
__4.1.2 파일에 대한 작업
__4.1.3 CreateFile을 통한 다른 장치 열기
__4.1.4 동기적 입출력의 취소
_4.2 비동기 입출력의 기본
__4.2.1 비동기 입출력을 위한 사전 지식
__4.2.2 장치 또는 이벤트 시그널링
_4.3 경보가능 입출력(Alertable I/O)과 APC
__4.3.1 비동기 프로시저 호출(APC)
__4.3.2 경보가능 입출력의 사용
__4.3.3 입출력과 상관없는 APC의 사용
_4.4 입출력 완료 포트(IOCP)
__4.4.1 IOCP의 생성
__4.4.2 스레드 풀 구성하기
__4.4.3 입출력과 상관없는 IOCP의 사용
__4.4.4 IOCP 내부 들여다보기
__4.4.5 IOCP 확장 함수
_4.5 비동기 입출력의 취소
__4.5.1 핸들 닫기
__4.5.2 취소 함수
05장 비동기 소켓
_5.1 소켓 API의 기본
__5.1.1 동기 모델의 C/S
__5.1.2 동기 함수의 비동기화
_5.2 비동기 소켓
__5.2.1 고전적 방식(select)
__5.2.2 윈도우 메시지(WSAAsyncSelect)
__5.2.3 이벤트 시그널링(WSAEventSelect)
_5.3 비동기 입출력 이용
__5.3.1 장치 또는 이벤트 시그널링
__5.3.2 경보가능 입출력의 사용
__5.3.3 IOCP의 사용
_5.4 MS 소켓 확장 API
__5.4.1 확장성을 위한 준비
__5.4.2 비동기 입출력 접속
__5.4.3 AcceptEx 함수와 소켓 풀
__5.4.4 파일 전송
06장 스레드 풀
_6.1 스레드 풀의 의미와 구현
_6.2 윈도우 2000의 스레드 풀
__6.2.1 작업(QueueUserWorkItem)
__6.2.2 대기(RegisterWaitForSingleObject)
__6.2.3 타이머(CreateTimerQueueTimer)
__6.2.4 입출력(BindIoCompletionCallback)
_6.3 새로운 스레드 풀 I
__6.3.1 작업 항목 객체와 스레드 풀
__6.3.2 작업(TP_WORK) 객체
__6.3.3 대기(TP_WAIT) 객체
__6.3.4 타이머(TP_TIMER) 객체
__6.3.5 입출력(TP_IO) 객체
__6.3.6 콜백 인스턴스 사용하기
_6.4 새로운 스레드 풀 II
__6.4.1 스레드 풀 객체
__6.4.2 콜백 환경 객체
__6.4.3 정리그룹 객체
07장 IPC와 비동기 입출력
_7.1 IPC를 위한 준비 작업
__7.1.1 프로세스의 생성
__7.1.2 커널 객체의 공유
__7.1.3 프로세스 간 데이터 공유
_7.2 서비스와 커널 객체 보****
__7.2.1 윈도우 서비스의 기본
__7.2.2 서비스와 접근 제어
__7.2.3 서비스에서의 프로세스 생성
_7.3 메모리 매핑 파일
__7.3.1 MMF의 의미와 사용
__7.3.2 공유 메모리
__7.3.3 서비스에서의 MMF 사용
_7.4 파이프
__7.4.1 파이프 소개
__7.4.2 파이프의 사용
__7.4.3 서비스에서의 파이프 사용