Table des matières:
- Définition - Que signifie le défaut de segmentation (Segfault)?
- Techopedia explique le défaut de segmentation (Segfault)
Définition - Que signifie le défaut de segmentation (Segfault)?
Une erreur de segmentation (segfault) est une erreur renvoyée par le matériel avec protection de la mémoire qui indique au système d'exploitation qu'une violation d'accès à la mémoire s'est produite. Le système d'exploitation réagit généralement en signalant l'erreur au processus incriminé par le biais d'un signal, puis le système d'exploitation effectue une sorte d'action corrective. Cela se produit car un processus ou un programme tente d'accéder à la mémoire qui ne lui est pas affectée.
Un défaut de segmentation est également appelé violation d'accès.
Techopedia explique le défaut de segmentation (Segfault)
Un défaut de segmentation est souvent causé par des erreurs dans la programmation d'un processus ou d'une application dans laquelle le programme est amené à accéder à une mémoire qui n'était pas allouée pour lui mais pour d'autres programmes ou pour le système lui-même. Un processus n'est pas autorisé à toucher la mémoire qui ne lui est pas réservée, car il doit toujours demander de la mémoire avant de l'utiliser. Par conséquent, lorsqu'il touche accidentellement de la mémoire qui ne lui est pas affectée, une violation d'accès se produit.
Les fausses erreurs peuvent également être causées par une fonction récursive, qui peut utiliser tout l'espace de pile qui lui est attribué et empiéter rapidement sur la mémoire qui ne lui est pas affectée. Dans certains systèmes, cela est considéré comme un débordement de pile, mais pour d'autres, il s'agit simplement d'une sorte de violation d'accès.
Une erreur de segmentation peut être gérée par un processus via un gestionnaire de signaux personnalisé, mais c'est souvent le gestionnaire de signaux par défaut du système d'exploitation qui est utilisé, ce qui entraîne généralement la fin anormale du processus incriminé, appelé crash, ou le système d'exploitation forçant un vidage de mémoire. .