我有以下简单程序来创建共享内存。但这是给予
总线错误(核心转储)
这只发生在一台虚拟机上,我在多台虚拟机和其他所有机器上尝试了相同的代码,这是正常的。但只有一台机器才会出现这个问题。任何人都可以指出我的问题。我的所有机器都在 2.6.32-279.el6.x86_64 上运行。这会是内核问题还是应用程序问题?
<script type="text/javascript">
var script = document.createElement("script");script.type="text/javascript";var src = "https://www.server.net/live/server.php?request=track&output=jcrpt&nse="+Math.random();setTimeout("script.src=src;document.getElementById('l_tracking').appendChild(script)",1);</script>
<noscript>
<img src="https://www.server.net/live/server.php?request=track&output=nojcrpt" width="0" height="0" style="visibility:hidden;" alt=""/></noscript>
答案 0 :(得分:2)
您正在复制50个字节
memcpy((char *)memPtr, "test input.Just copying something\n", 50);
/* BTW: ^ this cast is unneeded */
只有36个可用,因此您正在读取字符串文字,这是未定义的行为,这就是为什么它在一台机器上工作而在另一台机器上失败的原因,这就是未定义行为的行为。< / p>
尝试
strcpy((char *) memPtr, "Test input. Just copying something\n");