headermask image

Память не может быть read\written

Данная ошибка возникает у многих пользователей, но чёткой инструкции по её устранению не существует и по сей день. Я предлагаю вам ознакомиться со списком действий, которые могут помочь вам в разрешении такой проблемы. А могут и не помочь…

Весь нижеследующий текст взят из открытых Интернет-источников, ссылки на которые будут приведены ниже. Поиск проводился с помощью всем известных поисковых систем Яндекс и Google. Возможные причины ошибки, помеченные как (!!!), были расценены мною как выдумка. Тем не менее, у меня нет знаний\возможностей, чтобы проверить всё написанное, поэтому всерьёз (!!!) стоит рассматривать только в самом последнем случае.

1) Если какой-либо из нижеприведённых советов помог вам в решении проблемы, то желательно написать об этом здесь или мне на E-Mail (адрес указан слева, под ником). В противном же случае воздержитесь от захламления темы сообщениями типа “Наблюдаю у себя ошибку чтения памяти. Меня это не сильно волнует, но я решил сообщить об этом всем”.

2) Если вам известен ещё какой-то способ борьбы с ошибкой чтения памяти, то не поленитесь и напишите о нём здесь (или мне на E-Mail), даже если вы сами его не пробовали. Возможно, вы сэкономите кому-то таким образом несколько часов или несколько дней. Или даже спасёте от бессмысленной покупки новых комплектующих.

3) Учтите, что если у вас стоит какая-либо сборка (ZverCD и т.п.), то всякие попытки помочь вам будут отложены до тех пор, пока вы не установите стандартную Windows XP. Ввиду большого количества софта и различных украшений для системы, которыми битком набиты эти сборки, они зачастую вызывают ошибку “Память не может быть read”. Кроме того, они не дают возможность проведения нормального тестирования приложений (подробнее об этом см. ниже).

Разное и интересное

Незаменимый ресурс для изучающих иностранные языки,по своему опыту знаю, что общение с носителями языка бесценно.

Современные музыканты и все про них. Рекомендую всем любителям музыки.

Что же нам известно про ошибку “Память не может быть read\written”?

Если судить по форумам, то по Интернету ходит поистине огромное количество слухов, мнений и предположений на тему возникновения этой ошибки. Достаточно сказать, что Яндекс по запросу “Память не может быть read” находит два миллиона страниц. Внушительная цифра, согласитесь.

Причина возникновения ошибки довольно проста: менеджер виртуальной памяти обнаруживает попытку доступа к страницам памяти, доступ к которым не разрешён для данного процесса. Но для Windows ошибка эта не смертельная, поэтому вместо “синего экрана смерти” лишь выдаётся сообщение об ошибке “Память не может быть…”.

Если говорить упрощённо, то для каждой программы в памяти выделяется некое пространство. И если приложение начинает лезть за пределы этого пространства, т.е. пытается оттуда что-то прочитать (read) или что-то записать туда (written), то появится такая ошибка. Microsoft потому и не даёт никаких рекомендаций по устранению этой ошибки, ведь это не её вина, что какие-то пользовательские программы не могут адекватно распоряжаться выданной им памятью.

 

“Ну и пускай лезет игра за пределы памяти! Мне пофиг!! Хочу играть!!!” – так думает подавляющее большинство пользователей. И, в принципе, их понять можно. Только вот представьте себе, что будет, если ваша любимая игрушка вылезет за пределы отведенной ей памяти и решит записать часть игрового кода в тот блок памяти, в котором сейчас находится ядро операционной системы…

Самые распространённые мнения о причинах появления этой ошибки

1) Плохая память – на многих форумах первым делом советуют проверить оперативную память (RAM), но на самом деле битая память ведёт себя несколько по-иному. Как правило, это либо мгновенная перезагрузка компьютера, либо просто зависание\вылет в различных приложениях.

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% всех случаев.

Справка: файл boot.ini является одним из важнейших системных файлов, поэтому по умолчанию он скрыт. Соответственно, для его отображения потребуется разрешить отображение скрытых и системных файлов. Также его можно открыть для редактирования, если в Свойствах Моего компьютера выбрать вверху Дополнительно и нажать кнопку “Параметры” (самая нижняя). В открывшемся окне нажмите кнопку “Правка”, чтобы открыть boot.ini для редактирования.

Возможная причина №2 – конфликт программного обеспечения

