zb4_pds_doc_55

Download Report

Transcript zb4_pds_doc_55

블루 스크린 기본 문제 해결
Doug Allen
기술 지원 전문가
PSS 프리미어 설치 팀
Microsoft Corporation
운영 체제 아키텍처 – 배경 설명

두 개의 기본 섹션으로 구분


커널 모드 – 하드웨어, 메모리, HAL, 마이크로커널 및
NT Executive Services에 대해 직접 액세스할 수 있는
높은 수준의 권한
사용자 모드 – 하드웨어에 대해 직접 액세스 권한이 없는
낮은 수준의 권한이며 API를 사용하여 시스템 리소스,
환경 변수 및 통합 하위 시스템을 요청합니다.
2
운영 체제 아키텍처 – 배경 설명 (2)
3
STOP 스크린 발생 원인





잘못되었거나 호환되지 않는 서비스, 응용
프로그램, 장치 드라이버
하드웨어 문제
디스크 또는 파일 시스템 손상
오래되었거나 호환되지 않는 Firmware 또는
BIOS
바이러스
4
STOP 스크린 발생 시점

네 가지 범주




짧은 시작 시간 (부팅 시퀀스의 네 번째 단계)
CPU에 의한 소프트웨어 상태 탐지
CPU에 의한 하드웨어 오작동 탐지
기타 모든 STOP 코드
5
Windows NT 4.0 STOP 스크린 분류

다섯 가지 섹션





섹션 1 – 디버그 포트 상태 정보
섹션 2 – 버그 확인 정보
섹션 3 – 메모리에 로드된 드라이버 정보
섹션 4 – 커널 빌드 번호 및 스택 덤프
섹션 5 – 디버그 포트 정보
6
Windows NT 4.0 STOP 스크린
분류 (2)



디버그 포트 상태 정보 – 모뎀의 송/수신 표시기와
매우 유사함
버그 확인 정보 – 기호 문자열 오류 코드 16진수
및 네 개의 버그 확인 매개 변수 포함
메모리에서 로드된 드라이버 정보



첫 번째 열 – 로드 기준 주소
두 번째 열 – 16진수로 된 시간/날짜 스탬프
세번째 열 – 모든 드라이버 이름
7
Windows NT 4.0 STOP 스크린
분류 (3)

커널 빌드 번호와 스택 덤프 – Ntoskrnl.exe의
버전


나머지는 실패한 모듈이 포함된 주소 범위를 보여주는
스택 덤프입니다.
디버그 포트 정보 –COM 매개 변수의 확인

Memory.dmp 파일이 만들어지는지 여부를 확인할 수도
있습니다.
8
Windows 2000 STOP 스크린 분류

세 가지 섹션



섹션 1 – 버그 확인 정보
섹션 2 – 사용자 권장 조치
섹션 3 – 디버그 포트 정보
9
Windows 2000 STOP 스크린
분류 (2)



버그 확인 정보 – 기호 문자열 오류 코드 16진수
및 네 개의 버그 확인 매개 변수 포함
사용자 권장 조치 – 오류 복구에 도움이 되는 권장
조치를 제공함
디버그 포트 상태 정보 – 모뎀의 송/수신 표시기와
매우 유사함
10
Memory.dmp 파일





크래시 시점의 컴퓨터에 관한 정보가 들어
있습니다.
블루 스크린이 발생할 때마다 Memory.dmp를
만듭니다.
구성된 경우, STOP 오류를 만듭니다.
디버깅 프로세스 중에 크래시 원인을 판단하는데
사용합니다.
Windows NT® 또는 Windows® 2000 정품
CD에 들어 있는 Dumpchk.exe를 사용하여
무결성을 확인합니다.
11
Windows 2000 Memory.dmp 옵션
변경 사항



미니 덤프 (64 KB)
커널 전용 덤프
완전한 덤프
12
Memory.dmp를 만드는 기본 조건


%STEMROOT% 파티션에 있는 유효한 페이지
파일의 크기가 실제 RAM 크기에 약 12 MB를
더한 크기와 같아야 합니다.
Memory.dmp 파일을 포함하기에 충분한 여유
공간이 있어야 합니다.
13
Memory.dmp를 만드는 기본 조건 (2)
14
Memory.dmp를 만드는 기본 조건 (3)

덤프 파일을 작성할 수 있도록 구성해야 합니다.


GUI의 시작 종료 탭에 있는 구성 옵션을 사용하거나 다음
레지스트리를 통해 구성합니다.
 HKEY_LOCAL_MACHINE\SYSTEM
