Qu'est-ce que le débogage: types et techniques dans les systèmes embarqués

Essayez Notre Instrument Pour Éliminer Les Problèmes





Chaque programmeur de sa vie a la chance de rencontrer des bogues ou des erreurs dans son code tout en développant un système opérateur ou application ou tout autre programme. Dans de tels cas, les développeurs utilisent le débogage et des outils pour trouver des bogues dans un code et rendre le code ou le programme sans erreur. Il est possible d'identifier le bogue et de trouver où il s'est produit dans tout le programme. Dans la technologie logicielle, il s'agit d'un processus important pour trouver des bogues dans tout nouveau programme ou tout processus d'application. Des erreurs telles que des erreurs fatales et logiques peuvent être trouvées et supprimées pour obtenir le résultat souhaité. Par exemple, GDB, Visual studio et LLDB sont les débogueurs standard pour différents systèmes d'exploitation.

Qu'est-ce que le débogage?

Définition: La technique importante pour trouver et supprimer le nombre de les erreurs ou bogues ou défauts dans un programme est appelé débogage. Il s'agit d'un processus en plusieurs étapes dans le développement de logiciels. Il s'agit d'identifier le bogue, de trouver la source du bogue et de corriger le problème pour rendre le programme sans erreur. Dans le développement de logiciels, le développeur peut localiser l'erreur de code dans le programme et la supprimer à l'aide de ce processus. Par conséquent, il joue un rôle essentiel dans tout le cycle de vie du développement logiciel.




Débogage

Débogage

Types de débogage

En fonction du type d'erreur de code, il existe différents types de plugins d'outils. Il est nécessaire de comprendre ce qui se passe et quel type d'outil est utilisé pour le débogage. Il existe deux types de débogage pour résoudre tout problème général du plugin toolet et fournit des informations techniques.



  • En PHP, le code PHP peut être débogué pour attacher un client de débogage à l'aide de l'un de ces outils. Les utilitaires de débogage comme Xdebug et Zendbugger sont utilisés pour fonctionner avec PHPstorm. Kint est utilisé comme outil de débogage pour le débogage PHP.

Par exemple, pour activer le débogage PHP dans WordPress, éditez le fichier wp-config.php et ajoutez le code nécessaire. Un fichier d'erreur (error_log.txt) est produit dans le dictionnaire racine de mots qui peut être créé et accessible en écriture à l'aide d'un serveur Web. Sinon, utilisez un programme FTP pour créer et écrire. Par conséquent, toutes les erreurs qui se sont produites dans le front-end et le back-end peuvent être enregistrées dans ce fichier d'erreur.

  • Le débogage Javascript utilise l’outil de débogage du navigateur et la console javascript. Toute erreur javascript peut survenir et arrête l'exécution et le fonctionnement des opérations dans WordPress. Lorsque la console javascript est ouverte, tous les messages d'erreur seront effacés. Cependant, certains avertissements de console apparus peuvent créer un message d'erreur qui devrait être corrigé.

Il existe différents types de débogage pour différents systèmes d'exploitation. Elles sont,

  • Pour les systèmes d'exploitation Linux et Unix, GDB est utilisé comme débogueur standard.
  • Pour Windows OS, le studio visuel est un éditeur et un débogueur puissant.
  • Pour Mac OS, LLDB est un débogueur de haut niveau.
  • L'inspecteur parallèle Intel est utilisé comme source de débogage pour les erreurs de mémoire dans les opérations C / C ++.

Processus de débogage

