C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
HELP! Проблема в работе процессора..., самостоятельный reboot системы...
don_Alehandro
Отправлено: 22.07.2005, 14:59


Ученик-кочегар

Группа: Участник
Сообщений: 16



Уважаемые Гуру. Обнаружилась трабла при работе наваянного в BCB 5 софта. Может для знающих и не проблема, только для меня как чайника — откровение. При постоянной работе проги (иначе нет смысла ее юзать), через некоторое время (2-3 часа) происходит самостоятельная и не зависящая от пользователя перезагрузка системы (работаю на W2000). Как попытался предположить мой коллега причина может крыться в проблемме внутренних прерываний работы процессора (критическое накопление счетчика ошибок или чего то подобного). В чем может крыться причина сего неординарного поведения такого надежного элемента компа как проц? А может и не в этом вовсе дело... Да и прога слишком проста что бы завалить проц ошибками до степени чтоб тот решил "стряхнуть" с себя систему и перегрузиться.
Кто с этим сталкивался? Поделитесь лекарством против болезни и я вам буду очень благодарен. smile.gif
olegenty
Отправлено: 22.07.2005, 15:28


Ветеран

Группа: Модератор
Сообщений: 2412



Для начала Code Guard'ом пройдись.
Admin
Отправлено: 22.07.2005, 15:56


Владимир

Группа: Администратор
Сообщений: 1190



Ищите ошибку скорее аппаратную чем программную.

(По программной — посмотрите Диспетчер задач — кол-во
памяти, загруженность процессора и чем, кол-во дескрипторов
и потоков на Вашу задачу).
Да и не забудьте на вирусы все проверить.

А скорее всего беда в блоке питания или материнке, обычно
они этим страдают (особенно на 815 чипсете), там какие-то
левые конденсаторы от времени ...

Отредактировано Admin — 22/07/2005, 15:56
don_Alehandro
Отправлено: 25.07.2005, 10:38


Ученик-кочегар

Группа: Участник
Сообщений: 16



2Admin

аппаратная ошибка исключена путем прекращения выполнения программы, после чего спонтанные перезагрузки не повторяются. На вирусы идет постоянный котроль со стороны Symantec AntiVirus, также работает фаервол, бездействие процессора 98%, как определить количество дескрипторов и потоков на задачу к сожалению не знаю, научите чайника, если не жалко... smile.gif Беда с блоком питания тоже исключена, меняли, вот только мать не меняли, но не думаю, что с ней проблема. Тип матери Asus P4S533-MX, чип SiS651, проблем не должно быть... sad.gif работает всего 1,5 года, кондеры по идее должны еще дышать нормально.
Тем не менее спасибо за Ваши рекомендации.

2olegenty

уважаемый olegenty, мысль очень понравилась, к сожалению Code Guard не понятно куда пишет свой лог, и пишет ли вообще. После его активации получено сообщение о найденных ошибках, но куда он их записал так и не нашел. Если Вам не трудно, подскажите где найти лог... sad.gif На всем пространстве жесткого диска Винда не находит файлы с расширением CGL ... sad.gif

ПОМОГИТЕ УБОГОМУ РАЗОБРАТЬСЯ, ЖАЛЬ ПРОГУ ВЫБРАСЫВАТЬ!!! smile.gif

esh
Отправлено: 25.07.2005, 10:51


Дежурный стрелочник

Группа: Участник
Сообщений: 71



QUOTE
кондеры по идее должны еще дышать нормально.

А визуально осмотреть не судьба? И для полной картины производителя и серию назвать. Типичные признаки пухнущих кондеров.
don_Alehandro
Отправлено: 25.07.2005, 12:02


Ученик-кочегар

Группа: Участник
Сообщений: 16



2 esh

это конечно, визуально тщательно осмотрел железо самым первым делом, даже на всякий случай откинул от матери проводок кнопки "reset" на случай если она подкорачивает... (есть некоторый опыт работы сервисным инженером)
Кондеры без визуальных признаков потери емкости, обычно в таких случаях пропадает питание на процессор или оно не стабильно... о чем сразу стало бы известно через утилитку слежения за питанием элементов материнки. также слежу за датчиками температуры материнки, отклонений нет. Очевидно, что проблема в моем приложении. sad.gif

Отредактировано don_Alehandro — 25/07/2005, 12:12
Vlad
Отправлено: 25.07.2005, 12:29


Машинист паровоза

Группа: Участник
Сообщений: 231



