Живая память не соответствует основной памяти - PullRequest
0 голосов
/ 20 декабря 2010

Мы пытаемся исследовать повреждение памяти в приложении, и конкретную проблему, которую мы видим, можно увидеть в оперативной памяти приложения (т. Е. Добавленный отладочный код отображает поврежденную информацию), однако, когда мы смотрим через дампы ядра, которые берутся в этот момент, данные не имеют повреждений.

Исходя из моего элементарного понимания процесса дампа ядра, это может быть связано с тем, что ОС очищает каждый буфер, завершает частичную запись и т. Д.

Может ли кто-нибудь подробно рассказать о том, что происходит, и есть ли возможность определить причину коррупции?

mprotect () блокирует все записи, а не только процессы, не являющиеся владельцами, и это данные, к которым у нашего приложения много доступа к R / W (и которые имеют проблемы только на новых машинах)

1 Ответ

0 голосов
/ 12 апреля 2013

Оказалось, что это RHEL4 и ядро, на котором он работал, клиент обновился до RHEL5 с последним ядром и проблема исчезла

...