Проще говоря, одна из программ мешает правильно функционировать другой программе и появляется эта ошибка. Понятное дело, что чёткого списка конфликтного софта не существует. Тем не менее, в Интернете засветился пакет Norton Internet Security 2007, Kaspersky Internet Security 2009, Outpost Firewall, K-Lite Mega Codec Pack и антивирус Dr.Web, а также драйвера от принтеров фирмы Hewlett-Packard. Сюда же можно отнести и “захламленную” систему. Если Windows простояла полгода или больше, то вполне может появиться эта ошибка, особенно если ОС активно используется, т.е. часто устанавливаются новые программы, игры и драйвера.

Попробуйте также загрузиться в Безопасном режиме. Если там проблемное приложение запустится нормально, то значит, виновник ошибки грузится при обычной загрузке системы.

Справка: при загрузке в Безопасном режиме не загружаются видеодрайвера, поэтому протестировать игры в нём не получиться. Если необходимо протестировать программу, использующую сеть, то выбирайте не обычный Безопасный режим, а с поддержкой сети.
Возможная ошибка №3 – работа отладчика Dr. Watson
В Windows XP есть дебаггер под названием Dr. Watson. Для того, чтобы отключить его, откройте реестр (Пуск-Выполнить: regedit) и раскройте ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion. В ней одним из самых первых разделов будет AeDebug. Щёлкните по нему правой кнопкой и выберите Удалить. Но учтите, что данное действие не претендует на решение ошибки чтения памяти, оно может лишь убрать само сообщение об ошибке.

Возможная ошибка №4 – путь установки

C:\Program Files\Имя_разработчика\Имя_издателя \Имя_локализатора\Имя_основной_папки… Признайтесь, вы ведь часто видели подобный путь при установке очередной игры? Но мало кто утруждает себя тем, чтобы исправить это дикое нагромождение папок на что-нибудь более простое и понятное. Однако длинный путь (да ещё и с русскими буквами) вполне может послужить причиной возникновения ошибки чтения памяти. Яркий тому пример – всем известный Steam. Чуть ли не в половине случаев Steam-игры вываливались с сообщением об ошибке чтения памяти. А всё потому, что пользователи ставили Steam куда попало (например, C:\Игры\Программы для игр\Steam вместо D:\Games\Steam). То же самое касается и программ. Какая-то софтина вываливается с ошибкой про память? Удалите её, а затем установите заново, но при этом используйте как можно более короткий путь.

Это интересно: если установка по более короткому пути не поможет, то попробуйте установить проблемное приложение на другой раздел. Самому довелось наблюдать, как известный пакет для видеомонтажа Pinnacle Studio вываливался с ошибкой “Память не может быть written” при попытке открытия видеофайлов. Несмотря на то, что был установлен по нормальному пути (C:\Program Files\Pinnacle Studio). А вот когда его переустановили в E:\Pinnacle Studio, нормально заработал.
Возможная ошибка №5 – проблема обращения к системной библиотеке
Эта ошибка может быть связана с проблемой обращения к системной библиотеке ole32.dll, которая могла быть испорчена или разрегистрирована (например, при установке\удалении других программ). Чтобы пофиксить эту возможную причину, сделайте Пуск-Выполнить: regsvr32 %SystemRoot%\system32\ole32.dll

Возможная причина №6 – попытка отправить отчёт об ошибке

Весьма оригинальный совет, в котором было сказано, что подобной ошибки (Память не может быть read\written) можно избежать, если отключить в WinXP отправку любых отчётов об ошибках в Microsoft. В Свойствах Моего компьютера надо выбрать вверху Дополнительно и нажать кнопку “Отчет об ошибках”. Откроется небольшое окно. Его необходимо привести вот к такому виду:
memory1.png
Возможная причина №7 – проблемы с многоядерными процессорами

 

По умолчанию ОС старается равномерно распределять нагрузку по всем имеющимся процессорам, однако теоретически это способно вызвать ошибку чтения памяти. Поэтому если у вас многоядерный процессор (то есть 2 ядра или больше), то попробуйте скачать маленькую программку CPU-Control и выставить в ней режим “CPU 1″.

Если у вас AMD-процессор: попробуйте скачать и установить последнюю версию драйвера для вашего процессора

Если у вас Intel-процессор: увы, но они все обходятся стандартными системными драйверами, поэтому для Intel-процессоров искать какие-то обновленные драйвера смысла нет.

Важно! Если CPU-Control вам не помог, то выставьте в нем значение Auto, закройте его и удалите.

Количество ядер можно посмотреть в Диспетчере устройств. Пример с процессором, у которого два ядра:
memory2.png

Это интересно: если игра “Герои Меча и Магии III” вылетает с ошибкой “Память не может быть read”, то CPU-Control в режиме “CPU 1″ практически до нуля снижает вероятность появления этой ошибки.
Возможная причина №8 – проблемы с файлом подкачки

