[완료]gcc코딩 후 실행시 에러나요

singularof의 이미지

소켓통신입니다.

서버쪽에서 이런 에러가 나오는데

*** glibc detected *** ./ser: free(): invalid next size (fast): 0x0804b048 ***
======= Backtrace: =========
/lib/libc.so.6[0x85aac1]
/lib/libc.so.6(cfree+0x90)[0x85e0f0]
./ser[0x8048f17]
/lib/libc.so.6(__libc_start_main+0xe0)[0x807390]
./ser[0x80486c1]
======= Memory map: ========
00720000-0072b000 r-xp 00000000 fd:00 10062748 /lib/libgcc_s-4.1.2-20070925.so.1
0072b000-0072c000 rw-p 0000a000 fd:00 10062748 /lib/libgcc_s-4.1.2-20070925.so.1
007d2000-007ed000 r-xp 00000000 fd:00 10062723 /lib/ld-2.7.so
007ed000-007ee000 r--p 0001a000 fd:00 10062723 /lib/ld-2.7.so
007ee000-007ef000 rw-p 0001b000 fd:00 10062723 /lib/ld-2.7.so
007f1000-00944000 r-xp 00000000 fd:00 10062724 /lib/libc-2.7.so
00944000-00946000 r--p 00153000 fd:00 10062724 /lib/libc-2.7.so
00946000-00947000 rw-p 00155000 fd:00 10062724 /lib/libc-2.7.so
00947000-0094a000 rw-p 00947000 00:00 0
08048000-0804a000 r-xp 00000000 fd:00 3899872 /home/jungo84/programing/0112/server/ser
0804a000-0804b000 rw-p 00001000 fd:00 3899872 /home/jungo84/programing/0112/server/ser
0804b000-0806c000 rw-p 0804b000 00:00 0 [heap]
b7e00000-b7e21000 rw-p b7e00000 00:00 0
b7e21000-b7f00000 ---p b7e21000 00:00 0
b7f85000-b7f87000 rw-p b7f85000 00:00 0
b7f98000-b7f99000 rw-p b7f98000 00:00 0
b7f99000-b7f9a000 r-xp b7f99000 00:00 0 [vdso]
bf984000-bf999000 rw-p bffeb000 00:00 0 [stack]
중지됨

이건 무슨에러죠?

akahard2dj의 이미지

흔히 저런 에러들은 point형태로 데이터를 설정한다음 malloc(), calloc()으로
메모리 공간을 잡지 않은 point를 free() 시킬때 나옵니다.

가령
double *a;
free(a);

이렇게 코딩을 하시고 컴파일을 하시면 위와 같은 에러를 보게 되실겁니다.
이런 에러는 invalid pointer 라고 에러가 나옵니다.

즉, 유효하지 않은 영역을 free()시킨것으로 보여집니다.

singularof의 이미지

감사합니다.

free때문에 에러가 생겼었네요..

jos77의 이미지

나왔다가 안 나왔다가 하는 간헐적 증상으로 반복되면, free() 오류가 맞습니다.
segmentfault 라고 나오기도 하고 free()가 엉뚱한 곳을 치게 되면 저런 메시지로도 나오더군요.

-----
안녕하세요 소프트웨어 공학센터 장원석 책임입니다.
http://www.software.kr

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.