이미지 검색을 사용해 보세요
검색창 이전화면 이전화면
최근 검색어
인기 검색어

소득공제
Windows Internals 제5판
마이크로소프트 윈도우 커널 공식 가이드 양장
베스트
IT 모바일 top100 7주
가격
50,000
10 45,000
YES포인트?
2,500원 (5%)
5만원 이상 구매 시 2천원 추가 적립
결제혜택
카드/간편결제 혜택을 확인하세요
  • 개정판이 출간되었습니다

이미 소장하고 있다면 판매해 보세요.

  •  해외배송 가능?
  •  문화비소득공제 가능

이 분야의 이벤트

에이콘 윈도우 시스템 프로그래밍 시리즈

책소개

목차

1장 개념과 도구
윈도우 운영체제 버전
기본 개념과 용어
윈도우 API
서비스와 함수, 루틴
프로세스, 스레드, 잡
가상 메모리
커널모드와 유저모드
터미널 서비스와 멀티 세션
객체와 핸들
보안
레지스트리
유니코드
윈도우 내부 들여다보기
안정성 및 성능 모니터
커널 디버깅
윈도우 소프트웨어 개발 킷
윈도우 드라이버 킷
Sysinternals 툴
정리

2장 시스템 아키텍처
요구 사항과 디자인 목표
운영체제 모델
아키텍처 개요
이식성
대칭형 멀티프로세싱
확장성
클라이언트와 서버 버전의 차이
체크드 빌드
핵심 시스템 컴포넌트
환경 서브시스템과 서브시스템 DLL
Ntdll.dll
커널
하드웨어 추상 계층
디바이스 드라이버
시스템 프로세스
정리

3장 시스템 메커니즘
트랩 디스패칭
인터럽트 디스패칭
예외 디스패칭
시스템 서비스 디스패칭
객체 관리자
익스큐티브 객체
객체 구조
동기화
High-IRQL 동기화
LowIRQL 동기화
시스템 작업자 스레드
윈도우 전역 플래그
고급 로컬 프로시저 호출
커널 이벤트 트레이싱
Wow64
Wow64 프로세스 주소 공간 배치
시스템 호출
예외 전달
사용자 콜백
파일 시스템 리디렉션
레지스트리 리디렉션과 리플렉션
I/O 제어 요청
16비트 인스톨러 애플리케이션
프린팅
제약
유저모드 디버깅
커널 지원
네이티브 지원
윈도우 서브시스템 지원
이미지 로더
이른 시점의 프로세스 초기화
로드된 모듈의 데이터베이스
임포트 파싱
포스트 임포트 프로세스 초기화
하이퍼바이저(Hyper-V)
파티션
루트 파티션
자식 파티션
하드웨어 에뮬레이션과 지원
커널 트랜잭션 관리자
핫패치 지원
커널 패치 보호
코드 무결성
정리

4장 관리 메커니즘
레지스트리
레지스트리를 살펴보고 변경하기
레지스트리 사용
레지스트리 데이터 유형
레지스트리의 논리적 구조
트랜잭션 레지스트리(TxR)
레지스트리 행위 감시
레지스트리 내부
서비스
서비스 애플리케이션
서비스 제어 관리자
서비스 시작
시작 오류
마지막으로 성공한 구성으로 부팅하기
서비스 실패
서비스 셧다운
공유 서비스 프로세스
서비스 태그
서비스 제어 프로그램
윈도우 관리 도구
WMI 아키텍처
공급자
CIM과 MOF 언어
클래스 연관화
WMI 구현
WMI 보안
윈도우 진단 인프라
WDI 조율
진단 정책 서비스
진단 기능
정리