\CurrentControlSet\Control\Session Manager
 HKEY_LOCAL_MACHINE\SYSTEM
\CurrentControlSet\Control\CrashControl
시스템이 응답하지 않으면 Memory.dmp를
강제로 만들 수 있습니다.
15
메모리 덤프를 강제로 만드는 방법

두 가지 구성을 변경해야 합니다.



시작 복구 옵션에서 Memory.dmp 파일이 작성되도록
구성해야 합니다.
HKEY_LOCAL_MACHINE\System\CurrentControlSe
t\Services\i8042prt\Parameters/,
CrashOnCtrlScroll이라는 키를 REG_DWORD 0x1과
대등하게 설정합니다.
덤프를 강제로 만들려면 키보드의 오른쪽 CTRL
키를 누른 상태에서 SCROLL LOCK 키를 두 번
누릅니다.
16
가장 일반적인 STOP 코드

STOP 0x0000000A IRQL_NOT_LESS_EQUAL



커널 모드 프로세스가 IRQL 수준이 시스템 허용
수준보다 너무 높은 메모리 부분을 액세스하려고 할 때
발생합니다.
네 번째 매개 변수가 가장 중요합니다.
버그가 있는 장치 드라이버나 백업 유틸리티 또는
바이러스 스캐너 서비스로 인해 발생합니다.
17
가장 일반적인 STOP 코드 (2)

STOP 0x0000001E
KMODE_EXCEPTION_NOT_HANDLED



커널 모드 프로세스가 잘못되었거나 알 수 없는 프로세서
명령을 실행하려 할 때 발생합니다.
두 번째 매개 변수가 가장 중요한데, 이는 예외가 발생한
주소입니다.
Win32k.sys가 참조 드라이버인 경우, 제 3의 원격 제어
응용 프로그램을 확인해야 합니다.
18
가장 일반적인 STOP 코드 (3)

STOP 0x00000024 NTFS_FILE_SYSTEM



Ntfs.sys에서 발생하는 문제가 원인입니다.
첫 번째 매개 변수가 가장 중요합니다.
주로 디스크 손상이나 Diskeeper와 같은 디스크 조각
모음 응용 프로그램으로 인해 발생하며 아주 드물게는
사용자가 Macintosh용 서비스 볼륨이나 대량 파일이
들어 있는 볼륨에 7GB보다 큰 파티션을 만들려고 할 때
발생합니다.
19
가장 일반적인 STOP 코드 (4)

STOP 0x0000002E DATA_BUS_ERROR




시스템 메모리의 패리티 오류로 인해 발생합니다.
실제 RAM에서 발생하기 때문에 항상 결함이 있는
하드웨어 문제나 일부 구성 문제 또는 호환되지 않는
하드웨어와 연관이 있습니다.
최근에 실제 RAM을 시스템에 추가했다가 제거한 경우,
오류가 발생하는지 여부를 확인합니다.
오류가 지속될 경우, BIOS의 메모리 캐시를 사용
안함으로 설정합니다.
20
가장 일반적인 STOP 코드 (5)

STOP 0x00000050
PAGE_FAULT_IN_NONPAGED_AREA



주로 요청된 데이터를 메모리에서 찾을 수 없어
시스템은 페이지 파일을 확인하지만 누락된 데이터를
발견되고 페이지 파일에 작성할 수 없을 때 발생합니다.
첫 번째 매개 변수가 가장 중요하며 오류를 일으킨 가상
주소를 나타냅니다.
이 오류가 Terminal Server에서 발생한 경우, 제 3의
프린터 드라이버를 확인합니다.
21
가장 일반적인 STOP 코드 (6)

STOP 0x0000007B
INACCESSIBLE_BOOT_DEVICE




Windows가 시작 프로세스 중에 시스템 파티션에 대한
액세스를 상실할 때 발생합니다.
디버거가 로드되기 전에 오류가 발생하기 때문에
디버깅할 수 없습니다.
주로 SCSI 장치 드라이버, RAID 드라이버 또는 특정
UDMA IDE 컨트롤러 드라이버 문제로 인해 발생하거나
사용자의 Boot.ini 파일에 잘못된 ARC 경로가 있을 때
또는 오류가 있는 부트 장치로 인해 발생합니다.
설치 중에 프롬프트에서 F6 키를 눌러 제 3의 대용량
저장 장치 드라이버를 설치합니다.
22
가장 일반적인 STOP 코드 (7)

STOP 0x0000007F
UNEXPECTED_KERNEL_MODE_TRAP





