Интернет магазин китайских планшетных компьютеров



Компьютеры - Valgrind - Поддерживаемые платформы

02 мая 2011


Оглавление:
1. Valgrind
2. Обзор
3. Инструменты
4. Поддерживаемые платформы



Согласно документации к версии 3.4.0, Valgrind поддерживает Linux под архитектуры x86, x86-64 и PowerPC. Поддержка Mac OS X была добавлена в версии 3.5.0. Существуют неофициальные порты на другие UNIX-подобные платформы.

Ограничения Memcheck

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

  int Static;
 
  int func
  {
    int Stack;
 
    Static = 0;  /* Ошибка - существует лишь Static до Static, Static выходит за пределы массива */
    Stack  = 0;  /* Ошибка - существует лишь Stack до  Stack, Stack выходит за пределы массива */
 
    return 0;
  }

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

Тем не менее, экспериментальная утилита Ptrcheck для Valgrind вполне в состоянии обнаруживать подобные ошибки.



Просмотров: 3132


<<< SoftICE
VB Watch >>>