Рекомендуется проконтролировать обращение системы к этому файлу. Для этого необходимо в Свойствах Моего компьютера выбрать вверху Дополнительно и нажать кнопку “Параметры” (самая верхняя). Откроется новое окно. В нём также надо выбрать вверху Дополнительно и нажать в нижней части кнопку “Изменить”. Выделите диск, на котором хотите расположить файл подкачки (желательно, чтобы он был поменьше фрагментирован). Поставьте точку напротив пункта Особый размер и введите числа в поля:
memory3.png

Минимальный и максимальный объём желательно выставлять одинаковым. Перед выходом необходимо нажать кнопку “Задать”. При уменьшении\отключении файла подкачки потребуется перезагрузка. При увеличении\включении файла подкачки перезагрузка обычно не нужна. Ниже будут приведены рекомендуемые значения для объёма файла подкачки в зависимости от объёма RAM самого компьютера:

  • 512Мб RAM = 1536Мб для файла подкачки
  • 1024Мб RAM = 1024Мб для файла подкачки
  • 1536Мб RAM = 512Мб для файла подкачки
  • 2048Мб RAM = 256Мб для файла подкачки или вообще 0Мб

Возможная причина №9 (!!!)- проблемы с оперативной памятью

Как уже говорилось выше, оперативная память обычно не является виновником возникновения ошибки “Память не может быть read”. Тем не менее, есть рекомендации, которые имеют непосредственное отношение к оперативке, и, возможно, помогут вам убрать ошибку чтения памяти.

Во-первых, желательно использовать память от одного и того же производителя. Конечно, существует множество компьютеров, в которых работает память от разных фирм, однако если у вас начала вылезать ошибка чтения памяти, а в компьютере установлены модули от разных производителей, то имеет смысл попробовать поочереди выдернуть каждый из модулей и посмотреть на результаты.

Узнать фирму-производителя каждого модуля оперативной памяти можно с помощью маленькой и бесплатной программы CPU-Z (в Возможной причине №11 есть её скриншот). Впрочем, даже если у вас оперативная память от одной фирмы, то при наличии свободного времени можно все равно поиграться с модулями памяти (переткнуть их в свободные слоты или просто поменять местами).

Во-вторых, помните, что лучше всего устанавливать парные модули одинакового объёма. Иными словами, нежелательны комбинации типа:

  • 1 х 1024Мб + 2 х 512Мб
  • 1 х 512Мб + 2 х 256Мб

Разумеется, с большой долей вероятности всё будет нормально работать, но всё-таки желательно ставить одинаковые модули. Например:

  • 4 х 512Мб
  • 2 х 1024Мб

Возможная причина №10 (!!!)- плохой блок питания
Ошибка чтения памяти может быть вызвана и некачественным\старым БП. Конечно, это очень уж маловероятно, но наиболее идеальным вариантом будет подключение компьютера к заведомо нормальному блоку питания. Если же у вас нет возможности одолжить у кого-нибудь БП, то просто отключите различную мелочь, т.е. CD\DVD-привод, карты расширения, установленные в PCI-слотах, принтер и т.д.

Возможная ошибка №11 (!!!) – некорректно установленные тайминги памяти

Один из наиболее “тяжёлых” случаев*. Если вкратце, то вся оперативная память построена на таймингах (задержках) чтения\записи данных. Вот так выглядит стандартная оперативная память с её задержками:
memory4.png

Обратите внимание, что задержки для каждой частоты разные. Соответственно, если тайминги выставлены неправильно (хотя материнская плата должна делать это автоматически), то компьютер может работать, мягко говоря, нестабильно. Обычно это выражается зависанием\перезагрузкой, но мне встретились предположения и том, что это тоже может вызвать ошибку “Память не может быть read\written”. Соответственно, рекомендуется установить тайминги вручную или даже чуть-чуть повысить их. К сожалению, лишь очень малое количество пользователей (где-то 1 на 1000) способно самостоятельно выставить в BIOS’е правильные тайминги для своей RAM. Сюда же можно отнести неправильно выставленную частоту или напряжение для памяти, хотя на одном из форумов встретилось интересное сообщение: человеку помогло снижение частоты памяти.

*Сам я весьма скептически отношусь к подобному варианту возникнования ошибки чтения памяти.
Возможная ошибка №12 (!!!) – перегрев памяти
Модули RAM нагреваются во время работы, но дополнительное охлаждение требуется лишь конкретным планкам памяти, которые разогнаны самим производителем и потому нуждаются в хорошем охлаждении. Но обычная память (которая стоит у 95% пользователей) имеет слабое тепловыделение и нормально работает даже в плохо вентилируемых корпусах. Впрочем, при желании “температурный вопрос” можно легко прояснить – достаточно просто открыть корпус и посмотреть, исчезнет ошибка или нет.

