..
Мы можем определить Процесс статического анализа исходного кода, как процедура, посредством которой части идентифицируются небезопасного кода без фактического выполнения программы.
Статический анализ 'S может быть выполнена автоматически, то есть свои специфические инструменты полезны для поддержки процесса тестирования. Посмотрите, как этап тестирования программного обеспечения, в целом, это очень сложный процесс, и обычно делается программистами, которые решили специализироваться в этой конкретной области. Программное обеспечение средств, предназначенных для "статического анализа кода таким образом способствуют сокращению времени и затрат, обеспечивая первый намек на то, что участки кода, который будет обязательно проверить более тщательно.
Типы ошибок, обнаруживаемых инструменты, упомянутые многочисленны и постоянное обновление, развитие бизнеса, на самом деле, такого рода программное обеспечение идет на все, ритм давно.
Важным в этом отношении историческая ценность программы, как Lint , выпущенный в 1979 году, который работает на Linux и посвященный языку программирования C . Lint является реальным ориентиром для статической верификации кода, иногда определяется как "тканью, как инструменты", или "как нибудь вкусненькое инструментов".
Современные статические анализаторы также возможность проверить код, предназначенный для работы в параллельном, предоставляя конкретные предложения для таких приложений.
В этой статье мы сконцентрируемся на этом типе инструмента, пытается предложить краткий обзор возможностей в статическом кода для программ, работающих параллельно языка C + + (самый популярный и универсальный характер). Для начала, давайте рассмотрим общие программные и гибкий, как PC-Lint .
PC-Lint предназначен для обеспечения оптимальной производительности при анализе программы, которые используют POSIX темы , но может быть эффективно использовано в случае общего положения. Не хочу сказать, что анализ, проведенный с помощью программного обеспечения во всех отношениях автоматически.
Это представляется необходимым, чтобы вручную указать функции, которые программа будет работать параллельно (или даже одновременно), так что PC-Lint может приступить к "статическому анализу справедливости (что да, автоматическая) как раз в этих разделах. Для достижения этой цели, вы должны использовать опцию-всегда на выполнение PC-Lint командной строки. Например заявление:
тканью сем (функции, нитки)обменивается данными с PC-Lint, необходимо проанализировать функции функции, как это будет работать одновременно. Теперь вы будете получать сообщения об ошибках, связанных с функцией имея в виду, что вы также должны обращаться параллельного выполнения одного и того же, то указывая, например, если общая переменная используется или изменения без надлежащего определения критической секции.
Именно в этом плане, если взаимное отчуждение и примитивы синхронизации реализованы с использованием POSIX темы типичный формализм, или, например, pthread_mutex_lock и pthread_mutex_unlock, вам не нужно будет указать что-нибудь о нем из командной строки. В противном случае, эти руководящие принципы будут использованы:
-Sem (доступ, thread_lock) -Sem (релиз, thread_unlock), чтобы указать, что доступ к критической секции производится через функции, называемой доступа и выхода этого раздела является использование релиз функции.
Если, к статическому анализу нашего кода, но мы хотели иметь немного более мощные инструменты, и не зависит от PC-Lint, VivaMP может быть хорошим выбором.
| |
ASP (Advanced)
Полный курс для создания динамических веб-сайтов. С 39 €. |
| |
Flash MX (хороший)
Стать дизайнером веб-сайтов от 29 €. |
| |
Java (курс)
ООП программирование в Java-вс От 49 €. |