Форум 3DNews

Форум 3DNews (http://forum.3dnews.ru/index.php)
-   Общие проблемы (http://forum.3dnews.ru/forumdisplay.php?f=5)
-   -   Что значит, память не может быть «read» («written»)? (http://forum.3dnews.ru/showthread.php?t=63755)

Agmy 03.09.2006 11:46

Что значит, память не может быть «read» («written»)?
 
Цитата:

Сообщение от FooBar (Сообщение 1562175)
Это бывает по многим причинам:
- Баг в программе
- Дефект железа
- Попытка атаки
- Вирусы/трояны.


Почему, память не может быть «read» ( «written» ) - вариант лечения.

Agmy 03.09.2006 11:46

Что значит, память не может быть «read» («written»)?
 
Цитата:

Сообщение от Объявление
Цитата:

Сообщение от FooBar (Сообщение 1562175)
Это бывает по многим причинам:
- Баг в программе
- Дефект железа
- Попытка атаки
- Вирусы/трояны.


Почему, память не может быть «read» ( «written» ) - вариант лечения.

...

Ситуация такая:

Пытаюсь поставить 3ds Max 8. Запускаю установщик, он выполняет подготовительные операции, доходит дело непосредственно до установки (появляется installation wizard) - при нажатии на "далее" выводится
ошибка msiexec.exe (Инструкция по адресу такому-то обратилась к памяти по адресу такому-то. Память не может
быть "read").

В подробностях:
AppName: msiexec.exe
AppVer: 3.1.4000.1823
ModName: ntdll.dll
ModVer: 5.1.2600.2180
Offset: 00010f2b

Ходил на сайт микрософта, брал последнюю версию windows installer'a. Проверял память на ошибки - нет. Память
не разогнанная. Все сторонние проги убирал, включая антивирус. ОС - WinXp SP2, все обновления стоят.
Конфигурация железа: Athlon XP Barton 3200+, 1024Mb DDR400, ATI Radeon 9800 Pro. На вирусы проверялся.
Процесс windows installer останавливал, перезапускал. С переменными средами все в порядке(C:\Windows\Temp).

Поначалу смутило, что на микрософтовском сайте в "сведениях о загружаемом файле" указан билд
3.1.4000.2435, а в свойствах msiexec.exe в системе - 3.1.4000.1823. Подумал, может по какой-то причине не
удается заменить старый файл, когда ставлю новый windows installer - отключил процесс, вручную удалил
msiexec.exe, поставил новый WI - номер билда все-равно 3.1.4000.1823.

Теперь, - самое интересное:пробовал запускать Windows Installer Clean Up Utility - вылетает с такой же ошибкой
при нажатии "next" в installation wizard'е. Попробовал поставить седьмые максы - то же самое. До этого подобных
проблем не припоминаю.

У кого какие соображения? (кроме переустановки виндов)

Antinomy 03.09.2006 13:59

Цитата:

Сообщение от Agmy
Память не может быть "read"

Обычно это лечится именно перестановкой виндов. Но раз уж жесткие ограничения, то
Цитата:

Сообщение от Agmy
Проверял память на ошибки - нет

чем? На вирусы версия последняя? Что за тайминги памяти.
Цитата:

До этого подобных
проблем не припоминаю.
Дистрибутивы те же использовались? Попробуй реестр почистить (JV16 Tools) и вынести из бенкраунда как можно больше прог.

Antinomy добавил :

Цитата:

тому ничего не будет
:gigi:

Andron_ 03.09.2006 14:34

служба отключена?:rolleyes:

Agmy 03.09.2006 14:41

Память проверял memtest'ом (или testmem'ом).

Антивирь - Kaspersky Personal Pro 5.0.391, базы свежие.

Про память - я уже говорил, что не разгонял, так что тайминги стандартные (RAS 8, RCD 4, RP 4, CAS Latency 3.0).

Касательно дистрибутивов, имелось в виду, что раньше с *.msi проблем не возникало. А так - конкретно эти вот дистрибутивы используются впервые.

Про проги тож говорил - все что можно выносил.

Служба, естественно, включена.

Единственное, что пока не делал - реестр не чистил... что-ж, попробуем-с.

Agmy добавил :

Чистка не помогла.

У меня сейчас возникла мысль - а может быть проблема не в самом windows installer'е? Насколько я понимаю, факт указания в отчете об ошибке "ModName: ntdll.dll ModVer: 5.1.2600.2180" свидетельствует о том, что ошибка возникла при обращении к ntdll.dll? Никаких идей по этому поводу?

Agmy добавил :

Хм.. иногда вместо ntdll.dll ошибка происходит с участием "ModName: riched20.dll ModVer: 5.30.23.1221". Соотношение такое - процентах в 85-90 случаев - в деле фигурирует ntdll.dll, в остальных - riched20.dll.

che-hoff 03.09.2006 16:17

Вложений: 1
Можно попробовать заменить DLL-ку...

Grip 03.09.2006 16:17

"Тестам можно верить только если они показывают ошибки"(с) не помню кто. Ошибка "Память не может быть read" чаще всего возникает если из оперативной памяти(физ. или виртуальной(файл подкачки)) не могут быть прочитаны ранее записанные туда данные. "Железные" проблемы могут быть в сбойном чипе на какой то из планок, либо сбойном секторе НЖМД, проверяются путём запрета использования файла подачки + оставить одну планку оперативки желательно той что стоит в слоте ближе к процу. Софтовые... их больше и заниматься ими стоит после получения уверености в рабочем железе.

Agmy 03.09.2006 21:04

2che-hoff
Спасибо за донорскую dll-ку, но с этим делом облом. Даже при выключенном сервисе WI ни msi.dll, ни ntdll.dll нельзя удалить.

2Grip
На то проги для тестирования памяти и пишутся, чтобы фигней не заниматься. Но я на всякий случай попробовал сделать так, как ты предложил. При нулевом файле подкачки, на любом модуле оперативки все то же самое. Вообще, честно говоря, способ вшивенький. Подействует только в том случае, если лишь один модуль с изъяном. Если предположить, что у какого-нибудь несчастного человека каждый модуль с левотцой , то такое "тестирование" привело бы к неправильным выводам. Но все равно, спасибо. Кстати, что такое НЖМД?

2all
Появилась идея. Решил на всякий случай удалить антивирус, ненароком глянул - сегодня в полночь как раз истекает срок действия ключа - сам Бог велел, думаю... Предварительно скачал новую версию с новыми ключами, установщик KAV 6 оказался тоже в формате .msi, посему в экспериментальных целях попробовал запустить - вылетает с той же ошибкой, но в разных местах (то при первом "далее", то на втором). Чтобы удостовериться в том, что хоть какой нибудь .msi файл нормально запускается - выбрал первый попавшийся под руку - им оказался applocate - нормально установился. (Может дело в размере файла, applocate меньше полутора мегов весит? ) Начинаю деинсталлировать текущую версию KAV - в конце ентого процесса мне говорят, что касперский по ходу работы создавал для себя какие-то NTFS-дорожки, или что-то вроде того, затем спрашивают, удалить или оставить для дальнейшего использования. Попробовал удалить - ожидаемое время часов 20, и что особенно интересно - в именах папок, из которых он начал удалять (кстати увидеть невооруженным глазом их нельзя, даже если включить в настройках "отображать скрытые файлы и папки") фигурируют заветные буквы "msi". Сейчас заново поставлю старую версию и попробую удалить, на этот раз вместе с "дорожками", утром отпишусь...

Andron_ 03.09.2006 21:12

Цитата:

Сообщение от Agmy
Если предположить, что у кого-то каждого модуль обрел сбойный чип , то такое "тестирование" привело бы к ложным выводам.

по поводу памяти.... у меня проходились все тесты на память, комп работал на 100% стабильно, без ошибок, вылетов и пр. Не работала только игрулина Х3. Снизил частоту памяти - поехала. Вот и тесты...


Цитата:

Сообщение от Agmy
Кстати, что такое НЖМД?

Накопитель..... на Жестких Магнитных Дисках. Че то вроде того. aka HDD.

Agmy 03.09.2006 21:57

2Andron
Спасибо за ликбез :)

2all
Прошу прощения за неточность, не "дорожки", а потоки NTFS. Как выяснилось, речь идет о iStreams - "технология, позволяющая АК работать в режиме максимального быстродействия за счет исключения проверки объектов, не измененных со времени их последней проверки. Для реализации технологии использоуттся хранение контрольных сумм файлов в дополнительных потоках NTFS". Чтож, посмотрим...

Agmy добавил :

Мда... двадцать часов миновали минут за сорок. Вот и верь после этого... В общем, антивирус с его дополнительными потоками оказался не причем, ситуация по-прежнему без изменений. У меня - нуль идей. Помогайте, товарищи...

Ariny 03.09.2006 23:43

Agmy
Цитата:

Спасибо за донорскую dll-ку, но с этим делом облом. Даже при выключенном сервисе WI ни msi.dll, ни ntdll.dll нельзя удалить.
Загрузись с чего-нибудь другого (дискета, СД, флешка, другой НДД, наконец).

jane 04.09.2006 09:03

Ariny
Хммм... Интересная темка. Сейчас заглянула на ряд зарубежных форумов, там тоже нет однозначного решения проблемы. Ещё пороюсь, мож чего выужу. Пока всё сводится либо к памяти, либо к глюкам программ.

Ariny 04.09.2006 10:02

jane
Цитата:

Интересная темка.
Самой интересно!
У меня на одной из машин после установки TraficCompressor'а "память не может быть written" время от времени. :) Завтра займусь экспериментами.

Fakir 04.09.2006 11:08

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

falc 04.09.2006 12:05

Fakir
Хочешь сказать, что инсталяшка лезет в область памяти зарезервированную системой подо что-то?
Я сталкивался с сабжевой проблемой когда-то... Но не могу никак вспомнить в какой софтине она проявлялась и как решилась... :confused:

jane 04.09.2006 13:45

На иностранных форумах тоже брожение в умах. Что только люди не пробуют. И фоновые службы отключают (антивирусы, антишпионское ПО и т.п.), и svchost вырубают (не всегда помогает). Так, что пока однозначного решения нет. Ищем дальше.

Fakir 04.09.2006 14:00

Мне вообще интересно, в каких случаях, Винда принимает решение заблокировать процесс и выкинуть такое сообщение?
Суппорт Microsoft может дать ответ на этот вопрос?

Lamo 04.09.2006 14:01

А вы попробуйте поставить, скажем, Инфинеоны с ЕСС - результат вас сильно удивит ;)
Вот и посмотрим что софт на это скажет ;)

Половина брендов не может сделать нормальную разводку плат (а частоты заметим - растут),
радуйтесь что они вообще работают

Fakir 04.09.2006 14:23

Lamo, а что ты скажешь на то, что у меня только видео кодек FlaskMpeg так ругается и в основном при закрытии?
Тоже железо виновато?

Lamo 04.09.2006 14:57

Fakir
Вот тут подробнее некуда ;)
офис ХР вызывает стоп-экраны#743404

Lamo добавил :

Цитата:

Сообщение от FooBar
Даю очевидный ответ на глупый вопрос: потому что это разный софт и что то они делают по разному, при этом один наезжает на проблему, а второй нет.
Простейший пример: пусть дефектная память не позволяет устанавливать бит #3 в 1 по некому адресу.
Допустим, один софт записывает туда 0xF7. A второй софт записывает туда 0xF8. В результате первый софт работает не смотря на дефект, а второй нет.



Текущее время: 14:44. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd. Перевод: zCarot