[image]https://leganerd.com/wp-content/uploads/LEGANERD_039017.jpg[/image]
[quote]Controllo se l’ambiente di compilazione è sano (di mente).. l’ambiente di compilazione è sorridente e tiene in mano una spatola. Immagino di no[/quote]
Un segfault (segmentation fault), in italiano [url=http://it.wikipedia.org/wiki/Errore_di_segmentazione]errore di segmentazione[/url], è un errore generato dal sistema operativo quando un programma tenta di accedere ad una zona della memoria (RAM) su cui non ha diritto a operare in un qualche modo. Su sistemi operativi moderni è stato ridimensionato tramite particolari algoritmi di gestione della memoria (ad esempio il [url=http://it.wikipedia.org/wiki/Paging]paging[/url])
Un esempio molto semplice vede un programma accedere ad un dato di sola lettura per sovrascriverlo (non si puo’!) tramite un [url=http://it.wikipedia.org/wiki/Puntatore_(programmazione)]puntatore[/url], un indice che corrisponde ad un indirizzo di memoria.
Ovviamente se si usa un linguaggio di alto livello ([url=https://leganerd.com/2011/02/24/xkcd-python/]Python[/url]) non ci si deve preoccupare di questo errore perchè la gestione della memoria è automatizzata.
Il segfault è come il calcio di Inception!
Vignetta originale su [url=http://xkcd.com/371/]XKCD[/url].