Le processus de recherche de bogues ou d'erreurs et de leur correction dans n'importe quelle application ou logiciel s'appelle le débogage. Pour que les logiciels ou les produits soient exempts de bogues, ce processus doit être effectué avant de les commercialiser. Les étapes impliquées dans ce processus sont,


  • Identifier l'erreur - Il fait gagner du temps et évite les erreurs sur le site de l'utilisateur. L'identification des erreurs à un stade précoce permet de minimiser le nombre d'erreurs et la perte de temps.
  • Identifier l'emplacement de l'erreur - L'emplacement exact de l'erreur doit être trouvé pour corriger le bogue plus rapidement et exécuter le code.
  • Analyser l'erreur - Pour comprendre le type de bogue ou d'erreur et réduire le nombre d'erreurs, nous devons analyser l'erreur. La résolution d'un bogue peut conduire à un autre bogue qui arrête le processus d'application.
  • Prouvez l'analyse - Une fois l'erreur analysée, nous devons prouver l'analyse. Il utilise un processus d'automatisation des tests pour écrire les cas de test via le framework de test.
  • Couvrir les dommages latéraux - Les bogues peuvent être résolus en apportant les modifications appropriées et en passant aux étapes suivantes du code ou des programmes pour corriger les autres erreurs.
  • Corriger et valider - Il s'agit de la dernière étape pour vérifier toutes les nouvelles erreurs, modifications du logiciel ou du programme et exécuter l'application.

Logiciel de débogage

Ce logiciel joue un rôle essentiel dans le processus de développement logiciel. Les développeurs de logiciels l'utilisent pour trouver les bogues, analyser les bogues et améliorer la qualité et les performances du logiciel. Le processus de résolution des bogues à l'aide du débogage manuel est très difficile et prend du temps. Nous devons comprendre le programme, il fonctionne et les causes des erreurs en créant des points d'arrêt.

Dès que le code est écrit, le code est combiné avec d'autres étapes de programmation pour former un nouveau produit logiciel. Plusieurs stratégies telles que les tests unitaires, les révisions de code et la programmation par paires sont utilisées pour déboguer le programme volumineux (contient des milliers de lignes de code). L'outil de débogage standard ou le mode de débogage de l'environnement de développement intégré (IDE) aide à déterminer la journalisation du code et les messages d'erreur.

Les étapes impliquées dans le débogage du logiciel sont,

  • Le bogue est identifié dans un système et un rapport de défaut est créé. Ce rapport aide le développeur à analyser l'erreur et à trouver les solutions.
  • L'outil de débogage est utilisé pour connaître la cause du bogue et l'analyser par un processus d'exécution étape par étape.
  • Après avoir identifié le bogue, nous devons apporter les modifications appropriées pour résoudre les problèmes.
  • Le logiciel est retesté pour s'assurer qu'aucune erreur n'est laissée et vérifie toutes les nouvelles erreurs dans le logiciel pendant le processus de débogage du logiciel.
  • Une méthode basée sur des séquences utilisée dans ce processus logiciel a permis au développeur de trouver plus facilement et plus facilement les bogues et de les corriger à l'aide des séquences de code.

Techniques de débogage

Pour effectuer le processus de débogage facilement et efficacement, il est nécessaire de suivre certaines techniques. Les stratégies de débogage les plus couramment utilisées sont,

  • Débogage par force brute
  • Stratégie d'induction
  • Stratégie de déduction
  • Stratégie de retour en arrière et
  • Débogage par test.

Le débogage par force brute est la technique la plus couramment utilisée. Cela se fait en prenant des vidages de mémoire du programme qui contient une grande quantité d'informations avec des valeurs intermédiaires et en les analysant, mais analyser les informations et trouver les bogues conduit à une perte de temps et d'efforts.

