bilaloch
Messages postés556Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention31 octobre 2019
-
1 août 2007 à 13:52
bilaloch
Messages postés556Date d'inscriptionlundi 6 octobre 2003StatutMembreDernière intervention31 octobre 2019
-
2 août 2007 à 17:35
Bonjour à tous,
J'aimerais connaître s'il y a un moyen de savoir si telle adresse de la
mémoire vive est protegée, si telle adresse est vide et également si
telle adresse est allouée à telle processus. Je suppose que cela
existe, et je code actuellement en C++ et en ASM pour les endroits où
je suis forcé de l'utiliser. J'aimerais également savoir s'il est
possible d'attribuer des adresses de mémoire, à un programme, mais pas
le mien, sinon j'utiliserai la fameuse allocation dynamique (en C).
BruNews
Messages postés21041Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 1 août 2007 à 22:57
Installe le DDK (libre depuis le site MS). Il n'y a qu'un driver pour lire des adresses réelles.
Il y a IsBadReadPtr() etc... mais ce sera toujours des adresses virtuelles du processus courant.
ReadProcessMemory() pour accéder aux autres processus.
racpp
Messages postés1910Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201416 2 août 2007 à 14:16
Salut,
Je ne savais pas que le DDK est devenu téléchargeable gratuitement. C'est une bonne nouvelle. Voici le lien pour téléchérger l'image ISO : DDK Download.
vinc1008881
Messages postés257Date d'inscriptiondimanche 22 août 2004StatutMembreDernière intervention29 septembre 20103 1 août 2007 à 20:22
Ce que tu tentes de faire est très risqué, puisque les application s'execute en mode user et ce que tu demande nécessite le niveau de privilège noyau (ring 0 il me semble) ou peut-etre 1 (pour les pilotes ?) De plus avec la segmentation et la pagination, les adresses mémoires sont virtuelles et c'est dur à comprendre. Sans compter qu'à tout moment tu risque une belle segment fault, ou un "L'application bidule doit fermer", voire un rebootage pur et dur.
Enfin pour répondre à ta question, cela m'étonnerai que Windows met à disposition des fonctions de si bas niveau.