5장 프로세스, 스레드, 잡
프로세스 내부 구조
데이터 구조체
커널 변수
성능 카운터
관련된 함수
보호 프로세스
CreateProcess 흐름
단계 1: 매개 변수와 플래그의 유효성 검사와 변환
단계 2: 실행할 이미지 열기
단계 3: 윈도우 익스큐티브 프로세스 객체 생성
단계 4: 초기 스레드와 스택이나 컨텍스트 생성
단계 5: 윈도우 서브시스템 특정적인 후반부 초기화
단계 6: 초기 스레드의 실행 시작
단계 7: 새 프로세스의 컨텍스트에서 프로세스 초기화 수행
스레드 내부 구조
데이터 구조체
커널 변수
성능 카운터
관련 함수
스레드의 탄생
스레드 활동성 검사
보호 프로세스 스레드의 제약
워커 팩토리(스레드 풀)
스레드 스케줄링
윈도우에서의 스케줄링 개요
우선순위 수준
윈도우 스케줄링 API
관련 도구
실시간 우선순위
스레드 상태
디스패처 데이터베이스
퀀텀
스케줄링 시나리오
컨텍스트 전환
유휴 스레드
우선순위 상승
멀티프로세서 시스템
멀티프로세서 스레드 스케줄링 알고리즘
CPU 속도 제한
잡 객체
정리

6장 보안
보안 등급
신뢰성 있는 컴퓨터 시스템 평가 지침(TCSEC)
공용 평가 기준(CC)
보안 시스템 구성 요소
객체 보호
접근 검사
보안 디스크립터와 접근 제어
계정 권한과 특권
계정 권한
특권
슈퍼 특권
보안 감사
로그온
Winlogon 초기화
사용자 로그온 과정
사용자 계정 컨트롤
가상화
상승
소프트웨어 제한 정책
정리

7장 I/O 시스템
I/O 시스템 컴포넌트
I/O 관리자
전형적인 I/O 처리
디바이스 드라이버
디바이스 드라이버의 유형
드라이버의 구조
드라이버 객체와 디바이스 객체
장치 열기
I/O 처리
I/O의 유형
단일 계층 드라이버의 I/O 요청
계층 드라이버에 대한 I/O 요청
I/O 취소
I/O 완료 포트
I/O 우선순위화
드라이버 베리파이어
커널모드 드라이버 프레임워크(KMDF)
KMDF 드라이버의 구조와 동작
KMDF 데이터 모델
KMDF I/O 모델
유저모드 드라이버 프레임워크(UMDF)
플러그앤플레이(PnP) 관리자
플러그앤플레이 지원 레벨
플러그앤플레이를 위한 드라이버 지원
드라이버 로딩, 초기화, 설치
드라이버 설치
전원 관리자
전원 관리자의 동작
드라이버의 전원 동작
드라이버와 애플리케이션의 장치 전원 제어
정리

8장 스토리지 관리
스토리지 ?어
디스크 드라이버
Winload
디스크 클래스와 포트, 미니포트 드라이버
디스크 디바이스 객체
파티션 관리자
볼륨 관리
기본 디스크
동적 디스크
멀티파티션 볼륨 관리
볼륨 이름 공간
볼륨 I/O 동작
가상 디스크 서비스
비트락커 드라이브 암호화
비트락커 아키텍처
암호화 키
신뢰된 플랫폼 모델(TPM)
비트락커 부트 과정
비트락커 키 복구
전체 볼륨 암호화 드라이버
비트락커 관리
볼륨 쉐도우 복사본 서비스
쉐도우 복사본
VSS 아키텍처
VSS 동작
윈도우에서의 활용
정리

