Condividi tramite


f, fp (Fill Memory)

I comandi f e fp riempiono l'intervallo di memoria specificato con un criterio ripetuto.

Questi comandi non devono essere confusi con il comando ~F (Blocca thread).

f Range Pattern 
fp [MemoryType] PhysicalRange Pattern

Parametri

Gamma
Specifica l'intervallo in memoria virtuale da riempire. Per altri dettagli sulla sintassi, vedere Sintassi dell'intervallo di indirizzi e indirizzo.

PhysicalRange
(solo modalità kernel) Specifica l'intervallo di memoria fisica da riempire. La sintassi di PhysicalRange è identica a quella di un intervallo di memoria virtuale, ad eccezione del fatto che non sono consentiti nomi di simboli.

MemoryType
(solo modalità kernel) Specifica il tipo di memoria fisica, che può essere uno dei seguenti:

[c]
Memoria memorizzata nella cache.

[uc]
Memoria non memorizzata nella cache.

[wc]
Memoria combinata in scrittura.

Modello
Specifica uno o più valori di byte con cui riempire la memoria.

Ambiente

Modalità

f: modalità utente, modalità kernel fp: solo modalità kernel

Destinazioni

live, dump di arresto anomalo

Piattaforme

tutto

Informazioni aggiuntive

Per una panoramica della manipolazione della memoria e di una descrizione di altri comandi correlati alla memoria, vedere Lettura e scrittura di memoria.

Osservazioni:

Questo comando riempie l'area di memoria specificata dall'intervallo con il criterio specificato, ripetuto il maggior numero di volte necessario.

Il parametro pattern deve essere input come una serie di byte. Questi valori possono essere immessi come caratteri numerici o ASCII.

I valori numerici verranno interpretati come numeri nel file radix corrente (16, 10 o 8). Per modificare il file radix predefinito, usare il comando n (Imposta base numeri). Il radix predefinito può essere sottoposto a override specificando il prefisso 0x (esadecimale), il prefisso 0n (decimale), il prefisso 0t (ottale) o il prefisso 0y (binary).

Nota Il formato radix predefinito si comporta in modo diverso quando vengono usate espressioni C++. Per altre informazioni, vedere l'argomento Valutazione di espressioni .

Se vengono utilizzati caratteri ASCII, ogni carattere deve essere racchiuso tra virgolette singole. Non è possibile usare caratteri di escape in stile C, ad esempio '\0' o '\n'.

Se vengono specificati più byte, devono essere separati da spazi.

Se il criterio ha più valori rispetto al numero di byte nell'intervallo, il debugger ignora i valori aggiuntivi.

Di seguito sono riportati alcuni esempi. Supponendo che il radix corrente sia 16, il comando seguente riempie i percorsi di memoria da 0012FF40 a 0012FF5F con il modello "ABC", ripetuto più volte:

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

Il comando seguente ha esattamente lo stesso effetto:

0:000> f 0012ff40 L20 41 42 43

Gli esempi seguenti illustrano come usare i tipi di memoria fisica (c, uc e wc) con il comando fp in modalità kernel:

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