Статьи

  • 32 подводных камня OpenMP при программировании на Си++

    20.11.2009
    С распространением многоядерных систем задача параллельного программирования становится все более и более актуальной. Данная область, однако, является новой даже для большинства опытных программистов. Существующие компиляторы и анализаторы кода позволяют находить некоторые ошибки, возникающие при разработке параллельного кода. Многие ошибки никак не диагностируются. В данной статье приводится описание ряда ошибок, приводящих к некорректному поведению параллельных программ, созданных на основе технологии OpenMP. Читать
  • Статический анализ Си++ кода и новый стандарт языка C++0x

    01.04.2010
    В статье рассмотрены новые возможности языка Си++, описанные в стандарте C++0x и поддержанные в Visual Studio 2010. На примере PVS-Studio рассмотрено, как изменения языка отразятся на инструментах статического анализа кода. Читать
  • Коллекция примеров 64-битных ошибок в реальных программах

    29.06.2010
    Статья представляет собой наиболее полную коллекцию примеров 64-битных ошибок на языках Си и Си++. Статья ориентирована на разработчиков Windows-приложений, использующих Visual C++, но будет полезна и более широкой аудитории. Читать
  • Сравнение возможностей PVS-Studio и Visual Studio 2010 по выявлению дефектов в 64-битных программах

    06.07.2010
    В статье сравниваются три механизма анализа кода с точки зрения выявления 64-битных ошибок: компилятор Visual C++2010, компонент Code Analysis for C/C++ входящий в состав Visual Studio 2010 Premium/Ultimate и анализатор Viva64 входящий в состав PVS-Studio 3.60. Показаны возможности как по выявлению дефектов в 64-битных проектах, так и предварительной диагностики 64-битных ошибок еще в 32-битном проекте. Читать
  • Сущность библиотеки анализа кода VivaCore

    09.01.2008
    Статья знакомит разработчиков с библиотекой VivaCore, предпосылками ее создания, возможностями, структурой и областями применения. Данная статья была написана параллельно с разработкой библиотеки VivaCore, и поэтому отдельные детали ее конечной реализации могут отличаться от описанных здесь свойств. Но это не помешает разработчикам познакомиться с общими принципами работы библиотеки, механизмами анализа и обработки текстов программ на языке Си и Си++. Читать
  • Что такое "Parallel Lint"?

    08.06.2009
    Статья рассказывает о новом направлении в развитии статических анализаторов кода - верификации параллельных программ. В статье рассказывается о нескольких статических анализаторах, которые могут претендовать на звание "Parallel Lint". Читать
  • 64 бита

    17.05.2010
    Статья раскрывает смысл термина "64 бита". В статье кратко рассмотрена история развития 64-битных систем, описаны наиболее распространенные на данный момент 64-битные процессоры архитектуры Intel 64 и 64-битная операционная система Windows. Читать
  • Что такое size_t и ptrdiff_t

    25.09.2009
    Статья поможет читателю разобраться, что представляют собой типы size_t и ptrdiff_t, для чего они нужны и когда целесообразно их использование. Статья будет интересна разработчикам, начинающим создание 64-битных приложений, где использование типов size_t и ptrdiff_t обеспечивает быстродействие, возможность работы с большими объемами данных и переносимость между разными платформами. Читать
  • Технология OpenMP

    20.11.2009
    Статья содержит краткое описание технологии OpenMP. Читать
  • Архитектура AMD64 (EM64T)

    02.10.2008
    В статье кратко рассматривается архитектура AMD64 компании AMD и ее реализация EM64T компании Intel. Описаны особенности архитектуры, ее возможности, достоинства и недостатки. Читать
  • 64 бита, /Wp64, Visual Studio 2008, Viva64 и все, все, все

    15.04.2008
    Данная статья ставит своей задачей ответить на ряд вопросов, касающихся безопасного переноса Си/Си++ кода на 64-битные системы. Статья написана как ответ на часто обсуждаемую в форумах тематику, связанную с использованием ключа /Wp64 и инструмента Viva64. Читать

  • Обновляемый список open-source проектов, которые мы проверили с помощью PVS-Studio

    15.03.2014
    Статья содержит список проверенных проектов. Читать
  • Как мы сравнивали анализаторы кода CppCat, Cppcheck, PVS-Studio, Visual Studio

    12.03.2014
    Мы провели подробное сравнение четырёх анализаторов Си/Си++ кода: CppCat, Cppcheck, PVS-Studio и статический анализатор, встроенный в Visual Studio. В этой статье подробно рассматриваются методика сравнения анализаторов и полученные результаты. Читать
  • Ответы на вопросы читателей статей про PVS-Studio и CppCat, версия 2014

    25.02.2014
    Часто к нашим статьям задают одни и те же вопросы. Ответы на них мы собрали в одном месте, чтобы отвечать ссылкой на эту статью. Ведь мы, разработчики статических анализаторов кода PVS-Studio и CppCat, публикуем довольно большое количество статей в том числе про проверку open source проектов. Читать
  • Качество встраиваемого ПО или погром всё-таки случился

    29.10.2013
    Эта статья впервые была опубликована на сайте "Компьютерное Обозрение", перепечатана и переведена с разрешения редакции.. Читать
  • Руководство по разработке модулей расширений на C# для Visual Studio 2005-2012 и Atmel Studio

    29.08.2013
    Около года назад мы опубликовали в блоге цикл статей о разработке плагинов для Visual Studio на языке C#. Сейчас мы переработали эти материалы, добавили новые разделы и предлагаем вашему вниманию обновленный вариант руководства. Читать
  • C++Builder, сборка 64-битных приложений и ренессанс Viva64

    01.02.2013
    После долгих ожиданий в C++Builder XE3 Update 1 появилась возможность сборки 64-битных приложений. Это значит, что использующим этот инструмент разработчикам предстоит скоро столкнуться с незнакомым для них миром 64-битных ошибок. Читать
  • Как статический анализ дополняет TDD

    12.12.2012
    Одной из популярных техник разработки программного обеспечения является TDD. В целом мне нравится эта технология и отчасти мы её используем. Главное при её использовании не вдаваться в крайности. Не стоит полагаться только на неё и забывать другие методики повышения качества программ. В этой статье я хочу показать, как методика статического анализа кода может подстраховать программистов, использующих TDD. Читать
  • 100 багов в Open Source проектах на языке Си/Си++

    16.03.2012
    Эта статья демонстрирует возможности методологии статического анализа кода. Читателю предлагается примеры ста ошибок, найденных в Open-Source проектах, написанных на языке Си/Си++. Все ошибки найдены с помощью статического анализатора кода PVS-Studio. Читать
  • Как уменьшить вероятность ошибки на этапе написания кода. Заметка N4

    14.12.2011
    Это уже четвертая заметка, где я хочу поделиться полезными наблюдениями о паттернах ошибок и том, как можно с ними бороться. В этот раз я затрону такую тему, как обработка редких и аварийных ситуаций в программах. Рассматривая множество программ, я пришел к выводу, что код обработки ошибок в Си/Си++ программах - одно из самых ненадежных мест. Читать
  • Реклама PVS-Studio - статический анализ кода на языке Си и Си++

    25.10.2011
    Этот документ рекламирует статический анализатор PVS-Studio. Описывается, как использование PVS-Studio уменьшит количество ошибок в коде проекта на языке C/C++/C++11 и сократит затраты на тестирование, отладку и сопровождение кода. Приводится большое количество примеров ошибок, найденных анализатором в различных Open-Source проектах. Документ описывает PVS-Studio на момент версии 4.38 от 12 октября 2011 и, как следствие, не отражает возможности следующих версий. Чтобы познакомиться с новыми возможностями, предлагаем посетить сайт продукта http://www.viva64.com или поискать обновленный вариант этой статьи. Читать