Я уверен, что это зависит от архитектуры, на которой вы работаете, но я почти уверен, что в ближайшее время вы не обнаружите ни одной битовой ошибки в своей памяти.Большинство, если не все контроллеры ОЗУ должны были реализовать некоторую форму защиты ECC для защиты от редких битовых проблем, которые имеют чипы ОЗУ.ОЗУ DDR, например, ОЧЕНЬ надежно по сравнению с такими дерьмовыми носителями, как флэш-память, для которой необходимо указать количество бит защиты ECC (где-то между 8 и 16 или около того), прежде чем они гарантируют функциональность.Пока у вас есть определенное количество ошибок в битах, плохие биты будут исправлены и, вероятно, не сообщены, даже не достигнув уровня программного обеспечения ЦП.
Бесшумное (не зарегистрированное) повреждение данных из чего-то простого, например, из одного битаОшибка считается огромным «нет-нет» в индустрии хранения данных, поэтому ваш производитель памяти, вероятно, сделал все возможное, чтобы ваше приложение не увидело ее, а тем более заставил вас справиться с этим!
В любом случае,Одним из распространенных способов обнаружения проблем в любой памяти является запуск простых циклов сравнения записи в адресном пространстве.Запишите 0 во всю вашу память и прочитайте ее обратно, чтобы обнаружить застрявшие строки данных «1», записать-прочитать-сравнить F с памятью, чтобы обнаружить застрявшие строки данных «0», и запустить линейное изменение данных, чтобы помочь обнаружить проблемы адресации.Ширина рампы данных должна регулироваться в соответствии с размером адреса.(т. е. 0x00, 0x01, 0x02 ... или 0x0000, 0x0001, 0x0002 и т. д.).Вы можете легко делать такие вещи, используя инструменты для измерения производительности хранилища, такие как Iometer или аналогичные, хотя это может быть так же легко написать самостоятельно.