본문내용 바로가기
MD의선택 무료배송 소득공제

Concurrent Programming on Windows 멀티코어 멀티프로세서를 황용하는 윈도우 병렬 프로그래밍

에이콘 윈도우 시스템 프로그래밍 시리즈 11
조 더피 지음 | 황진호 옮김 | 에이콘출판 | 2012년 03월 30일 출간
  • 정가 : 50,000원
    판매가 : 45,000 [10%↓ 5,000원 할인]
  • 통합포인트 :
    [기본적립] 2,500원 적립 [5% 적립] 안내 [추가적립] 5만원 이상 구매 시 2천원 추가적립 [회원혜택] 우수회원 3만원 이상 구매 시 2~4% 추가적립
  • 추가혜택 : 포인트 안내 도서소득공제 안내 추가혜택 더보기
  • 배송비 : 무료 배송비 안내
  • 배송일정 : 서울특별시 종로구 세종대로 기준 지역변경
    당일배송 지금 주문하면 오늘(19일,토) 도착 예정 배송일정 안내
  • 바로드림 : 인터넷으로 주문하고 매장에서 직접 수령 안내
상품상세정보
ISBN 9788960772885(8960772887)
쪽수 1052쪽
크기 188 * 250 * 60 mm /2062g 판형알림
이 책의 원서/번역서 Concurrent programming on Windows/Duffy, Joe

책소개

이 책이 속한 분야

『Concurrent Programming on Windows』은 동시성에 대한 이해를 돕기 위해 동시성의 개념을 소개하고, 플랫폼 특징, 내부 동작, API에 관해 상세하게 기술한다. 그리고 동시성 소프트웨어를 작성하는 병렬 프로그래밍 시에 나타나는 공통 패턴과 최적의 실행, 알고리즘, 데이터 구조를 설명하고, 이런 내용을 바탕으로 전체 시스템 구조와 자주 발생하는 프로세스에서 중요한 내용을 다룬다.

이 책의 총서

저자소개

저자 : 조 더피

저자 조 더피(Joe Duffy)는 비주얼 스튜디오 분과의 개발 책임자이자 설계자이며, 마이크로소프트의 닷넷 프레임워크 팀의 병렬 확장(Parallel Extension)의 창시자다. 코드를 해킹하고 훌륭한 개발자 팀을 관리하는 일과 더불어 팀의 장기적인 비전과 전략을 수립한다. 현재 관심사는 함수형 프로그래밍 모델과 형식 시스템에서 우선 동시성 안전(first-class concurrency safety), GPU와 SIMD 스타일 프로세서의 활용을 가능하게 하는 프로그래밍 모델을 만드는 것이다. 이전에 마이크로소프트에서 병렬 LINQ(PLINQ)의 개발자와 공통 언어 런타임(CLR)에서 동시성 프로그램 관리자로 활약했다. 마이크로소프트에 합류하기 전에는 EMC에서의 4년을 포함해 7년간 전문 프로그래밍 경험을 쌓았다. 매사추세츠에서 태어나 현재는 워싱턴에서 살고 있다. 기술적인 작업에 몰두하지 않을 때는 기타를 치고, 음악 이론에 대해 공부하며, 음악을 듣거나 작곡하며, 와인에 대한 갈증을 해소한다.

역자 : 황진호

역자 황진호는 IT 경력은 미국에서 시작됐다. 석사 과정을 마치고 1년여 동안 미국의 연구기관에서 방문 연구원으로 재직했다. 미국에서 유명 통신회사의 시스템을 연구/개발하는 몇 가지 프로젝트를 마무리하고, 한국으로 돌아와 포스코 ICT에서 통신 시스템 소프트웨어 개발자로 3년 동안 근무했다. 현재 미국의 조지 워싱턴 대학교의 컴퓨터 사이언스 학과에서 박사 과정을 밟는 중이며, 주 연구 분야는 클라우드 컴퓨팅과 빅 데이터 처리다. 에이콘출판사에서 출간한 『Learning PHP, MySQL & JavaScript 한국어판』(2011)을 번역했다.

