f, fp (mémoire de remplissage)
Les commandes f et fp remplissent la plage de mémoire spécifiée avec un modèle répétitif.
Ces commandes ne doivent pas être confondues avec la commande ~F (Freeze Thread).
f Range Pattern
fp [MemoryType] PhysicalRange Pattern
Paramètres
Gamme
Spécifie la plage de mémoire virtuelle à remplir. Pour plus de détails sur la syntaxe, veuillez consulter la rubrique Syntaxe de l’adresse et de la plage d’adresses.
PhysicalRange
(Mode noyau uniquement) Spécifie la plage de mémoire physique à remplir. La syntaxe de PhysicalRange est identique à 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
Les modes |
f : mode utilisateur, mode noyau fp : mode noyau uniquement |
Targets |
live, vidage de la mémoire |
Platforms |
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 données dans la mémoire.
Notes
Cette commande remplit la zone mémoire spécifiée par plage avec le modèle spécifié, répétée autant de fois que nécessaire.
Le paramètre de modèle doit être entré sous la forme d’une série d’octets. Ces caractères peuvent être entrés sous forme numérique ou en tant que caractères ASCII.
Les valeurs numériques seront 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 de nombres). Le radix par défaut peut être substitué 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).
Notez que le radix par défaut se comporte différemment lorsque les 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 ») peuvent ne pas être utilisés.
Si plusieurs octets sont spécifiés, ils doivent être séparés par des espaces.
Si le modèle a plus de valeurs que le nombre d’octets de 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'