"Mi estilo es el arte de luchar, sin luchar"
"El arte del Jeet Kune Do es simplemente simplificar." Bruce Lee

Segmentation Fault

2010-03-25 06:53:56-06                  Esta entrada ha sido vista 78 veces.

Ciencia y Tecnologia

El error se presenta en tiempo de ejecución y consiste (básicamente) en que se esta intentando una operación ilegal con la memoria. Los sistemas tipo UNIX, esta diseñados para protegerse y proteger a otros procesos de programas estúpidos o maliciosos.

 

Las causas mas usuales son las siguientes:
1.-Tratar de Escribir en un apuntador que "apunta" a Nulo.

char *foo=NULL;
strcpy(foo,"Muere...");


2.-Usar un apuntador que no ha sido inicializado.

char *foo;
strcpy(foo,"Muere...");


Cuando no se inicializa un apuntador, este apunta una dirección de memoria desconocida, si somos tipos afortunados, apuntara a una zona de memoria fuera del espacio de direcciones de nuestro proceso, y tendremos un segmentation fault. Pero si no somos tipos con suerte, este apuntador podría causar estragos en las estructuras de datos que usemos en nuestro programa.

3.-Tratar de escribir en memoria de "Solo Lectura"

char *foo="My String\n";
strcpy(foo,"Muere...");



Muchos compiladores de C/C++, ponen los "strings" en zonas de memoria de solo lectura.

4.-Sobrepasando los limites de un arreglo.

int Array[20];
Array[26]=666
;


5.-Haciendo cosas muy tontas con malloc() y free().

char buf[60];
free(buf);


ó
char *foo=(char *) malloc(33);
free(foo);
free(foo);



Algunas veces, tener una de estas equivocaciones no es un error, pero definitivamente es una mala practica de programación. Algunos compiladores y Sistemas Operativos son mucho mas tolerantes que otros, es por esto que si tu programa corria "Sin problemas " en un sistema, truene en otro.

P.D:rnstux, el nuevo editor esta muy chido, thx.

Permalink: http://www.mononeurona.org/entries/view/vendaval/2156


Comments Commentblogs:
1.- rnstux wrote:

@Vendaval Gracias =). aunque es el editor de Karamelo..

2010-03-25 09:33:34-06
New Commentblog
CAPTCHA Image




Join us!
Forgot your password?
This blog has been visited
31,123 times
vendaval
Alberto Rodriguez Sanchez Estudiante de Ingenieria en Computación en la UAM-A, programo en C, C++, C#, Python, Scheme, PHP,y Haskell. Uso Archlinux, Debian GNU/Linux, Mac OS X, OpenSolaris, NetBSD, FreeBSD, Plan9 y Win2. Pienso especializarme en computo científico y criptografía, que son mis grandes pasiones.

También pienso que la programación computacional es un Arte y que muchos programas son elegantes, muchos exquisitos, muchos son brillantes. Mi pensar es que se pueden escribir grandes programas, programas nobles y programas verdaderamente magníficos,por ello prefiero la Sintaxis Avanzada en los programas por que muestra un dominio del lenguaje y un buen grado de abstracción.

FreeBSD, C, Enlightenment y VI(M); son mis SO, Lenguaje de programación, manejador de ventanas y editor favoritos.

Practico Kali Filipino, Limalama y JKD (soy seguidor de la filosofía de Bruce Lee). Ademas soy el guardian la Sexta Casa del Zodiaco y también escribo con cierta regularidad en este blog.

"Se como el agua, piensa como el fuego"
Powered by
Despabilando la MonoNeurona.org
Livechat
<-Nombre

reiken wrote:
http://tinyurl.com/782vp5u
4 days, 3 hours ago

vendaval wrote:
Daniel Dahink wrote: Es poesía tu artículo de "Anatomía de un Hola Mundo" gracias por compartir, amigo
on 27/6/11

wrote:

on 26/6/11

wrote:
eres un PENDEJO
on 8/4/11

ethel wrote:
hola muchas garcías por toda la ayuda espero tengas un lindo fin
on 12/3/11

vendaval wrote:
sudo wireshark en la terminal
on 6/3/11

tony wrote:
una pregunta? despues de installar wireshark con con su -c"yum install wireshark" y k se complete la instalacion k ago para abrirl
on 5/3/11

vendaval wrote:
su -c "apt-get install amsn"
on 3/3/11

ethel wrote:
hola podrías decirme como instalar el amsn en debian ya lo intente y no lo logro de hecho ningún otro programa gracias
on 3/3/11

ethel wrote:
hola esta padre tu blog, me gusta mucho tu forma de explicar y lomas agradable es que seas pasiente, sigue asi :)
on 3/3/11


Llevo todo el día nostálgico, sera que el cielo gris me pone el corazón sentimental.
6 days, 4 hours ago
Haciendo imágenes .eps para un "paper"
1 week, 6 days ago
chingon, pero ya duermete aarkerio, todo lo andas testeando.
on 20/12/11
tengo que volver a arreglar mi i3.conf es lo malo de estar al día con las actualizaciones, dios nos libre de que sea administrador
on 16/12/11
que hacen los mononeurones tan tarde por aca???
on 30/11/11
Recupérate pronto @aarkerio
on 23/11/11
@chilicuil: thx.
on 3/11/11
Tristeando y sin sueño
on 2/11/11
@rnstux: muchos estamos así, pero date tiempo.
on 25/10/11
o de beber
on 17/10/11
Mis Albums
FirefoxjEdit.orgGimpOpenOffice.orgHacker
Top
Colectivo MonoNeurona.org © 2002-2011.