Обзоры

  • Кенни Керр. Windows и C++. Отладка на x64 при помощи псевдо-переменных и спецификаторов формата

    11.12.2008
    В этой статье автор касается такой специфической возможности Visual C++ как использование псевдо-переменных и спецификаторов формата. После краткого описания различий между процессорами архитектур x86 и x64, Кенни Керр предлагает список наиболее полезных псевдо-переменных и поясняет их функции. Точно так же он перечисляет некоторые спецификаторы формата и их назначение. Кроме того, дается несколько примеров, как можно использовать псевдо-переменные и спецификаторы формата в визуализации соглашений о вызовах, кодах ошибок и отладке в контексте безопасности.
  • Стивен Лэйвенхар. Анализ кода

    03.11.2008
    Поскольку ошибки в коде делают его уязвимым для атак, он должен тщательно тестироваться для того чтобы соответствовать требованиям безопасности. Автор рассказывает про такие распространенные слабые места в коде на уровне реализации программы, как состояния гонки, отсутствие проверки входных данных, исключения, атаки с помощью SQL и переполнения буфера. Далее он касается темы экспертной оценки кода, анализа методами белого и черного ящиков, а также анализа метрик. В конце статьи даются ссылки на список инструментов анализа кода и дополнительную информацию по теме.
  • Вперед к 64-битному коду с Visual Studio 6

    26.10.2008
    Настоящая заметка описывает поэтапно процесс сборки 64-битного запускающего файла с использованием Visual Studio 6. Всего таких этапов пять, и каждый из них подробно разъясняется. Кроме самих инструкций вы найдете некоторые полезные советы по отладке перенесенного проекта и не менее полезные ссылки по проблемам перехода на 64 бита.
  • 32-битные указатели в 64-битном мире

    24.08.2008
    Статья "32-битные указатели в 64-битном мире" затрагивает актуальный вопрос эффективного использования 32-битных указателей в 64-битной среде с целью прироста производительности. Автор описывает принципы работы функции 'sptr', предназначенной для выравнивания данных, а также особенности и ограничения ее использования. Статья содержит большое количество наглядных и подробных примеров кода, иллюстрирующих механизмы кодирования 64-битных указателей в 32-битные.
  • Адам Колава. Когда, почему и как: Анализ кода

    08.08.2008
    В этом интервью Адам Колава, главный исполнительный директор и сооснователь корпорации Parasoft, делится советами о том, как использовать статический анализ кода с наибольшей эффективностью. Он подробно рассказывает о таких трех главных разновидностях статического анализа как статический анализ на основе паттернов, статический анализ потока данных и метрики кода, а также дает рекомендации по правильному использованию статического анализатора при разработке и автоматизации процесса анализа кода.
  • Перечень нюансов разработки драйверов для 64-битной Microsoft Windows

    15.07.2008
    Очень полезный документ, предоставляющий сведения об основных проблемах, связанных с разработкой драйверов для 64-битных версий Windows. Он включает предварительные инструкции по подготовке к работе, технические данные, касающиеся типов данных и памяти, советы и указания по созданию и переносу драйверов. Многие пункты дополнены наглядными примерами кода, иллюстрирующими некоторые из описанных проблем.
  • Виньет Кумар Джейн. OpenMP: технология, которая высвобождает мощь многоядерных систем

    30.06.2008
    Автор данной короткой заметки объясняет, каким образом параллелизм позволяет высвободить потенциал многоядерных систем и почему технология OpenMP лучше всего подходит для этой цели. Он перечисляет основные выгоды многопоточности и преимущества OpenMP, а также приводит ссылки на ресурсы по этой технологии.
  • Рауль В. Патил, Боби Джордж. Инструменты и методы для обнаружения проблем параллелизма

    11.06.2008
    Параллельное программирование связано со многими трудностями и проблемами, особенно в отношении диагностики дефектов и узких мест в параллельных приложениях. Авторы данной статьи рассказывают о наиболее часто возникающих проблемах, таких как состояния гонки, взаимные блокировки и ошибки организации памяти, а затем касаются некоторых стратегий тестирования и дают рекомендации по наиболее эффективному их использованию. Они также советуют некоторые инструменты, которые помогут вам в процессе тестирования параллелизма (CHESS, The Intel Thread Checker, Chord, KISS, Zing) и приводят список характеристик, на которые надо обратить внимание при тестировании производительности. Другими словами, статья содержит всю необходимую информацию по вопросам диагностики дефектов параллелизма и повышения производительности параллельных приложений.
  • Корпорация Parasoft. Статический анализ на стероидах: технология BugDetective от Parasoft

    20.05.2008
    Настоящая статья посвящена технологии анализа BugDetective от корпорации Parasoft, которая предоставляет разработчикам такие преимущества как возможность быстрой модификации кода, гибкая система тестирования, сосредоточение на реальных ошибках и дефектах и т.д. В статье очень подробно описывается принцип работы BugDetective и способы ее использования в сочетании с другими методами тестирования. В тексте содержится множество пояснительных примеров кода и скриншотов.
  • Хосе Ф. Руис. Избегайте переполнения стэка: Статический анализ стэка в системах с высоким уровнем интеграции

    14.05.2008
    Переполнения стэка могут быть очень опасными в системах с высоким уровнем интеграции, их сложно обнаружить и отладить, поэтому очень важно предотвратить их появление, проведя анализ стэка заранее. В этой статье рассказывается, каким образом статический анализ стэка может помочь в решении данной задачи, какие обстоятельства могут препятствовать его успешному осуществлению, а также приводится несколько советов, как можно использовать компилятор и специальный инструмент AdaCoreТs GNATstack при анализе стэка.