我们正在尝试调查应用程序上的内存损坏,我们看到的确切问题可以在应用程序的实时内存中看到(即已添加的调试代码显示已损坏的信息),但是当我们查看时通过此时获取的核心转储数据没有损坏。
从我对核心转储过程的基本了解,这可能是由于操作系统刷新了每个缓冲区,完成了部分写入等等。
任何人都可以详细了解究竟会发生什么,以及是否还有确定导致腐败的原因?
mprotect()阻止所有写入,而不仅仅是非拥有进程,这是我们的应用程序具有大量R / W访问权限的数据(并且只在新计算机上出现问题)
答案 0 :(得分:0)
原来是RHEL4及其运行的内核,客户使用最新的内核升级到RHEL5并且问题消失了