9장 메모리 관리
메모리 관리자 소개
메모리 관리자 컴포넌트
내부 동기화
메모리 사용량 측정
메모리 관리자가 제공하는 서비스
큰 페이지와 작은 페이지
페이지 예약과 커밋
메모리 락킹
할당 단위
공유 메모리와 맵 파일
메모리 보호
실행 방지 페이지 보호
Copy-on-Write
주소 윈도우 확장
커널모드 힙(시스템 메모리 풀)
풀 크기
풀 사용량 모니터링
룩 어사이드 리스트
힙 관리자
힙의 종류
힙 관리자 구조
힙 동기화
저단편화 힙(LFH)
힙 보안 특징
힙 디버깅 특징
페이지힙
가상 주소 공간 배치
x86 주소 공간 배치
x86 시스템 주소 공간 배치
x86 세션 공간
시스템 페이지 테이블 엔트리
64비트 주소 공간 배치
64비트 가상 주소 제약
동적인 시스템 가상 주소 공간 관리
시스템 가상 주소 공간 할당량
사용자 주소 공간 배치
주소 변환
x86 가상 주소 변환
변환 룩 어사이드 버퍼(TLB)
물리 주소 확장(PAE)
IA64 가상 주소 변환
x64 가상 주소 변환
페이지 폴트 핸들링
유효하지 않은 PTE
프로토타입 PTE
인 페이징 IO
페이지 폴트 충돌
클러스터 페이지 폴트
페이지 파일
스택
유저 스택
커널 스택
DPC 스택
가상 주소 디스크립터(VAD)
프로세스 VAD
VAD 교체
NUMA
섹션 객체
드라이버 베리파이어
페이지 프레임 번호 데이터베이스
페이지 리스트 다이나믹스
페이지 우선순위
변경 페이지 라이터
PFN 데이터 구조
물리 메모리 제한
윈도우 클라이언트 메모리 제한
워킹셋
요구 페이징
논리적 프리패처
배치 정책
워킹셋 관리
밸런스 셋 관리자와 스와퍼
시스템 워킹셋
메모리 통지 이벤트
선행적인 메모리 관리(슈퍼패치)
컴포넌트
트레이싱과 로깅
시나리오
페이지 우선순위와 리밸런싱
견고한 성능
레디부스트
레디드라이브(ReadDrive)
정리

10장 캐시 관리자
캐시 관리자의 주요 특징
단일, 중앙 집중형 시스템 캐시
메모리 관리자
캐시 일관성
가상 블록 캐싱
스트림 기반 캐싱
복구 가능 파일 시스템 지원
캐시의 가상 메모리 관리
캐시 크기
캐시 가상 크기
캐시 워킹셋 크기
물리적인 캐시 크기
캐시 데이터 구조
시스템 전역 캐시 데이터 구조
파일 단위 캐시 데이터 구조체
파일 시스템 인터페이스
캐시로 복사/캐시로부터의 복사
매핑 및 고정 인터페이스를 통한 캐싱
직접 메모리 액세스 인터페이스를 이용한 캐싱
패스트 I/O
미리 읽기와 이면 쓰기
지능형 미리 읽기
재기록 캐싱과 지연 쓰기
쓰기 조절
시스템 스레드
정리

11장 파일 시스템
윈도우 파일 시스템 포맷
CDFS
UDF
FAT12와 FAT16, FAT32
exFAT
NTFS
시스템 드라이버 아키텍처
로컬 FSD
원격 FSD
파일 시스템 동작
파일 시스템 필터 드라이버
파일 시스템 문제 해결
프로세스 모니터의 기본 모드와 고급 모드
프로세스 모니터를 이용한 문제 해결 기법
공통 로그 파일 시스템
마샬링
로그 유형
로그 배치
로그 순서 번호
로그 블록
소유자 페이지
가상 LSN을 물리적인 LSN으로 변환하기
관리 정책
NTFS 설계 목표와 기능
하이엔드 파일 시스템 요구 사항
NTFS 고급 기능
NTFS 파일 시스템 드라이버
디스크상의 NTFS 구조
볼륨
클러스터
마스터 파일 테이블
파일 참조 번호
파일 레코드
파일명
상주 속성과 비상주 속성
데이터 압축과 희소 파일
변경 저널 파일
인덱싱
객체 ID
쿼터 추적
통합 보안
리파스 포인트
트랜잭션 지원
NTFS 복구 지원
설계
메타데이터 로깅
복구
NTFS 손상 클러스터 복구
자체 복구
암호화 파일 시스템 보안
파일을 최초로 암호화하기
해독 프로세스
암호화된 파일 백업하기
정리