목차

1부 개념

1장 개요

___동시성을 사용해야 하는 이유
___프로그램 구조와 동시성
___병렬화 계층
___동시성을 사용하면 안 되는 경우
___정리
___참고 문헌

2장 동기화와 시간
___프로그램 상태 관리
______공유 상태/비공개 상태 식별
______상태 기계와 시간
______격리성
______불변성
___동기화: 종류와 기법
______데이터 동기화
______조정과 제어 동기화
___정리
___참고 문헌

2부 메커니즘

3장 스레드

___스레드의 세부 사항
______윈도우 스레드란?
______CLR 스레드란?
______명시적 스레딩과 대안
___스레드의 탄생과 죽음
______스레드 생성
______스레드 종료
______DllMain
______스레드 로컬 저장소
___정리
___참고 문헌

4장 스레드 고급 활용
___스레드 상태
______유저 모드 스레드 스택
______내부 데이터 구조(KTHREAD, ETHREAD, TEB)
______컨텍스트
___스레드 생성과 종료 동작 원리
______스레드 생성 과정
______스레드 종료 과정
___스레드 스케줄링
______스레드 상태
______스레드 우선순위
______퀀텀
______우선순위와 퀀텀 조정
______실행 중지와 양보
______스레드 중단
______선호도: 특정 CPU를 선택해 실행
___정리
___참고 문헌

5장 윈도우 커널 동기화
___기본 개념: 시그널과 대기
______커널 객체를 사용하는 이유
______원시 코드에서 대기 처리
______관리되는 코드
______APC
___커널 객체 사용
______뮤텍스
______세마포어
______뮤텍스와 세마포어를 이용한 예제: 차단/유한 큐
______자동 리셋 이벤트/매뉴얼 리셋 이벤트
______대기 가능 타이머
______객체 시그널과 원자적인 대기
______커널 객체 디버깅
___정리
___참고 문헌

6장 데이터와 제어 동기화
___상호 배제
______Win32 임계 구역
______CLR 락
___읽기/쓰기 락
______윈도우 비스타의 가벼운 읽기/쓰기 락
______닷넷 프레임워크의 가벼운 읽기/쓰기 락
______닷넷 프레임워크의 레거시 읽기/쓰기 락
___조건 변수
______윈도우 비스타 조건 변수
______닷넷 프레임워크 모니터
______보호된 영역
___정리
___참고 문헌

7장 스레드 풀
___스레드 풀 101
______세 가지 방법: 윈도우 비스타와 윈도우 레거시, CLR
______공통 기능
___윈도우 스레드 풀
______윈도우 비스타 스레드 풀
______레거시 Win32 스레드 풀
___CLR 스레드 풀
______작업 아이템
______I/O 완성 포트
______타이머
______등록된 대기
______기억할 것: 스레드를 소유하면 안 됨
______스레드 풀 스레드 관리
______디버깅
______사례 연구: 스레드 풀의 최상위에서 우선순위와 격리 계층화
___스레드 풀을 사용할 때 성능
___정리
___참고 문헌

8장 비동기 프로그래밍 모델
___비동기 프로그래밍 모델
______만남: 네 가지 방법
______IAsyncResult 구현
______닷넷 프레임워크에서 APM이 사용되는 장소
______ASP 닷넷 비동기 페이지
___이벤트 기반의 비동기 패턴
______기본 개념
______취소 지원
______진도 보고와 증가 결과 지원
______닷넷 프레임워크에서 EAP가 사용되는 장소
___정리
___참고 문헌

