Память не может быть read\written
Ошибка чтения памяти возникает у многих пользователей, но чёткой инструкции по её устранению не существует и по сей день. Я предлагаю вам ознакомиться со списком действий, которые могут помочь вам в разрешении такой проблемы. А могут и не помочь...
Весь нижеследующий текст взят из открытых Интернет-источников, ссылки на которые будут приведены ниже. Поиск проводился с помощью всем известных поисковых систем Яндекс и Google. Возможные причины ошибки, помеченные как (!!!), были расценены мною как выдумка. Тем не менее, у меня нет знаний\возможностей, чтобы проверить всё написанное, поэтому всерьёз (!!!) стоит рассматривать только в самом последнем случае. Правила темы 1) Никаких сборок (ZverCD, Game Edition и т.п.). Если вы напишите в этой теме об ошибке чтения памяти, а у вас будет стоять сборка, то получите предупреждение за флуд. 2) Не оставляйте посты типа "У меня ошибка в игре \ программе такой-то, помогите!". Всё, чем мы можем вам помочь, уже и так написано ниже. 3) Фразы типа "Всё перепробовал, ничего не помогает!" здесь писать бессмысленно. Если же вам так хочется сообщить о своей проблеме, то указывайте какие из нижеуказанных действий вы предпринимали конкретно у себя на компьютере. Также напишите пару слов об ОС (какая версия и как давно стоит). Что же нам известно про ошибку "Память не может быть read\written"? Если судить по форумам, то по Интернету ходит поистине огромное количество слухов, мнений и предположений на тему возникновения этой ошибки. Достаточно сказать, что Яндекс по запросу "Память не может быть read" находит два миллиона страниц. Внушительная цифра, согласитесь. Причина возникновения ошибки довольно проста: менеджер виртуальной памяти обнаруживает попытку доступа к страницам памяти, доступ к которым не разрешён для данного процесса. Но для Windows ошибка эта не смертельная, поэтому вместо "синего экрана смерти" лишь выдаётся сообщение об ошибке "Память не может быть...". Если говорить упрощённо, то для каждой программы в памяти выделяется некое пространство. И если приложение начинает лезть за пределы этого пространства, т.е. пытается оттуда что-то прочитать (read) или что-то записать туда (written), то появится такая ошибка. Microsoft потому и не даёт никаких рекомендаций по устранению этой ошибки, ведь это не её вина, что какие-то пользовательские программы не могут адекватно распоряжаться выданной им памятью. Да-да, вы правильно поняли - виноваты криворукие разработчики игр и программ. Именно из-за их ошибок вы теперь имеете счастье наблюдать "Память не может быть read\written". Скрытый текст: Самые распространённые мнения о причинах появления этой ошибки 1) Плохая память - на многих форумах первым делом советуют проверить оперативную память (RAM), но на самом деле битая память ведёт себя несколько по-иному. Как правило, это либо мгновенная перезагрузка компьютера, либо просто зависание\вылет в различных приложениях. Более того, зачастую даже Windows не загружается в случае повреждения оперативной памяти. Впрочем, в Возможной причине №9 имеются советы, которые касаются оперативки, так что при желании можете попробовать повозиться с ней. 2) Вирусная атака - вирусная активность обычно проявляется несколько по-иному. Зачастую это выглядит как отказ в запуске заражённых приложений, отсутствие Рабочего стола (т.е. Проводник\explorer.exe не запускается) или 100% загрузка процессора. Узнать про возможные виды вирусов и их признаков, а также способы их лечения можно тут. Но, естественно, это ещё не означает, что можно обойтись без антивируса. Появилась ошибка - проверяйте комп на вирусы. Особенно если раньше такой ошибки не было. 3) Отсутствие обновлений для Windows - на самом деле количество установленных обновлений никак не влияет на данную ошибку. Иными словами, можно установить стандартную WinXP и спокойно сидеть за компьютером, а можно скачать все апдейты, которые только есть, но всё равно получать эту ошибку, хотя в Интернете иногда можно встретить советы по удалению того или иного обновления. Кроме того, многие пользователи ставят комплексные пакеты обновлений (более известные как Service Pack), которые содержат несколько сотен обновлений, что делает невозможным определение виновника. 4) Лицензионная Windows не подвержена ошибкам - между лицензионной и пиратской версией нет никаких различий (кроме цены разве что). Впрочем, наличие лицензионного диска с дистрибутивом ОС даст вам своеобразную гарантию, что у вас нормальная система, а не какая-нибудь сборка. Возможные причины ошибки "Память не может быть read\written" Возможная причина №1 - служба DEP Чаще всего можно увидеть советы по отключению службы DEP (Data execution prevention = Предотвращение выполнения данных). Для этого необходимо открыть файл C:\boot.ini и заменить в нём строку /noexecute=optin на /noexecute=AlwaysOff (скриншот). Для применения изменений необходимо перезагрузить компьютер. Данное действие помогает где-то в 20% всех случаев. Если у вас вообще нет параметра noexecute, то просто допишите его вручную (как на скриншоте). Справка: файл boot.ini является одним из важнейших системных файлов, поэтому по умолчанию он скрыт. Соответственно, для его отображения потребуется разрешить отображение скрытых и системных файлов. Также его можно открыть для редактирования, если в Свойствах Моего компьютера выбрать вверху Дополнительно и нажать кнопку "Параметры" (самая нижняя). В открывшемся окне нажмите кнопку "Правка", чтобы открыть boot.ini для редактирования. Примечание: если у вас Windows Vista \ 7, то читайте это. Возможная причина №2 - конфликт программного обеспечения Скрытый текст: Возможная ошибка №3 - работа отладчика Dr. Watson В Windows XP есть дебаггер под названием Dr. Watson. Для того, чтобы отключить его, откройте реестр (Пуск-Выполнить: regedit) и раскройте ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion. В ней одним из самых первых разделов будет AeDebug. Щёлкните по нему правой кнопкой и выберите Удалить. Но учтите, что данное действие не претендует на решение ошибки чтения памяти, оно может лишь убрать само сообщение об ошибке. Возможная ошибка №4 - путь установки Скрытый текст: Возможная ошибка №5 - проблема обращения к системной библиотеке Эта ошибка может быть связана с проблемой обращения к системной библиотеке ole32.dll, которая могла быть испорчена или разрегистрирована (например, при установке\удалении других программ). Чтобы пофиксить эту возможную причину, сделайте Пуск-Выполнить: regsvr32 %SystemRoot%\system32\ole32.dll Возможная причина №6 - попытка отправить отчёт об ошибке Скрытый текст: Возможная причина №7 - проблемы с многоядерными процессорами Скрытый текст: Возможная причина №8 - проблемы с файлом подкачки Скрытый текст: Возможная причина №9 (!!!)- проблемы с оперативной памятью Скрытый текст: Возможная причина №10 (!!!)- плохой блок питания Ошибка чтения памяти может быть вызвана и некачественным\старым БП. Конечно, это очень уж маловероятно, но наиболее идеальным вариантом будет подключение компьютера к заведомо нормальному блоку питания. Если же у вас нет возможности одолжить у кого-нибудь БП, то просто отключите различную мелочь, т.е. CD\DVD-привод, карты расширения, установленные в PCI-слотах, принтер и т.д. Возможная ошибка №11 (!!!) - некорректно установленные тайминги памяти Скрытый текст: Возможная ошибка №12 (!!!) - перегрев памяти Модули RAM нагреваются во время работы, но дополнительное охлаждение требуется лишь конкретным планкам памяти, которые разогнаны самим производителем и потому нуждаются в хорошем охлаждении. Но обычная память (которая стоит у 95% пользователей) имеет слабое тепловыделение и нормально работает даже в плохо вентилируемых корпусах. Впрочем, при желании "температурный вопрос" можно легко прояснить - достаточно просто открыть корпус и посмотреть, исчезнет ошибка или нет. Что делать, если ничего из вышенаписанного не помогло На первом месте, безусловно, стоит конфликт программ\драйверов. К сожалению, даже имея в наличии полный список установленных приложений, нельзя сказать, какое из них вызывает ошибку. Так что если вышеприведенные советы вам не помогли, то единственным вариантом остаётся только методичное тестирование приложений. Для этого потребуется приложение\игра, которое 100% вызывает ошибку, а также чистая система. Методика тестирования 1) Отформатировать системный раздел и установить на него ОС (если не умеете, то читайте тему "Как переустановить Windows"). 2) Создать двух пользователей, но с разными именами (например, "User-1" и "Пользователь-2"). 3) Запустить проблемное приложение и проверить, исчезла ли ошибка. Примечание: для тестирования игр вам потребуется установить драйвер для видеокарты и (возможно) для звука. Но помните, что больше НИЧЕГО стоять не должно! Что делать, если ошибка исчезла: 1) Устанавливаем все оставшиеся драйвера и смотрим, появилась ошибка чтения памяти или нет. 2) Устанавливаем те программы, которыми привыкли пользоваться. Снова проверяем, появилась ошибка или нет. Что делать, если ошибка не исчезла: 1) Пробуем запустить игру \ программу в другом пользователе. 2) Пробуем установить игру \ программу на другой раздел (в общем, снова пробуем все те советы, которые перечислены вверху). 3) Снова переустанавливаем систему, однако на этот раз используем более новый \ старый дистрибутив. Например, вы проводили тест на WinXP+SP2. Значит, вам имеет смысл поискать дистрибутив WinXP+SP3. А если я не хочу переустанавливать систему? Дело ваше. Но помните, что на данный момент это единственный вариант, который обычно помогает выявить причину ошибки чтения памяти. Почему в сборках ошибка чтения памяти появляется чаще Скрытый текст: Источники: Скрытый текст: Авторские права Скрытый текст: |
Часовой пояс GMT +4, время: 04:36. |
Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.