12장 네트워킹
윈도우 네트워킹 아키텍처
OSI 참조 모델
윈도우 네트워크 구성 요소
네트워킹 API
윈도우 소켓
윈속 커널(WSK)
원격 프로시저 호출
웹 액세스 API
네임드 파이프와 메일 슬롯
NetBIOS
기타 네트워킹 API
다중 리디렉터 지원
다중 공급자 라우터
다중 UNC 공급자
이름 해석
도메인 이름 시스템
윈도우 인터넷 이름 서비스
피어 이름 해석 프로토콜
위치와 토폴로지
네트워크 위치 인식
링크 계층 토폴로지 검색(LLTD)
프로토콜 드라이버
윈도우 필터링 플랫폼
NDIS 드라이버
NDIS 미니포트의 변형
연결 지향형 NDIS
원격 NDIS
QoS
바인딩
계층화된 네트워크 서비스
원격 액세스
액티브 디렉터리
네트워크 로드 밸런싱
분산 파일 시스템과 DFS 복제
정리

13장 시작과 종료
부트 과정
BIOS 사전 부트
BIOS 부트 섹터와 Bootmgr
EFI 부트 프로세스
커널 초기화와 익스큐티브 서브시스템
Smss와 Csrss, Wininit
레디부트(ReadyBoot)
자동 시작하는 이미지
부팅 문제나 시작 문제 해결
마지막으로 성공한 구성
안전 모드
윈도우 복구 환경(WinRE)
일반적인 부트 문제 해결
셧다운
정리

14장 크래시 덤프 분석
윈도우가 크래시되는 이유
블루 스크린
크래시 문제 해결하기
크래시 덤프 파일
크래시 덤프 생성
윈도우 오류 보고
온라인 크래시 분석
기본 크래시 덤프 분석
Notmyfault
기본 크래시 덤프 분석
심층 분석
크래시 문제 해결 도구 사용
버퍼 오버런과 메모리 손상, 특수 풀
코드 덮어쓰기와 시스템 코드 쓰기 방지
고급 크래시 덤프 분석
스택 파괴
행이나 응답 없는 시스템
크래시 덤프가 없을 때
정리

저자 소개

저자 : 마크 러시노비치 Mark E. Russinovich
마이크로소프트 윈도우 코어 운영 시스템(Windows Core Operating System) 부서의 기술자이면서 『Windows Internals』 책 시리즈의 공동 저자이고, Sysinternals 웹 사이트의 공동 설립자다. 또한 마이크로소프트 테크넷(Microsoft TechNet)과 윈도우 IT 프로(Windows IT Pro) 잡지의 편집 위원이면서 마이크로소프트의 기술적 컨퍼런스에서 많은 발표를 하고 있다.
저자 : 데이비드 솔로몬 David A. Solomon
Windows Internals 책 시리즈의 공동 저자이면서 마이크로소프트 등 세계 유수의 회사에서 윈도우 내부에 대한 내용을 가르친다. 마이크로소프트의 기술 컨퍼런스에서 주기적으로 발표를 하고 있으며, 이전에는 VMS 운영체제의 수석 개발자였다.
저자 : 알렉스 이오네스쿠 Alex Ionescu
로우레벨 시스템 소프트웨어와 운영체제 설계에 특화된 소프트웨어 엔지니어이자 컨설턴트다. 데이비드 솔로몬과 함께 Windows Internals 코스를 가르치며, 보안 관련 커뮤니티에서 활동 중이다.
역자 : 안철수 연구소 기반기술팀
파일 시스템과 네트워크, 가상화, 매체제어, 게임 보안 등의 여러 분야에 관여된 윈도우 보안 시스템 프로그램 및 커널 프로그램을 개발하며 보안 이슈에 관련된 선행적인 기술 연구와 기반 기술 개발을 수행하는 데 있어 애정을 갖고 열정적으로 함께하는 팀이다. 이 책의 번역에는 김성현 책임, 김광태, 강경완, 박희안, 황용석, 김경현, 고항훈, 김현철 선임, 황두환, 김창걸, 그리고 김점갑 수석이 참여했다.



김점갑

경북대학교 컴퓨터 공학과를 졸업한 후 삼성전자에서 GNU 컴파일러를 기반으로 ARM CORE 컴파일러 포팅/개발과, 다양한 디바이스 드라이버를 개발했다. 현재는 안철수 연구소에서 보안 관련 시스템 프로그램 개발 업무에 매진하고 있다. 옮긴 책으로 에이콘출판사에서 펴낸 『실전 윈도우 디버깅』과 『WDF』가 있다.



