lm(로드된 모듈 나열)
lm 명령은 지정된 로드된 모듈을 표시합니다. 출력에는 상태 및 모듈의 경로가 포함됩니다.
lm Options [a Address] [m Pattern | M Pattern]
매개 변수
옵션
다음 옵션의 모든 조합:
D
디버거 태그 언어를 사용하여 출력을 표시합니다.
o
로드된 모듈만 표시합니다.
l
기호 정보가 로드된 모듈만 표시합니다.
v
디스플레이가 자세한 정보 표시가 되도록 합니다. 표시에는 기호 파일 이름, 이미지 파일 이름, 체크섬 정보, 버전 정보, 날짜 스탬프, 타임스탬프 및 모듈이 CLR(관리 코드)인지 여부에 대한 정보가 포함됩니다. 관련 헤더가 없거나 페이징된 경우에는 이 정보가 표시되지 않습니다.
u
(커널 모드만 해당) 사용자 모드 기호 정보만 표시합니다.
k
(커널 모드만 해당) 커널 모드 기호 정보만 표시합니다.
e
기호 문제가 있는 모듈만 표시합니다. 이러한 기호에는 기호가 없는 모듈과 상태 기호가 C, T, #, M 또는 Export인 모듈이 포함됩니다. 이러한 표기법에 대한 자세한 내용은 기호 상태 약어를 참조하세요.
c
체크섬 데이터를 표시합니다.
1m
모듈 이름을 제외하고 아무것도 포함되지 않도록 출력을 줄입니다. 이 옵션은 .foreach 토큰을 사용하여 명령 출력을 다른 명령의 입력으로 파이프하는 경우에 유용합니다.
sm
시작 주소 대신 모듈 이름으로 표시를 정렬합니다.
또한 다음 옵션 중 하나만 포함할 수 있습니다. 이러한 옵션을 포함하지 않으면 표시에 기호 파일 이름이 포함됩니다.
i
이미지 파일 이름을 표시합니다.
f
전체 이미지 경로를 표시합니다. (이 경로는 .reload -s 명령을 실행하지 않는 한 초기 로드 알림에 표시되는 경로와 항상 일치합니다.) f를 사용하면 기호 형식 정보가 표시되지 않습니다.
n
이미지 이름을 표시합니다. n을 사용하면 기호 형식 정보가 표시되지 않습니다.
p
매핑된 이미지 이름을 표시합니다. p를 사용하는 경우 기호 형식 정보가 표시되지 않습니다.
t
파일 타임스탬프를 표시합니다. t를 사용하면 기호 형식 정보가 표시되지 않습니다.
주소
이 모듈에 포함된 주소를 지정합니다. 이 주소가 포함된 모듈만 표시됩니다. Address에 식이 포함된 경우 괄호로 묶어야 합니다.
m 패턴
모듈 이름이 일치해야 하는 패턴을 지정합니다. 패턴에는 다양한 와일드카드 문자와 지정자가 포함될 수 있습니다. 이 정보의 구문에 대한 자세한 내용은 문자열 와일드카드 구문을 참조하세요.
대부분의 경우 모듈 이름은 파일 이름 확장명을 사용하지 않는 파일 이름입니다. 예를 들어 Flpydisk.sys 드라이버에 대한 정보를 표시하려면 lm mflpydisk.sys 아니라 lm mflpydisk 명령을 사용합니다. 경우에 따라 모듈 이름이 파일 이름과 크게 다릅니다.
M 패턴
이미지 경로가 일치해야 하는 패턴을 지정합니다. 패턴에는 다양한 와일드카드 문자와 지정자가 포함될 수 있습니다. 이 정보의 구문에 대한 자세한 내용은 문자열 와일드카드 구문을 참조하세요.
Environment
항목 | Description |
---|---|
모드 | 사용자 모드, 커널 모드 |
대상 | 라이브, 크래시 덤프 |
플랫폼 | 모두 |
설명
lm 명령은 모든 모듈과 각 모듈에 대한 기호의 상태 나열합니다.
Windows는 사용자 모드 프로세스에 대해 언로드된 모듈 목록을 유지 관리합니다. 사용자 모드 프로세스 또는 덤프 파일을 디버깅할 때 lm 명령은 이러한 언로드된 모듈도 표시합니다.
표시되는 모듈은 사용자 또는 커널 모드와 같이 디버깅하는 방법과 보고 있는 특정 컨텍스트에 따라 달라집니다. 프로세스 컨텍스트 및 기타 컨텍스트 설정에 대한 자세한 내용은 컨텍스트 변경 및 프로세스 및 스레드 제어를 참조하세요.
이 명령은 각각 다른 제목을 가진 여러 열 또는 필드를 보여 줍니다. 이러한 타이틀 중 일부는 특정 의미를 갖습니다.
모듈 이름은 일반적으로 파일 이름 확장명을 사용하지 않는 파일 이름입니다. 경우에 따라 모듈 이름이 파일 이름과 크게 다릅니다.
기호 형식은 모듈 이름 바로 뒤에 옵니다. 이 열에 레이블이 지정되지 않았습니다. 다양한 상태 값에 대한 자세한 내용은 기호 상태 약어를 참조하세요. 기호를 로드한 경우 기호 파일 이름은 이 열을 따릅니다.
모듈의 첫 번째 주소는 시작으로 표시됩니다. 모듈이 끝난 후 첫 번째 주소가 끝으로 표시됩니다. 예를 들어 start가 "faab4000"이고 end가 "faab8000"인 경우 모듈은 0xFAAB4000 0xFAAB7FFF(포함)로 확장됩니다.
lmv 만 해당: 이미지 경로 열에는 파일 이름 확장명을 포함하여 실행 파일의 이름이 표시됩니다. 일반적으로 전체 경로는 사용자 모드에 포함되지만 커널 모드에는 포함되지 않습니다.
lmv 만 해당: Microsoft CodeView 기호가 없는 한 로드된 기호 이미지 파일 값은 이미지 이름과 동일합니다.
lmv 만 해당: 매핑된 메모리 이미지 파일 값은 일반적으로 사용되지 않습니다. 디버거가 이미지 파일을 매핑하는 경우(예: 미니덤프 디버깅 중) 이 값은 매핑된 이미지의 이름입니다.
다음 코드 예제에서는 m 및 s* 옵션을 사용하는 lm 명령을 보여 줍니다. 따라서 "s"로 시작하는 모듈만 표시됩니다.
kd> lm m s*
start end module name
f9f73000 f9f7fd80 sysaudio (deferred)
fa04b000 fa09b400 srv (deferred)
faab7000 faac8500 sr (deferred)
facac000 facbae00 serial (deferred)
fb008000 fb00ba80 serenum e:\mysymbols\SereEnum.pdb\.......
fb24f000 fb250000 swenum (deferred)
Unloaded modules:
f9f53000 f9f61000 swmidi.sys
fb0ae000 fb0b0000 splitter.sys
fb040000 fb043000 Sfloppy.SYS
예제
다음 두 예제에서는 lm 명령을 옵션 없이 한 번, sm 옵션으로 한 번 보여 줍니다. 두 예제의 정렬 순서를 비교합니다.
예제 1:
0:000> lm
start end module name
01000000 0100d000 stst (deferred)
77c10000 77c68000 msvcrt (deferred)
77dd0000 77e6b000 ADVAPI32 (deferred)
77e70000 77f01000 RPCRT4 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
예제 2:
0:000> lm sm
start end module name
77dd0000 77e6b000 ADVAPI32 (deferred)
7c800000 7c8f4000 kernel32 (deferred)
77c10000 77c68000 msvcrt (deferred)
7c900000 7c9b0000 ntdll (private pdb symbols) c:\db20sym\ntdll.pdb
77e70000 77f01000 RPCRT4 (deferred)
01000000 0100d000 stst (deferred)