s******e 发帖数: 273 | 1 【 以下文字转载自 Linux 讨论区 】
发信人: seashore (今年三十明年十八), 信区: Linux
标 题: 怎样创造一个 segv (转载)
发信站: BBS 未名空间站 (Mon Mar 2 13:08:00 2009)
发信人: seashore (今年三十明年十八), 信区: Programming
标 题: 怎样创造一个 segv
发信站: BBS 未名空间站 (Mon Mar 2 13:06:20 2009)
我需要人为的创造一个segv做些试验。发现一个有趣的现象,不知道有人碰到过没有,
以及如何解决。
我用如下的code,分别在Linux, Solaris(Sparc), 和Solaris(x86)上编译运行:
char* c=0x0;
int main() { *c='g'; printf("c=%c\n", *c); return 0; }
编译时用 -g 以取消优化。结果linux和Solaris(Sparc)都成功的创造了segv,而
Solaris x86则不行。(compiler used is /opt/SUNWspro/bin/C | t*****g 发帖数: 1275 | 2 CC/Solaris version?
It cored on my x86 machine.
$ /opt/SUNWspro/bin/CC -V
CC: Sun C++ 5.9 SunOS_i386 Patch 124864-01 2007/07/25
$ uname -a
SunOS * 5.10 Generic_118844-27 i86pc i386 i86pc
【在 s******e 的大作中提到】 : 【 以下文字转载自 Linux 讨论区 】 : 发信人: seashore (今年三十明年十八), 信区: Linux : 标 题: 怎样创造一个 segv (转载) : 发信站: BBS 未名空间站 (Mon Mar 2 13:08:00 2009) : 发信人: seashore (今年三十明年十八), 信区: Programming : 标 题: 怎样创造一个 segv : 发信站: BBS 未名空间站 (Mon Mar 2 13:06:20 2009) : 我需要人为的创造一个segv做些试验。发现一个有趣的现象,不知道有人碰到过没有, : 以及如何解决。 : 我用如下的code,分别在Linux, Solaris(Sparc), 和Solaris(x86)上编译运行:
|
|