CPU가 커널이 탐지하지 못하는 오류를 생성할 때
발생합니다.
첫 번째 매개 변수가 가장 중요합니다. (자세한 내용은
기술 자료 KR137539를 참조하시기 바랍니다.)
주로 하드웨어, 특히 RAM으로 인해 발생합니다.
SCSI 어댑터의 BIOS에 있는 동기화 협상을 사용 안
함으로 설정합니다.
CPU 오버클럭으로 인해 발생할 수도 있습니다.
23
가장 일반적인 STOP 코드 (8)

STOP 0x0000009F
DRIVER_POWER_STATE_FAILURE




드라이버가 전원 상태 전환 요청을 적절하게 처리하지
못할 때 발생합니다.
주로 사용자가 대기 모드, 최대 절전 모드 등 절전
모드에서 빠져 나올 때마다 발생합니다.
CD 작성 소프트웨어 및 크래시를 잡을 수 있는 유사
응용 프로그램을 확인하시기 바랍니다.
전원 관리 기능 및 설정도 확인해야 합니다.
24
가장 일반적인 STOP 코드 (9)

STOP 0x000000D1
DRIVER_IRQL_NOT_LESS_OR_EQUAL




시스템이 아주 높은 프로세스 IRQL에서 페이지로 나눌
수 있는 메모리를 액세스하려고 할 때 발생합니다.
네 번째 매개 변수가 가장 중요한데, 이는 메모리를
참조하는 주소입니다.
STOP 0xA 코드와 매우 유사합니다.
STOP 0xA 코드와 동일한 문제 해결 단계를 수행하시기
바랍니다.
25
가장 일반적인 STOP 코드 (10)

STOP 0xC000021A
STATUS_SYSTEM_PROCESS_TERMINATED




사용자 모드 하위 시스템 (Winlogon 또는 CSRSS)이
치명적인 손상을 입어 운영 체제의 보안을 보장할 수
없을 때 발생합니다.
컴퓨터를 실제로 손상시킬 수 있는 유일한 사용자 모드
오류입니다.
오류 원인은 주로 제3의 응용 프로그램 때문이거나
사용자가 일치하지 않는 시스템 파일을 가지고 있기
때문입니다.
Sfc/Scannow
26
STOP 스크린 문제 해결




응급 복구 디스크 (ERD)
Windows NT 부팅 디스크 (KR301680 참조)
운영 체제의 병렬 설치
Windows NT 4.0 및 Windows 2000



VGA 모드
Last known good (마지막으로 성공한 구성)
Windows 2000에만 해당


안전 모드
복구 콘솔
27
STOP 스크린 문제 해결 (2)





시스템 및 응용 프로그램 이벤트 로그
Winver 명령을 실행하여 마지막에 설치한 서비스
팩을 확인합니다.
최신 바이러스 응용 프로그램을 사용하여 시스템
바이러스 검사를 실시합니다.
Chkdsk/f/r
Microsoft 기술 지원 전문가에게 요청하여
MPSReports 유틸리티를 실행합니다.
28
복구 콘솔 사용




명령줄에서 부팅 파티션이나 간단한 파일 시스템
볼륨을 액세스할 수 있습니다.
Sysprep을 사용하여 복구 콘솔을 미리 볼 수
없습니다.
서비스나 장치에 대해 사용함 또는 사용 안함
명령을 입력하고 파일을 바꾸며 디스크/파티션
정보를 표시하거나 수정하는데 유용하고 마스터
부트 레코드나 부팅 섹터를 바꿀 수 있습니다.
명령에 관한 정보는 기술 자료 KR229716을
참조하시기 바랍니다.
29
STOP 스크린 발생 방지 대책




설치하기 전에 반드시 드라이버를 테스트합니다.
새로운 하드웨어를 설치하기 전에 HCL을
확인하여 호환성 여부를 확인합니다.
Windows 2000의 경우, 새로운 장치 드라이버를
설치할 때마다 디지털 서명된 드라이버를
설치합니다.
시스템을 변경한 후에 반드시 새로운 응급 복구
디스크를 만듭니다.
30
커널 모드 및 사용자 모드 디버깅




크래시 원인을 밝히는데 사용됩니다.
고급 사용자만이 사용할 수 있는 기능입니다.
기호 및 디버깅 도구는 아래 주소에서 다운로드할
수 있습니다.
http://www.microsoft.com/ddk/debugging/
기호를 동일한 사이트에서 다운로드하거나 정품
운영 체제 CD 또는 서비스 팩에서 검색할 수
있습니다.
디버깅에 관한 추가 정보는 KR148658을
참조하시기 바랍니다.
31
추가 리소스






