Есть что-то вроде AppVerifier или Driver Verifier для Linux? - PullRequest
3 голосов
/ 18 апреля 2009

Я надеюсь, что кто-то может указать мне на программное обеспечение Linux, подобное инструментам Microsoft Application Verifier и Driver Verifier . (Это стресс-тестеры для приложений и драйверов Windows соответственно.)

Существуют ли такие вещи для Linux?

1 Ответ

4 голосов
/ 18 апреля 2009

Я совсем не знаком с Application Verifier и Driver Verifier ...

Для приложений Valgrind очень полезен в качестве инструмента для проверки на утечки, использование после освобождения, двойное освобождение, переполнение буфера, использование унифицированных данных, небезопасный одновременный доступ к данным и многое другое.

Существует также множество фаззеров ( zzuf , fusil и т. Д.), Которые проверяют устойчивость программы к неверным данным.

Сам GCC имеет -fstackprotector, который включает SSP (защита от разрушения стека, или ProPolice); -fmudflap, который обнаруживает другое неправильное использование памяти; и (в сочетании с glibc) -D_FORTIFY_SOURCE= n , что дополнительно проверяет различные функции строк и памяти.

В ядре Linux есть много конфигурационных переключателей в меню «Взлом ядра»:

  • CONFIG_DEBUG_SLAB, CONFIG_DEBUG_PAGEALLOC и т. Д., Обеспечивающие разумное выделение, использование и освобождение памяти
  • CONFIG_DEBUG_OBJECTS, который проверяет, что объекты используются и освобождаются в порядке
  • kmemcheck , "Valgrind для ядра"
  • CONFIG_PROVE_LOCKING, который анализирует все возможные тупики
  • CONFIG_DEBUG_PREEMPT, CONFIG_DEBUG_MUTEXES, CONFIG_DEBUG_SPINLOCK, CONFIG_DEBUG_SPINLOCK_SLEEP и т. Д., Которые предупреждают о неправильном использовании блокировки
  • CONFIG_FAULT_INJECTION & co. , которые вероятностно вызывают сбои выделения памяти и ввода-вывода
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...