linux user group brescia

immagine del castello

Archivio della mailing list

Curiosita' tecnica

Giuseppe Corbelli cowo a lugbs.linux.it
Gio 27 Feb 2003 14:02:00 UTC
On Thu, Feb 27, 2003 at 09:36:57AM +0100, Enrico Colombini wrote:
> 
> Un mio programma C dava "segmentation fault" a causa di un errore. Fin qui 
> niente di strano, ma mi incuriosisce la modalita' della cosa:
> 
> La causa del segfault era una serie di letture al di fuori dei limiti di un 
> array. Il segfault pero' avveniva piu' tardi, in occasione di una scrittura 
> perfettamente lecita in un altro array.
> Potevo eseguire tutte le letture "out of bounds" che volevo senza problemi, ma 
> alla prima scrittura (ho provato a spostarla anche fuori della funzione 
> incriminata) andava in segfault.
> 
> Non conosco i dettagli del meccanismo di protezione della memoria di Linux. 
> Qualcuno ha una spiegazione?
Non so come funzioni. Ma per iniziare suppongo che ci voglia del tempo per
generare ed emettere il sigsegv. Di solito uso libefence per vedere di
preciso dove sta lo schifo.

-- 
        Giuseppe "Cowo" Corbelli ~\/~ My software: http://cowo.yoda2000.net
-<! When I was young I used to pray for a bike. Then I realized that God 
	 doesn't work that way. So I stole a bike and prayed for forgiveness. !>-



Maggiori informazioni sulla lista Lug