Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: tool для поиска memory leaks  (Прочитано 14062 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« : 02-02-2006 08:02 » 

Господа,

вопрос на засыпку: кто может подсказать какой-нибудь беплатный тул для отлова проблем с памятью в программе, написанной на С?
Дело в том, что если смотреть код, то все изумительно - т.е. каждый malloc() имеет свой законный free(). Но если запустить программу, то она постепенно "кушает" память непонятно каким образом! При этом проблема заключается в том, что программа должна постоянно быть в состоянии готовности для принятия запросов на обработку! Т.е. я не могу каждый раз ее стартовать и по окончании обработки запроса убивать! Здесь была моя ладья...
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #1 : 02-02-2006 08:12 » 

 1. Intel VTune Performance Analyzer, она, правда, не бесплатная. Но, вроде 30 дней можно пользоваться, да и краки в инете должны быть.

 2. BoundsCheker ее можно прямо в Visual Studio интегрировать

Записан
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #2 : 02-02-2006 08:22 » new

Артем,

спасибочки! Сейчас буду искать.
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 02-02-2006 08:40 » 

Если пользуешься Visual Studio, то уже в 6-ой версии были встроенные механизмы для отлова утечек памяти, как для MFC,  так и для голого C.

Вот ссылки по теме:
использование _CrtDumpMemoryLeaks: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_crt__crtdumpmemoryleaks.asp
использование CMemoryState: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vccore98/html/_core_detecting_a_memory_leak.asp

Если не гнушаешься пользоваться кряками к программам Улыбаюсь, то могу посоветовать Rational Purify.
Записан
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #4 : 02-02-2006 11:26 » 

Hooter,

ты понимаешь, проблема заключается в том, что мне самой все равно, чем пользоваться - лишь бы помогало Ага А вот в конторе все это устанавливать я не имею права... А дома тестировать не могу - это программка, отзывающаяся на запросы из системы SAP, а это дома не проинсталлируешь (проблема лицензии).

А то, что есть в студии, надо ручками внедрять в программку, что на данной стадии несколько затруднительно, т.к. программка немаленькая... Поэтому я и хотела найти какой-то продукт, который сам будет за всем следить и мне потом рассказывать, где и что я сотворила. Ага
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #5 : 02-02-2006 11:56 » 

ууу, Malaja, должен сказать что и BoundsCheker тоже вовсе не free Жаль

 кстати, что-то меня взяли сомнения следит ли Intel VTune Performance Analyzer ИМЕННО за утечкой памяти :Улыбаюсь.... Больше года с ним ничего не делал.
По крайней мере сможешь узнать кто сколько памяти скушал.
Подробнее в хелпах надо бы глянуть....
« Последнее редактирование: 02-02-2006 12:18 от Артем » Записан
Hooter
Опытный

ru
Offline Offline
Пол: Мужской

« Ответ #6 : 02-02-2006 12:07 » 

Malaja, а что, политика фирмы не позволяет приобретать средства разработки и отладки?
Совсем бесплатных инструментов подобного рода практически нет...
Записан
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #7 : 02-02-2006 13:18 » 

Артем,
я это тоже уже выяснила Жаль Посмотрю, может там демо-версия на пару дней существует.

Hooter,
да как тебе сказать - все как обычно: они хотят все по возможности бесплатно, т.е. сэкономить на всем, на чем только можно. А как мы будем наши проблемы решать - никого не волнует.
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
RXL
Технический
Администратор

ru
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 02-02-2006 17:24 » 

Из бесплатных я встречал dmalloc и memprof - для *nix программ, работающих через libc. Не знаю, есть ли их версии для win.
Записан

... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #9 : 06-02-2006 17:07 » 

Во-первых, извиняюсь, что только сейчас отвечаю - у меня только сейчас заработал линк на форум.
Далее:
Люди, ура - начальство, как выяснилось, недавно прикупило какую-то фирму и сейчас при ревизии всего софта нашли и лицензию на Rational Purify! Ага Так что мне его тут же установили (вот что значит, им ооочень надо Ага ) и я сейчас как раз ищу те самые дырки от бублика в памяти Ага

Еще раз всем спасибо за помощь!
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Finch
Спокойный
Администратор

il
Offline Offline
Пол: Мужской
Пролетал мимо


« Ответ #10 : 22-02-2006 12:51 » 

Вот статейка на русском, как пользоваться _CrtDumpMemoryLeaks и ей подобными. http://www.rsdn.ru/article/vcpp/leaks.xml Может кому пригодится.
Записан

Не будите спашяго дракона.
             Джаффар (Коша)
Malaja
Команда клуба

de
Offline Offline
Пол: Женский

« Ответ #11 : 24-02-2006 07:49 » 

Народ,

тут вот сейчас коллеги разослали майл - у них были большие проблемы с Purify, посему они нашли другое решение:

GlowCode-Link:
   http://www.codework.com/glowcode/product.html

Сказали, что там есть 20 дней на пробу, результаты пишутся в файл, который читается с помошью специального Viewer-а.
Сама не смотрела, т.к. сейчас пока и Purify - ем спаслась Ага . Но - вдруг кому-то понадобится.
Записан

холоднокровней, Маня, Ви не на работе
---------------------------------------
четкое определение сущности бытия:
- А мы в прошлом или в будущем?- спросила Алиса.
- Мы в жопе, - ответил кролик.
- А "жопа" - это настоящее? - спросила Алиса.
- А "жопа" - это у нас символ вечности.
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines