Windows Internals Vol. 1
도서명:Windows Internals Vol. 1
저자/출판사:파벨,요시포비치,알렉스,이오네스쿠,마크,러시노비치,데/에이콘출판
쪽수:1232쪽
출판일:2018-01-19
ISBN:9791161750941
목차
1장. 개념과 툴
__윈도우 운영체제 버전
____윈도우 10과 향후 윈도우 버전
____윈도우 10과 원코어
__기본 개념과 용어
____윈도우 API
____서비스와 함수, 루틴
____프로세스
____스레드
____잡
____가상 메모리
____커널 모드와 유저 모드
____하이퍼바이저
____펌웨어
____터미널 서비스와 다중 세션
____객체와 핸들
____보****
____레지스트리
____유니코드
__윈도우 내부 들여다보기
____성능 모니터와 자원 모니터
____커널 디버깅
____윈도우 소프트웨어 개발 킷
____윈도우 드라이버 킷
____Sysinternals 툴
__결론
2장. 시스템 아키텍처
__요구 사항과 설계 목표
__운영체제 모델
__아키텍처 개요
____이식성
____대칭형 멀티프로세싱
____확장성
____클라이언트와 서버 버전의 차이
____체크드 빌드
__가상화 기반의 보****아키텍처 개요
__핵심 시스템 컴포넌트
____환경 서브시스템과 서브시스템 DLL
____기타 서브시스템
____익스큐티브
____커널
____하드웨어 추상화 계층
____디바이스 드라이버
____시스템 프로세스
__결론
3장. 프로세스와 잡
__프로세스 생성
____CreateProcess* 함수 인자
____윈도우 최신 프로세스 생성
____다른 종류의 프로세스 생성
__프로세스 내부 구조
__보호 프로세스
____보호 프로세스 라이트(PPL)
____서드파티 PPL 지원
__최소 프로세스와 피코 프로세스
____최소 프로세스
____피코 프로세스
__트러스트릿(안전한 프로세스)
____트러스트릿 구조체
____트러스트릿 정책 메타데이터
____트러스트릿 속성
____시스템 내장 트러스트릿
____트러스트릿 신분
____격리된 유저 모드 서비스
____트러스트릿 접근 가능 시스템 호출
__CreateProcess 흐름
____1단계: 매개변수와 플래그의 유효성 검사 및 변환
____2단계: 실행할 이미지 열기
____3단계: 윈도우 익스큐티브 프로세스 객체 생성
____4단계: 초기 스레드와 그 스택 및 컨텍스트 생성
____5단계: 윈도우 서브시스템 특정적인 초기화 수행
____6단계: 초기 스레드의 실행 시작
____7단계: 새 프로세스의 컨텍스트에서 프로세스 초기화 수행
__프로세스 종료
__이미지 로더
____이른 시점의 프로세스 초기화
____DLL 이름 결정과 리디렉션
____로드된 모듈의 데이터베이스
____임포트 파싱
____포스트 임포트 프로세스 초기화
____스위치백
____API 세트
__잡
____잡 제약
____잡과 작업
____중첩 잡
____윈도우 컨테이너(서버 실로)
__결론
4장. 스레드
__스레드 생성
__스레드 내부 구조
____데이터 구조체
____스레드의 탄생
__스레드 활동성 검사
____보호 프로세스 스레드의 제약
__스레드 스케줄링
____윈도우 스케줄링의 개요
____우선순위 수준
____스레드 상태
____디스패처 데이터베이스
____퀀텀
____우선순위 상승
____컨텍스트 전환
____스케줄링 시나리오
____유휴 스레드
____스레드 일시 중지
____(딥) 프리즈
____스레드 선정
____멀티프로세서 시스템
____멀티프로세서 시스템에서의 스레드 선정
____프로세서 선정
____이기종 스케줄링(big.LITTLE)
__그룹 기반의 스케줄링
____동적으로 공정한 공유 스케줄링
____CPU 비율 제한
____동적 프로세서 추가와 교체
__작업자 팩토리(스레드 풀)
____작업자 팩토리 생성
__결론
5장. 메모리 관리
__메모리 관리자 소개
____메모리 관리자 컴포넌트
____큰 페이지와 작은 페이지
____메모리 사용량 살펴보기
____내부 동기화
__메모리 관리자가 제공하는 서비스
____페이지 상태와 메모리 할당
____커밋양과 커밋 제한
____메모리 락킹
____할당 단위
____공유 메모리와 맵 파일
____메모리 보호
____데이터 실행 방지
____Copy-on-Write
____주소 윈도우 확장
__커널 모드 힙(시스템 메모리 풀)
____풀 크기
____풀 사용량 모니터링
____룩 어사이드 리스트
__힙 관리자
____프로세스 힙
____힙 유형
____NT 힙
____힙 동기화
____저단편화 힙
____세그먼트 힙
____힙 보****특징
____힙 디버깅 특징
____페이지힙
____폴트 톨러런트 힙
__가상 주소 공간 배치
____x86 주소 공간 배치
____x86 시스템 주소 공간 배치
____x86 세션 공간
____시스템 페이지 테이블 엔트리
____ARM 주소 공간 배치
____64비트 주소 공간 배치
____x64 가상 주소 제약
____동적 시스템의 가상 주소 관리
____시스템 가상 주소 공간 할당량
____사용자 주소 공간 배치
__주소 변환
____x86 가상 주소 변환
____변환 룩 어사이드 버퍼(TLB)
____x64 가상 주소 변환
____ARM 가상 주소 변환
__페이지 폴트 핸들링
____유효하지 않은 PTE
____프로토타입 PTE
____인 페이징 I/O
____페이지 폴트 충돌
____클러스터 페이지 폴트
____페이지 파일
____커밋양과 시스템 커밋 제한
____커밋양과 페이지 파일 크기
__스택
____유저 스택
____커널 스택
____DPC 스택
__가상 주소 디스크립터(VAD)
____프로세스 VAD
____VAD 교체
__NUMA
__섹션 객체
__워킹셋
____요구 페이징
____논리적 프리패처와 레디부트
____배치 정책
____워킹셋 관리
____밸런스 셋 관리자와 스와퍼
____시스템 워킹셋
____메모리 통지 이벤트
__페이지 프레임 번호 데이터베이스
____페이지 리스트 다이내믹스
____페이지 우선순위
____변경 페이지 기록자와 맵 페이지 기록자
____PFN 데이터 구조
____페이지 파일 예약
__물리 메모리 제한
____윈도우 클라이언트 메모리 제한
__메모리 압축
____압축 예제
____압축 아키텍처
__메모리 파티션
__메모리 결합
____탐색 단계
____분류 단계
____페이지 결합 단계
____전용에서 공유 PTE로
____결합 페이지 해제
__메모리 엔클레이브
____프로그램 인터페이스
____메모리 엔클레이브 초기화
____엔클레이브 구축
____엔클레이브로 데이터 로드
____엔클레이브 초기화
__선행적 메모리 관리(슈퍼패치)
____컴포넌트
____트레이싱과 로깅
____시나리오
____페이지 우선순위와 균형 조절
____견고한 성능
____레디부스트
____레디드라이브
____프로세스 리플렉션
__결론
6장. I/O 시스템
__I/O 시스템 컴포넌트
____I/O 관리자
____전형적인 I/O 처리
__인터럽트 요청 레벨과 지연된 프로시저 호출
____인터럽트 요청 레벨
____지연된 프로시저 호출
__디바이스 드라이버
____디바이스 드라이버의 유형
____드라이버의 구조
____드라이버 객체와 디바이스 객체
____장치 열기
__I/O 처리
____I/O의 유형
____I/O 요청 패킷
____단일 계층 하드웨어 기반 드라이버로의 I/O 요청
____계층적 드라이버에 대한 I/O 요청
____스레드 비종속적 I/O
____I/O 취소
____I/O 완료 포트
____I/O 우선순위화
__컨테이너 통지
____드라이버 베리파이어
____I/O 관련 검증 옵션
__메모리 관련 검증 옵션
____플러그앤플레이 관리자
____플러그앤플레이 지원 수준
____장치 열거
____디바이스 스택
____플러그앤플레이를 위한 드라이버 지원
__플러그앤 플레이 드라이버 설치
____일반적인 드라이버 로드와 설치
____드라이버 로딩
__드라이버 설치
____윈도우 드라이버 파운데이션
____커널 모드 드라이버 프레임워크
__유저 모드 드라이버 프레임워크
____전원 관리자
____연결 스탠바이와 모던 스탠바이
____전원 관리자 동작
____드라이버의 전원 동작
____드라이버와 애플리케이션의 장치 전원 제어
____전원 관리 프레임워크
__전원 가용성 요청
결론
7장. 보안
__보****등급
____신뢰성 있는 컴퓨터 시스템 평가 지침
____공통 평가 기준
__보****시스템 구성 요소
__가상화 기반의 보****
____자격증명 가드
____장치 가드
__객체 보호
____접근 검사
____보****식별자
____가상 서비스 계정
____보****디스크립터와 접근 제어
____동적 접근 제어
__AuthZ API
____조건부 ACE
__계정 권한과 특권
____계정 권한
____특권
____슈퍼 특권
__프로세스와 스레드의 접근 토큰
__보****감사
____객체 접근 감사
____전역 감사 정책
____고급 감사 정책 설정
__앱컨테이너
____UWP 앱의 개요
____앱컨테이너
__로그온
____Winlogon 초기화
____사용자 로그온 과정
____보장된 인증
____윈도우 생체 인식 프레임워크
____윈도우 헬로
__사용자 계정 제어와 가상화
____파일 시스템과 레지스트리 가상화
____상승
__취약점 완화
____프로세스 완화 정책
____제어 흐름 무결성
____보****보장
__애플리케이션 식별
__앱락커
__소프트웨어 제한 정책
__커널 패치 보호
__패치가드
__하이퍼가드
__결론