김성현

안철수연구소에서 10년간 V3Pro2002, V3Pro2004, V3 Internet Security 2007, SpyZero 2.0 등의 제품에 탑재되는 실시간 감시 필터 드라이버와 엔진 드라이버를 개발했고, 현재는 기반기술 팀에서 V3의 보안 기능을 향상시키는 연구를 진행하고 있다. 에이콘출판사에서 펴낸 『WinDbg로 쉽게 배우는 Windows Debugging』을 공저했다.



박희안

안철수 연구소에서 10년간 EnDe, HackShield 등의 제품에 탑재되는 보안 관련 드라이버 및 소프트웨어들을 개발했고 현재는 가상화를 활용한 보안 관련 제품에 대한 연구를 진행하고 있다.



강경완

안철수 연구소에서 10년간 V3Pro2004, V3 Internet Security 2007등의 제품에 탑재되는 네트워크 관련 드라이버들을 개발했고 현재는 가상화를 활용한 망 분리관련 연구를 진행하고 있다.



김광태

캐나다 토론토 조지브라운 대학 졸업후 DVR 시스템 영상 압축부분, P2P 공유 프로그램 등을 개발했고, 현재는 안철수연구소 기반기술팀에서 가상화기반으로 하는 보안시스템을 개발 중이다.

품목정보

발행일
2010년 07월 28일
판형
양장 ?
쪽수, 무게, 크기
1440쪽 | 2310g | 188*254*70mm
ISBN13
9788960771437

책 속으로

이 책을 읽는 모든 IT 엔지니어 독자들께,

이 책은 마이크로소프트의 테크니컬 펠로우(Technical Fellow, 마이크로소프트의 CVP(부사장급)으로서 현재 23명이 있음)로서 수많은 sysinternals tools를 개발하고 전 세계의 IT 엔지니어들에게 문제 해결에 큰 도움을 주고 있는 마크 러시노비치가 대표 저자로서 집필한 책으로 윈도우 아키텍처의 핵심을 기술하고 있습니다. 윈도우 운영체제에 대해 깊이 있는 통찰을 전해주는 고급 IT 엔지니어를 위한 책으로서, 문장 하나하나가 모두 소스코드에 기반을 둔 내용들이므로 윈도우에 경험이 있고 개발 경력이 있는 분이라면 이해 하기에 전혀 어려움이 없을 것입니다. 따라서, 윈도우를 정복하고자 하는 모든 분께 이 책은 가히 현존하는 최고의 책이라고 할 수 있습니다.

저는 이 책의 원본인 『Windows Internals 5th Edition』의 핵심 테크티컬 리뷰어(core technical reviewer)로서 근 1년간 참여한 바 있습니다. 마이크로소프트 운영체제인 윈도우 서버 2008(Windows Server 2008)과 비스타(Vista)에 대해 개발자나 IT 엔지니어들이 정확하고 깊이 있는 지식을 얻도록 영어 문장 하나 하나에 심혈을 기울여 많은 의견을 이 책의 저자들인 마크 러시노비치(Mark Russinovich)나 데이비드 솔로몬(David Solomon)에게 보냈던 기억이 엊그제 같은데 벌써 한국어판 버전이 나오게 된 데 매우 기쁘게 생각합니다.

저 또한 이 책의 열렬한 독자이면서 기술 감수자(tech reviewer)로서 그리고 지난 10년 이상 마이크로소프트 사에 근무하면서 수많은 디버깅과 덤프 분석을 통해서 깊이 있는 윈도우 지식을 얻을 수 있었습니다. 그 지식을 바탕으로 조금이나마 이 책의 원저자들에게 도움이 되지 않았을까 싶습니다.

보안과 윈도우 운영체제의 전문가들인 훌륭한 역자들이 심혈을 기울여 번역해주신 역자들께 진심으로 감사의 말씀을 전하며, 개발자 여러분과 함께 이 책의 출간을 다시 한 번 축하합니다.