Windows NT 4.0 및 Windows 2000 리소스 키트
http://www.microsoft.com/ddk/
http://www.microsoft.com/windows2000
/techinfo/reskit/WebResources/default.asp
호환 가능한 하드웨어 목록 (HCL)
Microsoft TechNet, MSDN®
Microsoft 기술 자료
32
Q&A

코어 마더보드 드라이버가 블루 스크린을
발생하는 원인

Memory.dmp 파일 구성

메모리 덤프의 다른 드라이브에 저장 가능성
33
Q&A

시스템 오류가 발생 시 자동 다시 부팅으로
설정한 경우 덤프 파일의 존재 여부

STOP 코드의 네 번째 매개 변수는?

플로피가 없는 워크스테이션에서 응급 복구
디스크(ERD)를 만들려면?
34
Q&A

Winserv.dll 블루 스크린의 원인과 해결책

페이지 파일이 시스템 루트가 아닌 다른
드라이버에 있을 때 메모리 덤프 가능성

레지스트리에서 ControlSet0003을 삭제하고
나서 롤백 가능성
35
Q&A

NT 4.0에서 여러 번 다시 부팅하는 경우,
LKG(Last Known Good)에 주는 영향은?

복구 콘솔의 한계는?

오류가 발생한 후 컴퓨터에 로그온할 때
로그온이 정지하거나 컴퓨터가 다시 크래시를
일으키는 경우, 마지막으로 성공한 구성은
어떻게 되는지..
36
Q&A

사용자 DMP 파일을 읽는 도구를 다운로드
받으려면...

운영 체제를 로드할 수 없는 경우에도 chkdsk
/f /r을 설정하는 방법

Win 2000에서 최대 메모리 덤프 크기

복구 콘솔이 설치된 PC에 대한 복제 가능성
37
Q&A

정확한 기호 집합 식별 방법/커널 디버거에서
기호 집합을 사용하는 가장 좋은 방법

각 서비스 팩에 디버깅에 필요한 업데이트된
기호의 존재 여부

MPS 보고서 유틸리티의 다운로드 및 사용
가능성
38
Q&A

드라이버를 로드하기 이전의 테스트를 위한
유지 관리 단계 및 절차

STOP 코드에서 중요한 매개 변수의 구조

STOP code 005를 참조하는 Dr. Watson 응용
프로그램 오류에 대한 설명
39
Q&A

Microsoft가 Win 2000 STOP 스크린에서 스택
흐름 목록을 제거한 이유

앞서 설명한 모든 방법을 Windows
Millennium에도 적용할 수 있는지?

운영 체제에 들어갈 수 없을 때 덤프를 찾아서
보는 방법
40
Q&A

PSTAT, 이벤트 로그 및 기타 정보를 수집하는
Microsoft 유틸리티를 다운로드할 수 있는 웹
사이트

NT 4.0에서 ERD 만들기에 관한 스크립트를
작성할 수 있습니다. 2000에서도 시스템 상태에
관해 같은 스크립트를 작성 가능성 여부

다양한 STOP 코드 매개변수에 관한 추가 정보를
얻기 위한 정보
41
Q&A

오류 번호를 보고 하드웨어 또는 소프트웨어
크래시의 구분 가능성

덤프 파일 전체를 보는 가장 좋은 응용 프로그램은?

어떤 컴퓨터 검사 예외(BSOD)가 원인으로
지정되는가?

Memory.dmp 파일에 대한 생성 가능성 및 문제
해결을 위한 다른 용도 및 관련 정보
42
오늘 Microsoft 기술 지원 웹캐스트를 경청해주신 여러분께
감사 드립니다.
향후 개발될 기술 지원 웹캐스트 및 보관 컨텐츠 (스트리밍
미디어 파일, PowerPoint ® 슬라이드, 녹음 내용) 관련
정보를 원하시면 아래 웹사이트를 방문하시기 바랍니다.
http://www.microsoft.com/korea/support/WebCasts
저희는 여러분의 의견을 기다립니다. 기술 지원 웹캐스트에
관한 의견이나 제안 사항을 [email protected] 로
보내주시기 바랍니다.
43

다음 문의 사항에 대한 여러분의 의견을
[email protected] 으로 보내 주십시오.
1.
기술 지원 웹캐스트의 내용이 도움이 되셨습니까?
(예, 아니오)
2.
기술 지원 웹캐스트의 내용이 얼마나 유용했는지 말씀해
주십시오.

여러분의 소중한 의견은 웹캐스트 향상에 많은 도움이 될 것
입니다.
감사합니다.
44