Может просто в приложении, вы не убиваете обьекты, тем самым не очищается память. Лучше посмотрите где что остается. Скорее всего, у вас куча окон в приложении, вообщем лучше лишний раз посмотреть, исходники, и спросить юзверя на каком окне прога ребутит комп. Плюс все выше сказанное другими.
don_Alehandro
Отправлено: 25.07.2005, 12:44


Ученик-кочегар

Группа: Участник
Сообщений: 16



2 Vlad

Очень возможно, но как в этом убедится? Ведь прога просто висит неактивным окном и постоянно отслеживает время для выдачи звукового и визуального сигнала. Если Вам будет интересно, можете взглянуть на исходник, присоеденен.
don_Alehandro
Отправлено: 25.07.2005, 12:45


Ученик-кочегар

Группа: Участник
Сообщений: 16



сорри, атач забыл... smile.gif

User Attached Image Скачать файл
листинг.txt


Vlad
Отправлено: 25.07.2005, 13:09


Машинист паровоза

Группа: Участник
Сообщений: 231



Стукнись мне в аську....
don_Alehandro
Отправлено: 25.07.2005, 13:48


Ученик-кочегар

Группа: Участник
Сообщений: 16



QUOTE (Vlad @ 25/07/2005, 13:09)
Стукнись мне в аську....

don_Alehandro: стучу (321-452-400), но без ответно... smile.gif
Rius
Отправлено: 25.07.2005, 17:19


Мастер участка

Группа: Участник
Сообщений: 321



Офигеть, более ужасного оформления кода еще не видел!!

Еле собрал, вроде работает и не виснет, а как должна выглядеть нормальная работа вообще?...

99.9(9)% ошибка не в процессоре и не в железе вообще, но понаблюдаю.

//----------------
итого: три часа бесперебойной "работы".

Отредактировано Rius — 25/07/2005, 23:37
Георгий
Отправлено: 25.07.2005, 21:32


Почетный железнодорожник

Группа: Модератор
Сообщений: 874



2 Rius : бывало и хуже — тут хотя бы комментарии есть

2 don_Alehandro : вот это мне не понятно
CODE
PlaySound("c:\ding.wav",0,SND_ASYNC|SND_LOOP);//запускаем звуковое оповещение
тут должно было бы быть
CODE
c:\\ding.wav
слэш не экранирован.

может и ещё где-нибудь есть такие мелкие ляпы...

покрайней мере грохнуть систему программа на 3м кольце защиты не может. так что ищите системные вызовы (а ля PlaySound) и методом исключения найдите вызывающий проблему.

PS. пробовали на современном железе с современной ОС и свежими драйверами?

PPS. всё таки константы ужасно оформлены, а разбиение на функции, глобальные массивы, пустые строчки для улучшения читебельности... Хорошо, что комментарии непротиворечивые и исчерпывающие — даже код можно не читать smile.gif

Отредактировано Георгий — 25/07/2005, 22:41
don_Alehandro
Отправлено: 26.07.2005, 16:32


Ученик-кочегар

Группа: Участник
Сообщений: 16



Ребята, всем благодарен за комментарии кода. Простите самоучку любителя за кошмарную читабельность, просто не расчитывал выносить свой скромный труд на суд общественности!!! smile.gif
Проблема вроде как решена. Вместа фрагмента:
//РЕАЛИЗАЦИЯ Ф. УПРАВЛЕНИЯ ФОРМОЙ ВВОДА ВРЕМЕНИ СРАБАТЫВАНИЯ СЧЕТЧИКА
void GetFormSetTimeUp()
{Application->CreateForm(__classid(TSetTimeUp1), &SetTimeUp1);
SetTimeUp1->Visible=true;}//форма 2 становится видимой

введен такой:
void GetFormSetTimeUp()
{
//Application->CreateForm(__classid(TSetTimeUp1), &SetTimeUp1);///????
TSetTimeUp1 * fr; //
fr = new TSetTimeUp1(Application); // создадим
// SetTimeUp1->Visible=true; //
fr->ShowModal(); // покажем в модальном режиме
delete fr; // зачистим память

}//форма 2 становится видимой

таким образом выяснилось, что сбой провоцировался переполнением памяти созданных окон второй вызываемой формы после ее закрытия — насколько я понял уважаемого Vlad, внесшего в код свои коррективы. За это ему мой респект и много благодарностей. Всем желающим получить весь проект пишите на мыл, мне не жалко. smile.gif
Также всем участникам огромное спасибо за желание помочь. smile.gif

PS 2 Георгий
Насчет PlaySound — интересно, спасибо, попробую...
Глобальные массивы организованы с целью их "видимости" на 2-й форме. Комментарии всегда исчерпывающие что бы вспомнить что наваял когда то... smile.gif

Вернуться в Вопросы программирования в C++Builder