HOME > Detail View

Detail View

Windows 시스템 프로그래밍 : 윈도우즈 API 핵심 바이블 (Loan 18 times)

Material type
단행본
Personal Author
Hart, Johnson M. 류광, 역
Title Statement
Windows 시스템 프로그래밍 : 윈도우즈 API 핵심 바이블 / Johnson M. Hart 지음 ; 류광 옮김
Publication, Distribution, etc
서울 :   정보문화사,   2011  
Physical Medium
653 p. : 삽화 ; 24 cm
Varied Title
Windows system programming (4th ed.)
ISBN
9788956745145
General Note
부록: 예제 프로그램 활용법, 소스 코드 이식성: Windows, UNIX, Linux, 성능 측정 결과  
Bibliography, Etc. Note
참고문헌(p. 621-624)과 색인수록
Subject Added Entry-Topical Term
Application software --Development Application program interfaces (Computer software)
000 00000cam c2200205 c 4500
001 000045634756
005 20150302163515
007 ta
008 110314s2011 ulka b 001c kor
020 ▼a 9788956745145 ▼g 13000
035 ▼a (KERIS)BIB000012303666
040 ▼a 241050 ▼c 241050 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 0 ▼a 005.43 ▼a 005.3 ▼2 23
085 ▼a 005.43 ▼2 DDCK
090 ▼a 005.43 ▼b 2011
100 1 ▼a Hart, Johnson M.
245 1 0 ▼a Windows 시스템 프로그래밍 : ▼b 윈도우즈 API 핵심 바이블 / ▼d Johnson M. Hart 지음 ; ▼e 류광 옮김
246 1 9 ▼a Windows system programming ▼g (4th ed.)
246 3 ▼a 윈도우즈 시스템 프로그래밍
260 ▼a 서울 : ▼b 정보문화사, ▼c 2011
300 ▼a 653 p. : ▼b 삽화 ; ▼c 24 cm
500 ▼a 부록: 예제 프로그램 활용법, 소스 코드 이식성: Windows, UNIX, Linux, 성능 측정 결과
504 ▼a 참고문헌(p. 621-624)과 색인수록
630 0 0 ▼a Microsoft Windows (Computer file)
650 0 ▼a Application software ▼x Development
650 0 ▼a Application program interfaces (Computer software)
700 1 ▼a 류광, ▼e
945 ▼a KLPA

No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Main Library/Monographs(3F)/ Call Number 005.43 2011 Accession No. 111731801 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.43 2011 Accession No. 121207107 Availability Available Due Date Make a Reservation Service B M
No. 3 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.43 2011 Accession No. 121207108 Availability Available Due Date Make a Reservation Service B M
No. 4 Location Sejong Academic Information Center/Science & Technology/ Call Number 005.43 2011 Accession No. 151299686 Availability Available Due Date Make a Reservation Service M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Main Library/Monographs(3F)/ Call Number 005.43 2011 Accession No. 111731801 Availability Available Due Date Make a Reservation Service B M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.43 2011 Accession No. 121207107 Availability Available Due Date Make a Reservation Service B M
No. 2 Location Science & Engineering Library/Sci-Info(Stacks1)/ Call Number 005.43 2011 Accession No. 121207108 Availability Available Due Date Make a Reservation Service B M
No. Location Call Number Accession No. Availability Due Date Make a Reservation Service
No. 1 Location Sejong Academic Information Center/Science & Technology/ Call Number 005.43 2011 Accession No. 151299686 Availability Available Due Date Make a Reservation Service M

Contents information

Book Introduction

4판. 64비트 프로그래밍, 병렬성, 다중 코어 시스템을 비롯한 여러 필수 주제들의 새로운 내용을 추가로 다루었다. 견고한 코드 예제들이 갱신되었고, 전체적으로 최적화되었다. 예제들은 32비트 버전과 64비트 버전으로 나뉘며, 단일 프로세서 시스템은 물론 다중 프로세서 시스템 상에서 Windows 7과 Windows Vista, Windows Server 2008, Windows XP의 디버깅과 시험을 모두 거친 것이다. 예제 프로그램의 작동 방식을 명확하게 알 수 있도록 실행 모습을 담은 스크린샷도 본문에 추가되었다.

Windows의 기능과 특징을 API 수준에서 체계적으로 총망라하여 Windows 프로그래머에게 필요한 모든 서비스를 실용적으로 설명한다. 특히 Windows 함수들이 실제로 어떻게 작동하는지, 현실의 응용 프로그램들과 어떤 식으로 상호작용하는지를 강조한다. 단일 프로세스 응용 프로그램에 쓰이는 기능들로 시작해서 좀 더 복잡한 함수들과 다중 스레드 환경들로 전개된다. 다루는 주제들은 파일 시스템, 메모리 관리, 예외 처리, 프로세스, 스레드, 동기화, 프로세스 간 통신, Windows 서비스, 보안 등이다.

