Partager via


f, fp (Remplissage de la mémoire)

Les commandes f et fp remplissent la plage de mémoire spécifiée avec un modèle répétiteur.

Ces commandes ne doivent pas être confondues avec la commande ~F (Figer le thread).

f Range Pattern 
fp [MemoryType] PhysicalRange Pattern

Paramètres

Gamme
Spécifie la plage dans la mémoire virtuelle à remplir. Pour plus d’informations sur la syntaxe, consultez Syntaxe d’adresse et de plage d’adresses.

PhysicalRange
(Mode noyau uniquement) Spécifie la plage de mémoire physique à remplir. La syntaxe de PhysicalRange est la même que celle d’une plage de mémoire virtuelle, sauf qu’aucun nom de symbole n’est autorisé.

MemoryType
(Mode noyau uniquement) Spécifie le type de mémoire physique, qui peut être l’un des éléments suivants :

[c]
Mémoire mise en cache.

[uc]
Mémoire non mise en cache.

[wc]
Mémoire combinée en écriture.

Modèle
Spécifie une ou plusieurs valeurs d’octets avec lesquelles remplir la mémoire.

Environnement

Modes

f : mode utilisateur, mode noyau fp : mode noyau uniquement

Cibles

live, crash dump

Plateformes

all

Informations supplémentaires

Pour obtenir une vue d’ensemble de la manipulation de la mémoire et une description d’autres commandes liées à la mémoire, consultez Lecture et écriture de la mémoire.

Remarques

Cette commande remplit la zone de mémoire spécifiée par plage avec le modèle spécifié, répété autant de fois que nécessaire.

Le paramètre de modèle doit être une entrée sous la forme d’une série d’octets. Ceux-ci peuvent être entrés sous forme de caractères numériques ou ASCII.

Les valeurs numériques sont interprétées comme des nombres dans le radix actuel (16, 10 ou 8). Pour modifier le radix par défaut, utilisez la commande n (Définir la base du nombre). Le radix par défaut peut être remplacé en spécifiant le préfixe 0x (hexadécimal), le préfixe 0n (décimal), le préfixe 0t (octal) ou le préfixe 0y (binaire).

Note Le radix par défaut se comporte différemment lorsque des expressions C++ sont utilisées. Pour plus d’informations, consultez la rubrique Évaluation des expressions .

Si des caractères ASCII sont utilisés, chaque caractère doit être placé entre guillemets simples. Les caractères d’échappement de style C (tels que « \0 » ou « \n ») ne peuvent pas être utilisés.

Si plusieurs octets sont spécifiés, ils doivent être séparés par des espaces.

Si pattern a plus de valeurs que le nombre d’octets dans la plage, le débogueur ignore les valeurs supplémentaires.

Voici quelques exemples. En supposant que le radix actuel est 16, la commande suivante remplit les emplacements de mémoire 0012FF40 à 0012FF5F avec le modèle « ABC », répété plusieurs fois :

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

La commande suivante a exactement le même effet :

0:000> f 0012ff40 L20 41 42 43

Les exemples suivants montrent comment utiliser les types de mémoire physique (c, uc et wc) avec la commande fp en mode noyau :

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