Qu'est-ce qu'un core dump?

Un vidage de la mémoire est un enregistrement du contenu de la mémoire d'un ordinateur lorsqu'une erreur grave s'est produite. Il peut inclure la totalité de la mémoire système ou seulement la partie utilisée par le programme qui a échoué. Il peut également inclure d'autres données pertinentes telles que l'état du processeur, le contenu des registres et des informations sur les processus en cours. Les ingénieurs en logiciel utilisent fréquemment des vidages de mémoire avec des débogueurs et d’autres utilitaires pour analyser et corriger les erreurs informatiques. Un core dump peut également être utilisé pour transférer un processus en cours d'un processeur à un autre pendant le fonctionnement normal.

Le terme "core dump" a probablement pris naissance dans les années 1960, lorsque les premiers ordinateurs utilisaient une mémoire magnétique. Lorsqu'un programme en cours d'exécution plantait, toutes les données de l'ensemble du cœur étaient imprimées sur papier pour faciliter le débogage. Ces impressions consistaient généralement en peu plus que des adresses de mémoire et des données en notation octale ou hexadécimale. Au fur et à mesure de l'amélioration des technologies de stockage, les vidages de mémoire pourraient être enregistrés sur disque, sur bande magnétique amovible ou sur des clés USB. Une plus grande capacité de stockage des informations d'état et les avancées en matière de débogage logiciel ont rendu le diagnostic d'erreur plus efficace.

Les causes typiques des vidages mémoire sont des applications mal écrites ou des logiciels système. Très souvent, le code de programme suppose que les pointeurs et les index de tableau font toujours référence à des structures de données valides. Si certains d'entre eux ont dépassé les limites de leurs structures d'origine, par exemple, un vidage de la mémoire peut se produire. Des problèmes d'accès aux fichiers de données sur un périphérique de stockage ou de lecture de données corrompues peuvent également provoquer un vidage mémoire. Des problèmes matériels, notamment des dysfonctionnements de la mémoire, des disques durs ou des processeurs, peuvent également les déclencher.

Il existe généralement deux types de vidages de base. Un type est celui où le processus en cours ou le programme d'application est arrêté et le contrôle est retourné au système d'exploitation. Dans ce cas, le reste du système continue de fonctionner normalement car seul le programme incriminé a été arrêté. Un fichier de vidage principal volumineux est généralement généré et peut ensuite être chargé dans un débogueur. Si l'erreur survient dans un programme pour lequel les symboles et le code source sont disponibles, ceux-ci peuvent également être chargés dans le débogueur.

L'autre type plus grave de vidage de la base est également appelé panique du noyau. Ce type de vidage bloque tout le système pour éviter des complications supplémentaires et la corruption des données. Sur les systèmes Microsoft Windows®, ce type de vidage se produit généralement sous la forme très familière d'un "écran bleu de la mort". De telles pannes sont généralement plus difficiles à déboguer et sont souvent causées par des problèmes matériels ou au niveau du système. Celles-ci peuvent se produire avant que le système ait fini de démarrer lorsque peu d'informations sont disponibles sur la cause réelle.

DANS D'AUTRES LANGUES

Cet article vous a‑t‑il été utile ? Merci pour les commentaires Merci pour les commentaires

Comment pouvons nous aider? Comment pouvons nous aider?