가장 실제적이고 핵심적인 내용을 통해
Windows 프로그래밍에 접근한다!


이 책에는 64비트 프로그래밍, 병렬성, 다중 코어 시스템을 비롯한 여러 필수 주제들의 새로운 내용을 추가로 다루었다. 견고한 코드 예제들이 갱신되었고, 전체적으로 최적화되었다. 예제들은 32비트 버전과 64비트 버전으로 나뉘며, 단일 프로세서 시스템은 물론 다중 프로세서 시스템 상에서 Windows 7과 Windows Vista, Windows Server 2008, Windows XP의 디버깅과 시험을 모두 거친 것이다. 예제 프로그램의 작동 방식을 명확하게 알 수 있도록 실행 모습을 담은 스크린샷도 본문에 추가되었다.

Windows의 기능과 특징을 API 수준에서 체계적으로 총망라하여 Windows 프로그래머에게 필요한 모든 서비스를 실용적으로 설명한다. 특히 Windows 함수들이 실제로 어떻게 작동하는지, 현실의 응용 프로그램들과 어떤 식으로 상호작용하는지를 강조한다. 단일 프로세스 응용 프로그램에 쓰이는 기능들로 시작해서 좀 더 복잡한 함수들과 다중 스레드 환경들로 전개된다. 다루는 주제들은 파일 시스템, 메모리 관리, 예외 처리, 프로세스, 스레드, 동기화, 프로세스 간 통신, Windows 서비스, 보안 등이다.

제4판의 주요 변경 사항
■ 다중 코어 시스템에서의 병렬성 활용과 성능 극대화
■ Windows, Linux, UNIX 간의 소스 코드 이식성 및 상호운용성 촉진
■ 64비트 주소 공간 활용과 64비트/32비트 이식성 보장
■ 스레드, 스레드 풀, 완료 포트를 이용한 성능 및 규모가변성 개선
■ 모든 시스템에서 프로그램의 안전성과 성능을 개선하기 위한 기법들
■ SRW 자물쇠, 조건 변수 등 Windows Vista부터 사용 가능한 Windows의 성능 개선 API 기능들

이 책의 대상
■ 사전 경험이나 숙련도와 상관없이 Windows 응용 프로그램 개발을 빠르게 배우고자 하는 모든 개발자
■ 기존의 Linux 또는 UNIX(POSIX API) 응용 프로그램을 Windows로 이식해야 하는 프로그래머와 소프트웨어 엔지니어들
■ 기존 코드를 이식해야 하는 부담 없이 새 프로젝트를 시작하는 개발자들
■ Windows의 기능과 원리를 이해하고자 하는 응용 프로그램 아키텍트들과 설계자들
■ COM과 .NET Framework를 사용하는 프로그래머들
■ 전산학 고학년 학생들과 시스템 프로그래밍 또는 응용 프로그램 개발을 다루는 초급 대학원 수준 강좌의 학생들. 다중 스레드 프로그래밍을 배우는 독자들이나 네트워크 응용 프로그램을 만들어야 하는 독자들


Information Provided By: : Aladin

Author Introduction

Johnson M.Hart(지은이)

Windows, Linux, UNIX 응용프로그램 개발과 개선, 유지보수를 전문으로 하는 소프트웨어 교육자이자 컨설턴트다.

류광(옮긴이)

