Identifiez les problèmes de mémoire réels au sein de votre application et identifiez les risques qu'ils exposent.
Debug Mémoire au Runtime
Pendant les tests, Insure++ vérifie tous les types de références mémoire,
y compris celles à la mémoire statique (global), à la pile et à la mémoire partagée - à la fois dans
votre propre code et dans des bibliothèques tierces. Les erreurs détectées incluent :
- Piles et tas corrompus,
- Utilisation de variables et d'objets non initialisés,
- Erreurs de tableau et de limite de chaîne sur le tas et la pile,
- Utilisation de pointeurs suspendus (dangling), NULLs et non initialisés,
- Tous types d’allocations mémoire et erreurs de libération ou incompatibilités,
- Tous types de fuites mémoire,
- Les incompatibilités de types dans les déclarations globales, les pointeurs et les appels de fonction.
Analyse à la Compilation
Insure++ peut détecter les erreurs lors de la compilation et de l'exécution. Les erreurs détectées à la compilation incluent :
- Perte de précision lors du cast d'un pointeur,
- Mismatch dans la spécification du format,
- Mismatch dans le type d'argument,
- Le code n'est pas évalué, n'a pas d'effet ou est inaccessible,
- Identifiant indéfini,
- Variable declarée, mais jamais utilisée,
- Retour d'un pointeur vers une variable locale,
- Une function retourne une valeur inconsistante,
- Variables inutilisées.
- Identifiez les blocs de code exécutés lors du débogage en mémoire,
- Comprenez les relations entre les problèmes mémoire et le code exécuté,
- Voyez combien de fois un bloc de code a été exécuté pour
comprendre l’impact d’un problème mémoire sur la stabilité globale de l'application.
Visualisation Dynamique de la Mémoire avec Parasoft Insure++
Insure++ visualise comment une application utilise la mémoire, fournissant
une vue graphique de toutes les allocations mémoire dans le
temps, avec une visibilité spécifique sur l’utilisation globale du tas,
les allocations de blocs, les fuites éventuelles, etc... Cet aperçu de la façon dont l'application
utilise la mémoire vous permet de l’analyser efficacement
et d'optimiser son utilisation et ses performances.
Pendant que votre application est en cours d’exécution, bénéficiez d’une visibilité en temps réel sur :
- Comment votre application utilise réellement la mémoire,
- Les problèmes mémoire tels qu'ils apparaissent et leur impact sur la mémoire,
- Les détails sur l'utilisation du tas, les allocations de bloc, la mémoire libre et la fréquence d'accès à la mémoire dans le temps,
- Des comparaisons avec des données historiques pour visualiser l'effet des réglages de l'utilisation de la mémoire par votre application.
“J'ai maintenant un outil qui m'évite d'avoir à mettre un chapeau de détective et à parcourir les listings
de code avec une loupe pour comprendre pourquoi les variables sont corrompues.”
- Greg Ercolano, Digital Domain
“Des problèmes que nous mettions plusieurs jours, voire plusieurs semaines à trouver, nous pouvons
maintenant régulièrement les trouver et les résoudre en quelques heures avec Insure++... Notre équipe d'ingénieurs est très enthousiaste à ce sujet et la direction est convaincue que cela valait le budget investi.”
- David Miller, HP
“Parasoft a vraiment augmenté la stabilité de nos composants logiciels. Il y a eu une révolution dans notre
façon de développer qui nous a permis de gagner un temps précieux pour nous concentrer sur d'autres sujets.”
- SELEX
|