9장 파이버
___파이버 개요
______긍정과 부정적인 측면
___파이버 사용
______새로운 파이버 생성
______스레드를 파이버로 변환
______스레드가 파이버인지 확인
______파이버 간의 전환
______파이버 삭제
______현재 스레드 전환 예제
___추가적인 파이버 관련 주제
______파이버 지역 저장소
______스레드 관련성
______사례 연구: 파이버와 CLR
___사용자 모드 스케줄러 구축
______구현
______스택 있는 차단과 스택이 없는 차단
___정리
___참고 문헌

3부 테크닉

10장 메모리 락과 락 없는 프로그래밍

___메모리 읽기와 쓰기 재배치
______실행되는 것이 항상 작성한 것과 동일한 건 아니다
______장벽으로서 임계 영역
______데이터 종속과 재배치에의 영향
___하드웨어 원자성
______일반 읽기와 쓰기의 원자성
______상호 락된 동작
___메모리 일관성 모델
______하드웨어 메모리 모델
______메모리 장벽
______닷넷 메모리 모델
______락 없는 프로그래밍
___낮은 락 코드 예제
______지연 초기화와 이중 검사 락
______비차단 스택과 ABA 문제
______데커 알고리즘 다시 보기
___정리
___참고 문헌

11장 동시성 위험 요소
___정확성 위험 요소
______데이터 경쟁
______재귀와 재진입
______락과 프로세스 종료
___라이브 위험 요소
______데드락
______놓친 깨움(놓친 펄스와 동일)
______라이브락
______락 수송
______스탬피드
______두 단계 춤
______우선순위 도치와 기아
___정리
___참고 문헌

12장 병렬 컨테이너
___소단위 락
______배열
______FIFO 큐
______연결 리스트
______사전(해시 테이블)
___락 없음
______일반 목적의 락 없는 FIFO 큐
______큐를 훔치는 작업
___조직 컨테이너
______생산자/소비자 데이터 구조
______장애물을 가진 단계적 계산
___정리
___참고 문헌

13장 데이터와 태스크 병렬 처리
___데이터 병렬성
______루프와 반복
___태스크 병렬성
______포크/조인 병렬성
______데이터 흐름 병렬성(미래와 약속)
______재귀
______파이프라인
______검색
___메시지 기반 병렬성
___오류에 대한 우려
______동시성 예외
______취소
___정리
___참고 문헌

14장 성능과 확장성
___병렬 하드웨어 구조
______SMP와 CMP, HT
______슈퍼 스칼라 실행
______메모리 계층
______비주얼 스튜디오의 프로파일링
___속도 향상: 병렬 코드와 순차 코드
______병렬 사용 결정
______병렬성 성능 향상 측정
______암달의 법칙
______임계 경로와 부하 불균형
______가비지 컬렉션과 확장성
___반복 대기
______윈도우에서 제대로 대기하는 방법
______유일 반복 락
______Mellor-Crummey-Scott(MCS) 락
___정리
___참고 문헌

4부 시스템

15장 입력과 출력

___중첩된 I/O
______중첩된 객체
______Win32 비동기 I/O
______닷넷 프레임워크 비동기 I/O
___I/O 취소
______현재 스레드에 비동기 I/O 취소
______다른 스레드에 동기 I/O 취소
______다른 스레드에 비동기 I/O 취소
___정리
___참고 문헌

16장 그래픽 사용자 인터페이스
___GUI 스레딩 모델
______STA
______반응성
___닷넷 비동기 GUI 특성
______닷넷 GUI 프레임워크
______동기 컨텍스트
______비동기 동작
______편리한 패키지: BackgroundWorker
___정리
___참고 문헌

5부 부록

부록 A 동시성 닷넷 프로그램에 재사용 가능한 라이브러리 설계

___동시성에 관한 고견
___세부 사항
______락 모델
______락 사용
______안전성
______스케줄링과 스레드
______확장성과 성능
______차단
___참고 문헌