- 김관현, 마이크로소프트 Escalation Engineer


『Windows Internals 제5판』 서문을 작성하게 돼 기쁘고 영광으로 생각합니다. 이전판 이후에 윈도우에는 중요한 변화가 많았습니다. 데이비드, 마크, 알렉스는 변경된 사항을 언급하기 위해 책을 훌륭하게 수정했습니다. 『Windows Internals』를 처음 접하거나 커널 개발에 오랜 경험이 있더라도 이 책에서 운영체제 설계의 일반적인 원리뿐만 아니라 윈도우의 핵심 메커니즘의 이해도를 높이는 데 도움을 주는 자세한 분석과 예제를 보게 될 것입니다.

오늘날 윈도우는 컴퓨팅 세계에서 전례가 없이 넓고 깊게 퍼져있습니다. 오리지널 윈도우 NT 설계의 변종은 X박스 게임 콘솔에서부터 데스크톱과 노트북 컴퓨터, 수십 개의 프로세서와 페타바이트(petabyte) 스토리지를 가진 서버 클러스터에 이르기까지 모든 곳에서 동작합니다. 운영체제 설계에 있어 흥미롭고 혁신적인 많은 영역을 제공하기 위해 하이퍼바이저와 64비트 컴퓨팅, 멀티코어(multicore)와 다중 코어(many-core) 프로세서 디자인, 플래시 기반 스토리지, 무선과 피어투피어 네트워킹 같은 진화를 계속하고 있습니다.

이런 혁신적인 분야 중 하나는 보안입니다. 지난 10년에 걸쳐 컴퓨팅 산업 전체(그리고 부분적으로는 마이크로소프트)는 거대한 신종 위협에 직면해왔고 보안은 많은 고객에게 있어 최우선 과제였습니다. 블래스터(Blaster)와 새서(Sasser) 같은 공격은 전체 인터넷을 위협했고, 윈도우는 태풍의 눈에 해당했습니다. 더 이상 일을 평범하게 할 여유가 없음은 명확했습니다. 윈도우에 들어간 많은 편리성이나 단순화된 기능들이 사악한 목적으로 윈도우를 공격하는 데 부메랑처럼 사용됐습니다. 먼저, 악명을 높이기 위해 십대 해커들이 시스템 내로 침입하거나 단체의 웹 사이트에 낙서를 추가했습니다. 그러나 곧바로 공격은 격렬해졌고 언더그라운드로 들어갔습니다. 해커는 좀 더 교묘해졌고 조사를 피해 갔습니다. 요즘은 좀처럼 뉴스에서 바이러스나 웜에 대해 다루지 않습니다. 그러나 분명한 것은 타겟화된 공격을 통한 봇넷과 인증 도용을 식별하는 것은 오늘날 산업과 정부 첩보활동에 있어 큰 비즈니스입니다.

2002년 1월, 빌 게이츠는 지금은 유명해진 '신뢰할 수 있는 컴퓨팅' 메모를 모든 마이크로소프트 임직원에게 보냈습니다. 그 메모는 향후 어떻게 소프트웨어를 개발하고 비즈니스를 수행할 것인지에 대해 공감할 수 있는 방향을 제시하고 있었습니다. 거의 윈도우 엔지니어링 팀 전체가 윈도우 XP SP2에 집중했습니다. 이 서비스 팩은 거의 대부분이 운영체제의 보안 향상에 중점을 뒀습니다. 보안 개발 라이프사이클(Security Development Lifecycle, SDL)이 개발됐고 모든 마이크로소프트 제품, 특히 보안을 지상 최? 과제로 설계된 첫 번째 운영체제인 윈도우 비스타에 적용됐습니다. SDL은 보안 소프트웨어 개발에 대해 엄격한 가이드라인과 절차를 명확히 하고 있습니다. 소스코드에서부터 시스템 바이너리와 일반적인 취약점에 대한 네트워크 프로토콜에 이르기까지 모든 것을 검사할 수 있는 복잡한 툴이 개발됐습니다. 새로운 보안 취약점이 발견될 때마다 분석되고, 잠재적인 공격 벡터를 다룰 수 있는 해결책이 개발됐습니다. 윈도우 비스타는 출시된 지 2년이 지났고 그것은 지금까지의 윈도우 중 가장 안전한 버전입니다. 실제로 일부 산업 분석가는 오늘날 판매되고 있는 다목적 운영체제 중 가장 안전한 운영체제라고까지 언급했습니다.