Что делать, если ничего из вышенаписанного не помогло

На первом месте, безусловно, стоит конфликт программ\драйверов. К сожалению, даже имея в наличии полный список установленных приложений, нельзя сказать, какое из них вызывает ошибку. Так что если вышеприведенные советы вам не помогли, то единственным вариантом остаётся только методичное тестирование приложений. Для этого потребуется приложение\игра, которое 100% вызывает ошибку, а также чистая система.

Методика тестирования
1) Отформатировать системный раздел и установить на него ОС.
2) Создать двух пользователей, но с разными именами (например, “User-1″ и “Пользователь-2″).
3) Запустить проблемное приложение и проверить, исчезла ли ошибка.

Примечание: для тестирования игр вам потребуется установить драйвер для видеокарты и (возможно) для звука. Но помните, что больше НИЧЕГО стоят не должно!

Что делать, если ошибка исчезла:
1) Устанавливаем все оставшиеся драйвера и смотрим, появилась ошибка чтения памяти или нет.
2) Устанавливаем те программы, которыми привыкли пользоваться. Снова проверяем, появилась ошибка или нет.

Что делать, если ошибка не исчезла:
1) Пробуем запустить игру \ программу в другом пользователе.
2) Пробуем установить игру \ программу на другой раздел (в общем, снова пробуем все те советы, которые перечислены вверху).
3) Снова переустанавливаем систему, однако на этот раз используем более новый \ старый дистрибутив. Например, вы проводили тест на WinXP+SP2. Значит, вам имеет смысл поискать дистрибутив WinXP+SP3.

Почему в сборках ошибка чтения памяти появляется чаще

Как уже неоднократно говорилось выше, ошибка чтения памяти – это ошибка программная, т.е. одна программа мешает нормально работать другой. Теоретически, чем больше программ вы устанавливаете, тем выше риск появления этой ошибки.

Однако разработчики игр и программ тоже не дураки, поэтому они стараются обеспечить функционирование своего приложения в любых условиях. Тем не менее, каждый компьютер представляет собой уникальное сочетание аппаратных и программных функций. И иногда бывает так, что какая-нибудь программа, которая нормально работает у разработчика, у пользователей работать отказывается, вызывая ошибку чтения памяти. Почему? Да потому, что у разработчика на компьютере не был установлен весь тот софт, который сейчас есть у вас. Эмуляторы, всевозможные кодеки и проигрыватели, программы-ускорители, программы для украшения системы… Ну сами подумайте, зачем разработчикам иметь на рабочем компьютере подобный хлам? Причем, кстати, далеко не у всех этот “хлам” какие-то проблемы вызывает, потому что “хлам” написан другими разработчиками, которые тоже постарались обеспечить ему работу без ошибок. Но иногда бывает так, что два приложения не могут нормально работать вместе.

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

Сборка – это неизвестно как и неизвестно кем модифицированная ОС. Так что подумайте, имеет ли смысл ставить сборку, если проблем с этой сборкой будет больше, чем с обычной системой, а какой-то ощутимой пользы вам от сборки не будет.

Источник