주로 IT 분야 전문서를 옮기는 전업 번역가로, 《컴퓨터 프로그래밍의 예술(The Art of Computer Programming)》 시리즈와 《UNIX 고급 프로그래밍(Advanced Programming in UNIX Environment)》 제2판 및 제3판, 《Game Programming Gems》 시리즈를 포함해 80권 이상의 책을 번역했다. C++ 관련 번역서로는 《Effective Modern C++》, 《핵심 C++ 표준 라이브러리》, 《(C++로 배우는) 프로그래밍의 원리와 실제》, 《일반적 프로그래밍과 STL》 등이 있다. 홈페이지 ‘류광의 번역 이야기’(http://occamsrazr.net)와 게임 개발 사이트 GpgStudy(http://gpgstudy.com)를 운영한다.

Information Provided By: : Aladin

Table of Contents

역자의 글 
역자 소개 
서문 
감사의 말 
저자 소개 

1장 ㆍ Windows의 기초 
운영체제의 필수 기능 
Windows의 진화 
Windows 버전들 
업계에서 Windows의 위치 
Windows, 표준, 열린 시스템 
Windows의 원칙들 
32비트와 64비트 소스 코드 이식성 
표준 C 라이브러리: 파일 처리에 관련해서 
이 책을 활용하는 데 필요한 것들 
예제: 간단한 순차 파일 복사 
요약 
실습 과제 

2장 ㆍ Windows 파일 시스템과 문자 I/O 사용하기 
Windows의 여러 파일 시스템들 
파일 명명 방식 
파일 열기, 읽기, 쓰기, 닫기 
잠깐 곁가지: 유니코드와 일반적 문자들 
유니코드 전략들 
예제: 오류 처리 
표준 장치들 
예제: 여러 개의 파일들을 표준 출력으로 복사 
예제: 간단한 파일 암호화 
파일과 디렉터리 관리 
콘솔 I/O 
예제: 콘솔 출력과 입력 
예제: 현재 디렉터리 출력 
요약 
실습 과제 

3장 ㆍ 고급 파일 및 디렉터리 처리와 레지스트리 
64비트 파일 시스템 
파일 포인터 
파일 크기 얻기 
예제: 임의 레코드 갱신 
파일 특성과 디렉터리 처리 
예제: 파일 특성들 나열하기 
예제: 파일 시간 설정 
파일 처리 전략 
파일 잠금 
레지스트리 
레지스트리 관리 
예제: 레지스트리 키와 내용 나열하기 
요약 
실습 과제 

4장 ㆍ 예외 처리 
예외와 예외 처리부 
부동소수점 예외들 
예제: 오류를 예외로 취급하기 
종료 처리부 
예제: 종료 처리부를 이용한 프로그램 품질 개선 
예제: 필터 함수 사용하기 
콘솔 제어 처리부 
예제: 콘솔 제어 처리부 
벡터식 예외 처리 
요약 
실습 과제 

5장 ㆍ 메모리 관리, 메모리 맵드 파일, DLL 
Windows 메모리 관리 아키텍처 
힙 
힙 메모리 관리 
예제: 이진 검색 트리를 이용한 파일 정렬 
메모리 맵드 파일 
예제: 메모리 맵드 파일을 이용한 순차 파일 처리 
예제: 메모리 맵드 파일의 정렬 
예제: 기준 있는 포인터 사용하기 
동적 링크 라이브러리 
예제: 파일 변환 함수를 명시적으로 링크 
DLL 진입점 
요약 
실습 과제 

6장 ㆍ 프로세스 관리 
Windows 프로세스와 스레드 
프로세스 생성 
프로세스 신원 
핸들 복제 
프로세스의 종료 
프로세스 종료 기다리기 
환경 블록과 환경 문자열 
예제: 병렬적 패턴 검색 
다중 프로세서 환경의 프로세스 
프로세스 수행 시간 
예제: 프로세스 수행 시간 
콘솔 제어 사건 발생하기 
예제: 간단한 작업 관리 
예제: 작업 객체의 활용 
요약 
실습 과제 

7장 ㆍ 스레드와 스케줄링 
스레드의 개요 
스레드의 기초 
스레드 관리 
스레드에서 C 라이브러리 사용 
예제: 다중 스레드 패턴 검색 
성능상의 영향 
감독/일꾼 모형과 기타 스레드 적용 모형들 
예제: 병합 정렬 - 분할정복을 통한 다중 프로세서 활용 
프로그램 병렬성 소개 
스레드 지역 저장소 
프로세스와 스레드의 우선순위와 스케줄링 
스레드의 여러 상태들 
함정과 흔한 실수들 
시간 만료 대기 
파이버 
요약 
실습 과제 

8장 ㆍ 스레드 동기화 
스레드 동기화의 필요성 
스레드 동기화 객체들 
CRITICAL_SECTION 객체 
CRITICAL_SECTION으로 공유 변수 보호하기 
예제: 간단한 생산자/소비자 시스템 
뮤텍스 
세마포 
이벤트 
예제: 생산자/소비자 시스템 
뮤텍스와 CRITICAL_SECTION에 대한 추가적인 지침들 
추가적인 상호잠금 함수들 
메모리 관리의 성능 고려사항 
요약 
실습 과제 

9장 ㆍ 잠금과 성능, 그리고 NT6의 개선 사항들 
동기화가 성능에 미치는 영향 
CS 스핀 횟수를 이용한 다중 프로세서 성능 조율 
NT6 SRW 자물쇠 
스레드 풀로 스레드 경쟁 줄이기 
I/O 완료 포트 
NT6 스레드 풀 
요약: 잠금 성능 
병렬성 재고찰 
프로세서 친화도 
성능상의 함정들과 지침들 
요약 
실습 과제 

10장 ㆍ 고급 스레드 동기화 
조건 변수 모형과 안전성 속성들 
SignalObjectAndWait 사용법 
예제: 문턱값 장벽 객체 
대기열 객체 
예제: 다단계 파이프라인에서 대기열을 사용 
Windows NT6 조건 변수 
비동기 프로시저 호출 
비동기 프로시저 호출의 등록 
통지 가능 대기 상태 
안전한 스레드 취소 
응용 프로그램 이식성을 위한 Pthreads 사용 
스레드 스택과 스레드 개수 
설계, 디버깅, 검사 지침 및 조언 
Windows API 이외의 수단들 
요약 
실습 과제 

11장 ㆍ 프로세스 간 통신 
익명 파이프 
예제: 익명 파이프를 이용한 I/O 재지정 
명명된 파이프 
명명된 파이프 트랜잭션 함수들 
예제: 클라이언트/서버 명령줄 처리기 
클라이언트/서버 명령줄 처리기 해설 
메일슬롯 
파이프와 메일슬롯의 생성, 연결, 이름 
예제: 클라이언트들이 찾을 수 있는 서버 
요약 
실습 과제 

12장 ㆍ Windows 소켓을 이용한 네트워크 프로그래밍 
Windows 소켓 
소켓 서버 함수들 
소켓 클라이언트 함수들 
명명된 파이프와 소켓의 비교 
예제: 소켓 메시지 수신 함수 
예제: 소켓 기반 클라이언트 
예제: 새로운 기능이 추가된 소켓 기반 서버 
프로세스 내부 서버 
줄 지향적 메시지, DLL 진입점, TLS 
예제: 소켓 메시지를 위한, 스레드에 안전한 DLL 
예제: 또 다른 스레드 안전 DLL 전략 
데이터그램 
버클리 소켓 대 Windows 소켓 
Windows 소켓을 이용한 중첩 I/O 
Windows 소켓의 추가 기능 
요약 
실습 과제 

13장 ㆍ Windows 서비스 
Windows 서비스 만들기―개요 
main() 함수 
ServiceMain() 함수들 
서비스 제어 처리부 
이벤트 로깅 
예제: 서비스 “래퍼” 
Windows 서비스의 관리 
요약: 서비스의 작동과 관리 
예제: 서비스 제어 셸 
서비스와 커널 객체 공유하기 
서비스의 디버깅에 대해 
요약 
실습 과제 

14장 ㆍ 비동기 입출력과 I/O 완료 포트 
Windows 비동기 I/O의 개요 
중첩 I/O 
예제: 파일 핸들로 동기화하기 
예제: 중첩 I/O와 다중 버퍼를 이용한 파일 변환 
완료 루틴을 이용한 확장 I/O 
예제: 확장 I/O를 이용한 파일 변환 
다중 스레드를 이용한 비동기 I/O 
대기 가능 타이머 
예제: 대기 가능 타이머 사용 
I/O 완료 포트 
예제: I/O 완료 포트를 이용하는 서버 
요약 
실습 과제 

15장 ㆍ Windows 객체의 보안 
보안 특성 
보안의 개요: 보안 서술자 
보안 서술자의 제어 플래그들 
보안 식별자 
ACL의 관리 
예제: NTFS 파일에서 UNIX 스타일 허가 설정 흉내내기 
예제: 보안 특성을 초기화하기 
보안 서술자의 조회와 변경 
예제: 파일 허가 설정 읽기 
예제: 파일 허가 설정 바꾸기 
커널과 통신 객체의 보안 
예제: 프로세스와 스레드의 보안 
추가적인 보안 기능들의 개요 
요약 
실습 과제 

Appendix A ㆍ 예제 프로그램 활용법 
웹 부록의 구성 

Appendix B ㆍ 소스 코드 이식성: Windows, UNIX, Linux 
소스 코드 이식성 전략들 
Windows Services for UNIX 
Windows 기능성을 위한 Windows 소스 코드 이식성 
제2장, 3장: 파일 및 디렉터리 관리 
제4장: 예외 처리 
제5장: 메모리 관리, 메모리 맵드 파일, DLL 
제6장: 프로세스 관리 
제7장: 스레드와 스케줄링 
제8~10장: 스레드 동기화 
제11장: 프로세스 간 통신(IPC) 
제14장: 비동기 I/O 
제15장: Windows 객체의 보안 

Appendix C ㆍ 성능 측정 결과 
성능 실험의 구성 
시험들을 직접 실행해 보려면 

참고문헌 
찾아보기

New Arrivals Books in Related Fields