윈도우 팀은 과거 수년 동안 지속적으로 혁신해 왔습니다. 윈도우 XP와 윈도우 서버 2003, 윈도우 서버 2003 R2, 윈도우 XP SP2, 윈도우 비스타, 윈도우 서버 2008, 하이퍼-V는 훌륭한 여러 윈도우 제품군과 마찬가지로 모두 주요 업적이자 커다란 성공이었습니다.

솔직히 이보다 더 흥미 있고 도전적인 주제는 생각할 수가 없습니다. 이보다 더 권위 있고 잘 써진 책을 생각할 수도 없습니다. 데이비드, 마크, 알렉스는 윈도우 아키텍처를 철저히 분석하고 체험 학습을 위한 진단 도구를 준비했습니다. 우리 모두가 윈도우에서 작업하는 것을 즐기는 것처럼 윈도우에 대해 읽고 배우는 것을 즐길 수 있기를 희망합니다.

Ben Fathi
마이크로소프트 윈도우 코어 개발 부사장

격변하는 기술의 흐름 속에서 윈도우 NT가 처음 세상에 출현한 1993년 이래로 이 책의 시리즈도 함께 시작되어 벌써 5판 째를 맞이한다. 개인용 PC와 서버를 아우르는 윈도우 운영체제의 방대하고도 심도 있는 주제를 이보다 잘 다룬 출판물은 아마도 당분간은 보기가 힘들 것이다.

이번 제5개정판의 내용을 알아보기 전에 먼저 일련의 이들 시리즈에서 주요 변경 사항을 간략히 살펴보자. 윈도우 NT4.0을 토대로 David Solomon에 의해 1998년에 집필된 『인사이드 윈도우 NT』는 이 시리즈의 제2개정판으로서 NT 4.0에 추가된 여러 기능을 다뤘다. 즉, 그래픽 엔진을 위한 클라이언트/서버 모델이 구현됐으며 대부분의 USER 및 GDI 구성 요소를 커널모드로 이동해 성능향상을 꾀했다.

윈도우 2000을 대상으로 데이비드 솔로몬과 마크 러시노비치에 의해 집필된 『인사이드 윈도우 2000』은 제3판으로서 잡(Job)에 대한 개념이 소개됐고, 시스템의 시작과 셧다운에 대한 설명, 플러그앤플레이 및 전원 관리자의 기능, 윈도우 관리도구(WMI), 스토리지 관리, 네트워킹에 대한 내용이 추가됐다.

윈도우 XP와 윈도우 서버 2003을 대상으로 마크와 데이비드에 의해 작성된 『마이크로소프트 윈도우 인터널』은 제4판으로서 크래시 덤프 분석에 관한 내용이 신규로 추가됐으며 IA-64와 x64에 대한 메모리 관리 메커니즘과 Wow64에 대한 개념도 또한 소개됐다.

윈도우 비스타를 대상으로 데이비드와 마크, 알렉스가 작성한 제5판인 본 책은 '커널 패치 보호', 새로운 드라이버 모델인 KMDF와 UMDF를 소개하고 또한 보안적인 측면에서 사용자 계정 제어(UAC)를 다루며 스토리지 관리에 있어서 비트라커(BitLocker)의 기능, 멀티프로세서에서의 향상된 스레드 스케줄링 기법, 네트워크 주제로 윈도우 필터링 플랫폼(WFP) 등을 새롭게 소개한다.

앞서 기술한 이런 기술적 항목은 지난 10여 년 동안 PC 시장의 컴퓨팅 환경을 주도해온 기술이며 트렌드다. 이런 기술들을 익히고 하나씩 습득하노라면 이들 기술의 흐름을 선도하고 항상 개척하는 마이크로소프트의 경이적인 노력과 장인 정신을 엿볼 수 있는 대목이기도 하다.