부록 B 닷넷 병렬 프로그래밍 확장
___태스크 병렬 라이브러리
______미처리 예외
______부모와 자식
______취소
______미래
______지속
______태스크 관리자
______전체 요약: 유용한 병렬 클래스
______자체 복제 태스크
___병렬 LINQ
______버퍼링과 병합
______순서 유지
___동기 프리미티브
______ISupportsCancelation
______CountdownEvent
______LazyInit
______ManualResetEventSlim
______SemaphoreSlim
______SpinLock
______SpinWait
___동시성 컬렉션
______BlockingCollection
______ConcurrentQueue
______ConcurrentStack
___참고 문헌

출판사 서평

동시성·병렬성은 결국 모든 소프트웨어 개발자에게 중요한 부분이며, 운영체제에서 시작해 라이브러리를 거쳐 애플리케이션 자체까지 영향이 미친다. 이 책에서는 동시성에 대한 이해를 돕기 위해 동시성의 개념을 소개하고, 플랫폼 특징, 내부 동작, API에 관해 상세하게 기술한다. 그리고 동시성 소프트웨어를 작성하는 병렬 프로그래밍 시에 나타나는 공통 패턴과 최적의 실행, 알고리즘, 데이터 구조를 설명하고, 이런 내용을 바탕으로 전체 시스템 구조와 자주 발생하는 프로세스에서 중요한 내용을 다룬다.



저자 조 더피는 동시성과 하드... 더보기

북로그 리뷰 (0) 쓰러가기

도서 구매 후 리뷰를 작성하시면 통합포인트를 드립니다.
결제 90일 이내 작성 시 300원 / 발송 후 5일 이내 작성시 400원 / 이 상품의 첫 리뷰 작성 시 500원
(포인트는 작성 후 다음 날 적립되며, 도서 발송 전 작성 시에는 발송 후 익일에 적립됩니다.
외서/eBook/음반/DVD/GIFT 및 잡지 상품 제외)
안내
  • 해당도서의 리뷰가 없습니다.

Klover 평점/리뷰 (0)

문장수집 (0) 문장수집 쓰기 나의 독서기록 보기
※구매도서의 문장수집을 기록하면 통합포인트 적립 안내

교환/반품/품절안내

※ 상품 설명에 반품/교환 관련한 안내가 있는 경우 그 내용을 우선으로 합니다. (업체 사정에 따라 달라질 수 있습니다.)

교환/반품/품절안내
반품/교환방법 마이룸 > 주문관리 > 주문/배송내역 > 주문조회 > 반품/교환신청 ,
[1:1상담>반품/교환/환불] 또는 고객센터 (1544-1900)

※ 오픈마켓, 해외배송주문, 기프트 주문시 [1:1상담>반품/교환/환불]
    또는 고객센터 (1544-1900)
반품/교환가능 기간 변심반품의 경우 수령 후 7일 이내,
상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
반품/교환비용 변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
반품/교환 불가 사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등
  • 복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우 ((1)해외주문도서)
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에
    해당되는 경우
(1) 해외주문도서 : 이용자의 요청에 의한 개인주문상품으로 단순변심 및 착오로 인한 취소/교환/반품 시 ‘해외주문 반품/취소 수수료’ 고객 부담 (해외주문 반품/취소 수수료 : ①양서-판매정가의 12%, ②일서-판매정가의 7%를 적용)
상품 품절 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는
이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은
    소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의
    소비자 보호에 관한 법률에 따라 처리함

이 책의 원서번역서

안내

이 분야의 베스트

  • 윤인성
    16,200원
  • 이남호
    23,310원
  • 한국데이터진흥원
    16,200원
  • 이남호
    23,310원
  • 윤종식
    25,200원
더보기+

이 분야의 신간

  • 블레이크 J. 해리스
    25,200원
  • 길벗R&D
    18,900원
  • 로버트 C. 마틴
    26,100원
  • 박해선
    17,820원
  • 이기창
    31,500원
더보기+

바로가기

  • 우측 확장형 배너 2
  • 우측 확장형 배너 2

최근 본 상품