다음을 통해 공유


f, fp(메모리 채우기)

ffp 명령은 지정된 메모리 범위를 반복 패턴으로 채웁니다.

이러한 명령은 ~F(스레드 고정) 명령과 혼동해서는 안 됩니다.

f Range Pattern 
fp [MemoryType] PhysicalRange Pattern

매개 변수

범위
채울 가상 메모리의 범위를 지정합니다. 자세한 구문 정보는 주소 및 주소 범위 구문을 참조하세요.

PhysicalRange
(커널 모드에만 해당) 채울 실제 메모리의 범위를 지정합니다. PhysicalRange 구문은 기호 이름이 허용되지 않는다는 점을 제외하고 가상 메모리 범위의 구문과 동일합니다.

MemoryType
(커널 모드에만 해당) 다음 중 하나일 수 있는 실제 메모리의 형식을 지정합니다.

[c]
캐시된 메모리.

[uc]
캐시되지 않은 메모리입니다.

[wc]
쓰기 결합 메모리.

패턴
메모리를 채울 하나 이상의 바이트 값을 지정합니다.

Environment

모드

f: 사용자 모드, 커널 모드 fp: 커널 모드만

대상

라이브, 크래시 덤프

플랫폼

모두

추가 정보

메모리 조작에 대한 개요와 다른 메모리 관련 명령에 대한 설명은 메모리 읽기 및 쓰기를 참조하세요.

설명

이 명령은 범위 별로 지정된 메모리 영역을 지정된 패턴으로 채우고 필요에 따라 여러 번 반복합니다.

패턴 매개 변수는 일련의 바이트로 입력되어야 합니다. 숫자 또는 ASCII 문자로 입력할 수 있습니다.

숫자 값은 현재 반지름(16, 10 또는 8)의 숫자로 해석됩니다. 기본 radix를 변경하려면 n(숫자 기준 설정) 명령을 사용합니다. 기본 radix는 0x 접두사(16진수), 0n 접두사(10진수), 0t 접두사(8진수) 또는 0y 접두사(이진)를 지정하여 재정의할 수 있습니다.

참고 기본 radix는 C++ 식을 사용할 때 다르게 동작합니다. 자세한 내용은 식 평가 항목을 참조하세요.

ASCII 문자를 사용하는 경우 각 문자를 작은따옴표로 묶어야 합니다. C 스타일 이스케이프 문자(예: '\0' 또는 '\n')는 사용할 수 없습니다.

여러 바이트를 지정하는 경우 공백으로 구분해야 합니다.

패턴에 범위의 바이트 수보다 더 많은 값이 있는 경우 디버거는 추가 값을 무시합니다.

다음은 몇 가지 예제입니다. 현재 radix가 16이라고 가정하면 다음 명령은 메모리 위치 0012FF40~0012FF5F를 "ABC" 패턴으로 여러 번 채웁니다.

0:000> f 0012ff40 L20 'A' 'B' 'C'

다음 명령은 정확히 동일한 효과가 있습니다.

0:000> f 0012ff40 L20 41 42 43

다음 예제에서는 커널 모드에서 fp 명령과 함께 실제 메모리 형식(c, ucwc)을 사용하는 방법을 보여 줍니다.

kd> fp [c] 0012ff40 L20 'A' 'B' 'C'
kd> fp [uc] 0012ff40 L20 'A' 'B' 'C'
kd> fp [wc] 0012ff40 L20 'A' 'B' 'C'