La stratégie d'induction comprend l'emplacement des données pertinentes, l'organisation des données, l'hypothèse de conception (fournit les causes possibles d'erreurs) et l'hypothèse de preuve.

La stratégie de déduction comprend l'identification des causes possibles de bogues ou d'hypothèse Élimination des causes possibles à l'aide des informations Affinage de l'hypothèse (analyse une par une)

La stratégie de retour arrière est utilisée pour localiser les erreurs dans les petits programmes. Lorsqu'une erreur se produit, le programme est retracé d'un pas en arrière lors de l'évaluation des valeurs pour trouver la cause du bogue ou de l'erreur.

Le débogage par test est la conjonction avec le débogage par induction et le débogage par technique de déduction. Les cas de test utilisés dans le débogage sont différents des cas de test utilisés dans le processus de test.

Techniques de débogage dans les systèmes embarqués

Ces techniques réduisent le nombre d'erreurs et augmentent la qualité et la fonctionnalité du code. Le débogage des systèmes embarqués dépend des adresses de mémoire physique et de la mémoire virtuelle.

Il existe 6 techniques de débogage dans un système embarqué.

  • Simplifiez les données complexes
  • Diviser et conquérir
  • Ralentissez le processus
  • Modifier une seule variable à la fois
  • Création de modèles hors ligne
  • partir d'un état en bon état.

Différentes techniques de débogage sont utilisées dans différents cas. Une combinaison d'une ou plusieurs approches peut provoquer des erreurs. Ce processus comprend

  • Reproduire le bogue ou le problème
  • Expliquez le bogue en utilisant l'entrée de l'utilisateur
  • Essayez d'obtenir toutes les valeurs de variable et l'état du programme lorsque le bogue apparaît
  • Analysez le bogue et trouvez la cause du bogue
  • Corrigez le bogue et vérifiez toutes les causes des nouveaux bogues.

Outils de débogage

Un outil logiciel ou un programme utilisé pour tester et déboguer les autres programmes est appelé un débogueur ou un outil de débogage. Il permet d'identifier les erreurs du code aux différentes étapes du processus de développement logiciel. Ces outils analysent le test exécuté et trouvent les lignes de codes qui ne sont pas exécutées. Les simulateurs dans d'autres outils de débogage permettent à l'utilisateur de connaître l'affichage et le comportement du système d'exploitation ou de tout autre appareil informatique. La plupart des outils open source et des langages de script n'exécutent pas d'EDI et nécessitent le processus manuel.

Principalement utilisé Outils de débogage sont GDB, DDD et Eclipse.

  • Outil GDB: Ce type d'outil est utilisé dans la programmation Unix. GDB est pré-installé sur tous les systèmes Linux sinon, il est nécessaire de télécharger le package du compilateur GCC.
  • Outil DDD: DDD signifie Data Display Debugger, qui est utilisé pour exécuter une interface utilisateur graphique (GUI) dans les systèmes Unix.
  • Éclipse: Un outil IDE est l'intégration d'un éditeur, d'un outil de construction, d'un débogueur et d'autres outils de développement. IDE est l'outil Eclipse le plus populaire. Il fonctionne plus efficacement par rapport aux outils DDD, GDB et autres.

La liste des outils de débogage est répertoriée ci-dessous.

  • AppPuncher Debugger est utilisé pour déboguer les applications Internet riches
  • Débogueur AQtime
  • CA / EZ TEST est un progiciel de test / débogage interactif CICS
  • CharmDebug est un débogueur pour Charm ++
  • Débogueur CodeView
  • DBG est un débogueur et un profileur PHP
  • débogueur dbx
  • Outil de débogage distribué (Allinea DDT)
  • DDTLite - Aligner DDTLite pour Visual Studio 2008
  • DEBUG est le débogueur intégré de DOS et Microsoft Windows
  • Débogueur pour MySQL
  • Libellule d'opéra
  • La technique de débogage dynamique (DDT)
  • Le plug-in de débogage système intégré est utilisé pour Eclipse
  • FusionDebug
  • Débogueur OpenGL, OpenGL ES et OpenCL Debugger and Profiler. Pour Windows, Linux, Mac OS X et iPhone
  • Débogueur GNU (GDB), GNU Binutils
  • Débogueur Intel (IDB)
  • Le système est utilisé comme débogueur de circuit pour Systèmes embarqués
  • Désassembleur interactif (IDA Pro)
  • Débogueur Java Platform Debugger Architecture source du débogueur Java
  • LLDB
  • MacsBug
  • IBM Rational Purify
  • TRACE32 est un débogueur de circuits pour les systèmes embarqués
  • VB Watch Debugger - débogueur pour Visual Basic 6.0
  • Débogueur Microsoft Visual Studio
  • WinDbg
  • Xdebug - Débogueur et profileur PHP

Il s'agit donc du processus de débogage, de ses outils et techniques dans les systèmes embarqués Processus de développement logiciel. Le but de ceci est de trouver et de supprimer les bogues dans n'importe quel code. Voici une question pour vous, quels sont les inconvénients du débogage?