Print This Post Print This Post
Похожие посты
  • No related posts
  • 13 комментов оставлено (Add 1 more)

    1. У меня вылазит ошибочка на процессор Explorer.exe(процессор на рабочй стол и всего отображаемого), вылазиет тогда когда все папки из трея(полосочка где пуск) отсувствуют, чтобы такого не было, надо как минимум одну папку открыть чтобы такого не повторялось.
      Помогите как это исправить.

      1. bk0mz on March 3rd, 2014 at 8:38 pm
    2. Не один из выше перечисленных не помогло (((((. может есть еще варианты?

      2. SM on April 24th, 2013 at 3:46 am
    3. У меня эта проблема с игрой half-life2 episode 2,вылетает при загрузке меню.Причин я нашел 2:1-у меня сборка “зверь” 2-”засран” компьютер.Помогла только переустановка винды.

      3. Dmitri on July 12th, 2012 at 6:03 pm
    4. Возможное решение проблемы: удалить или переместить куда-нибудь данные программы из папки C:\Documents and Settings\%username%\Application Data\%program name%

      4. zut on March 1st, 2012 at 11:15 am
    5. Пичины ошибки:
      1. кривые руки программиста
      2. при установке игры или программы у вас работали: напр: проигриватель, сканировал антивир, дефрагментатог и т. д. и т. п..
      3. Установка нескольких программ одновременно.
      4. Удаление чего – либо при установке (одновременно)
      5. Диск был записан с ошибкой или поцарапан.
      6. Преднамеренное создание ошибки в проге – для взлома или заражения.

      Оснавная причина – нашла коса на камень.

      Лечится:
      1. Обязательно пройтись антивирусным сканером например: здорово помагает drWeb – вернёт HOST на место.
      2. Ищем оригинальный SP3 – есть на серверах Microsoft отдают за просто так, весит 303 – 353 мб ( потеряете установленные красоты) – выручал практически всегда. Незабываем про сканер тот – же drWeb.
      3. Покупкой оригинальной Windows и её устанкой или переустановкой. Если не помогло вычисляем сволочную прогу как – включаем соображалку. Прим: установил прогу запустил Skype – установил другую запустил Skype.
      4. Лезем в блок – извлекаем оперативку зачищаем контакты школьной стёркой. Пожалейте видюху зачистите и её. С любовью чистим все – где видим пыль и грязь, только не стеркой – кисточкой и пылесосом. И конечно же нежно извлекаем кулера требуют смазки – способны блокировать даже запуск.
      Помните всегда – пыль убийца компьютера!

      И для бывалых: ошибка вылезает если ваша прога или игра завязана на Flash проигриватель или обращается к нему напр: тот – же Skype или Km плеер.

      Вчера вылечил залив оригинальный SP3.

      5. sos.warn on November 17th, 2011 at 1:16 pm
    6. Я запустил в безопасном режиме и ошибок нету.. значет при обичной загрузки штота есть.. как ето исправить?

      6. fiNEee on February 8th, 2011 at 10:40 pm
    7. Возможная ошибка №4 – путь установки – это помогло, игра Star Wars The Force Unleashed 2

      7. ak74m on January 8th, 2011 at 2:01 am
    8. На собственном опыте проверил, что данная ошибка в большинстве случаев возникает на различного вроде модифицированных ОС, сборок (вроде зверьков, лонеров и т.д.), причем часто исправить не удается, помогает только переустановка системы на “оригинал”

      8. User on August 14th, 2010 at 7:22 pm
    9. товарищ…….ничего не помогло……..новая система SP3, новый винт……
      все отлично…..НЕ МОГУ запустить motogp 08 , GTA 4……Хотя при этом прошел battlefield bad company 2 без всяких напрягов…………

      9. Дмитрий on April 9th, 2010 at 8:44 pm
    10. Ребята незнаю может кому-то поможет, может, нет.
      Все время сталкивался с этой проблемой.
      Переустановил винду на ХР.
      И подумал сначала запущу фотошоп что бы провериться, а потом буду уже все остальное устанавливать.
      Если нет, буду другую винду ставить.
      Как нестранно все запустилось.
      Я давай устанавливать все что нужно дошло дело до шрифтов.
      И я установил 5000 с копейками шрифтов.
      В это время фотошоп был открыт.
      И после установки шрифтов фотошоп выбил опять эту ошибку.
      Что память не прочитана обратитесь ……
      Я понял, что дело в шрифтах.
      Я удалил часть
      Фотошоп уже открывается, но не могу нечего открыть вылазит ошибка.
      Удалил еще часть
      Уже картинку могу открыть а что то побольше ошибка.
      Удалил еще.
      Пока все работает при этом у меня стоит 2600 шрифтов.
      Надеюсь, что кому-то ет поможет.
      Так как сам долго страдал.
      Перепробовал Dep и т.д. все, что советовали в нете.
      А оказалось, что я сначала установил все и шрифты, а потом уже фотошоп.
      И не мог понять из за чего ошибка.
      Из за такого пустяка раз 5 уже винду переустанавливал.

      10. djmatisa on February 24th, 2010 at 5:56 pm
    11. служба DEP бывает виновна в этой ошибке
      ну а также вирус Lovesan генерит сие безобразие.
      также поврежденный svchost

      11. Павел on February 23rd, 2010 at 12:32 pm
    12. ага, щас, подскажет тебе кто нибудь… жди.

      12. Кирилл У on January 9th, 2010 at 2:44 pm
    13. У меня эта ошибка выскакивает, когда пытаюсь запустить игру,на любом Windows SP2,SP3,Game,Xtreme; решение проблемы нашёл,но не до конца, удалил системный процесс svchost.exe. Игра запустилась!!!!! Но без звука!!!! Как быть может кто подскажет!?

      13. utkinea83 on November 28th, 2009 at 12:05 am