IT 분야에서 프로그램에 종사하는 모든 개발자라면(반드시 윈도우 운영체제가 아니어도 좋다) 관련 기술들의 개념을 숙지하는 것만으로도 어느 분야에 종사하든지 당신이 성숙된 개발자로서 나아가는 데 크나큰 밑거름이 될 것이라고 확신한다.

대표 역자 김점갑

★ 저자 서문 ★

『Windows Internals 제5판』은 윈도우 비스타와 윈도우 서버 2008 운영체제의 핵심 컴포넌트가 내부적으로 어떻게 동작하는지를 이해하고자 하는 고급 컴퓨터 전문가(개발자와 시스템 관리자 모두)를 위한 책이다. 이 지식을 통해 개발자는 윈도우 플랫폼에서 애플리케이션을 개발할 때 설계 옵션에 대한 근거를 더 잘 이해할 수 있다. 이런 지식은 복잡한 문제를 디버깅할 때 개발자를 도울 수 있다. 이 정보는 시스템 관리자에게도 도움이 된다. 이면에서 운영체제가 어떻게 동작하는지 이해하고 있으면 시스템의 동작 성능을 이해하기 쉽고, 뭔가 잘못됐을 때 시스템 문제에 대한 트러블슈팅을 좀 더 쉽게 할 수 있다. 이 책을 읽은 후 윈도우가 어떻게 동작하는지, 그리고 왜 그렇게 하는지 좀 더 잘 이해하게 될 것이다.

---본문중에서

출판사 리뷰

윈도우의 동작 기전을 이해하는 데 필요한 자세한 내부 구조와 아키텍처 완벽 가이드. 운영체제의 핵심 컴포넌트가 내부적으로 어떻게 동작하는지를 이해하고자 하는 개발자와 시스템 관리자 등 고급 컴퓨터 전문가 모두를 위한 책.

세계적으로 유명한 윈도우 내부 전문가들이 윈도우 운영체제 핵심 컴포넌트들의 내부 동작 방식을 설명한다. 제 5 개정판에서는 윈도우 서버 2008과 윈도우 비스타 관련 전체 내용이 업데이트됐고, 실제 윈도우 내부 동작을 확인할 수 있는 실습 등 시스템 디자인 아키텍처의 핵심과 디버깅, 성능과 관련된 내용들이 수록돼 있다.

이 책에서 다루는 내용

[윈도우 구조와 커널 완벽 해부]
■ 객체 관리자에서부터 레지스트리까지 핵심 시스템과 관리 메커니즘의 동작 기전
■ 커널 디버거 등의 툴을 이용해 내부 시스템 데이터 구조체 들여다 보기
■ 스케줄러 우선순위와 CPU 교체 정책 알고리즘
■ 윈도우가 물리 메모리와 가상 메모리를 어떻게 다루는지 이해한다.
■ 윈도우 네트워킹과 관련된 API, 프로토콜 드라이버, 네트워크 어댑터 드라이버 등 네트워킹 스택
■ 파일 시스템 액세스 문제와 시스템 부팅 관련 문제 해결
■ 크래시 분석 방법

이 책의 구성

1장과 2장('개념과 도구'와 '시스템 아키텍처')은 각종 정의와 용어 설명, 그리고 이 책의 전반에 걸쳐 사용되는 개념의 기반을 제시한다. 3장과 4장('시스템 메커니즘'과 '관리 메커니즘')은 시스템의 핵심 메커니즘을 설명한다. 5장에서부터 12장까지는 운영체제의 핵심 컴포넌트(프로세스와 스레드, 잡, 보안, I/O 시스템, 스토리지 관리, 메모리 관리, 캐시 관리자, 파일 시스템, 네트워킹)를 설명한다. 마지막 13장과 14장은 시작과 종료 절차와, 크래시 덤프 분석을 다룬다.

리뷰/한줄평0

리뷰

첫번째 리뷰어가 되어주세요.

한줄평

첫번째 한줄평을 남겨주세요.