В контексте компьютерного программирования инструментарий относится к показателю производительности продукта, позволяющему диагностировать ошибки и записывать информацию трассировки . [1] Инструменты могут быть двух типов: исходные инструменты и двоичные инструменты.
Выход
В программировании инструментирование означает: [2]
- Профилирование : измерение динамического поведения программы во время тренировки с репрезентативными входными данными. Это полезно для свойств программы, которые невозможно проанализировать статически с достаточной точностью, например для анализа псевдонимов .
- Вставка таймеров в функции.
- Регистрация крупных событий, таких как сбои.
Ограничения
Инструментарий ограничен охватом выполнения. Если программа никогда не достигает определенной точки выполнения, то инструментарий в этой точке не собирает данные. Например, если приложение текстового процессора оснащено инструментами, но пользователь никогда не активирует функцию печати, то инструментарий ничего не может сказать о процедурах, которые используются исключительно функцией печати.
Некоторые типы инструментов могут привести к значительному увеличению времени выполнения. Это может ограничить применение инструментов контекстами отладки.
Смотрите также
- Перехват – набор методов, используемых для изменения или улучшения поведения операционной системы, приложений или других компонентов программного обеспечения путем перехвата вызовов функций, сообщений или событий, передаваемых между компонентами программного обеспечения.
- Симулятор набора команд – симуляция всех инструкций на уровне машинного кода для обеспечения инструментирования.
- Интеллект во время выполнения — технологии, управляемые сервисы и методы сбора, интеграции, анализа и представления уровней, шаблонов и методов использования приложений.
- Анализ производительности программного обеспечения — методы мониторинга производительности кода, включая инструментарий.
- Аппаратный счетчик производительности
- DTrace — комплексная платформа динамической трассировки для устранения неполадок ядра и приложений в производственных системах в режиме реального времени, реализованная в Solaris , macOS , FreeBSD и многих других платформах и продуктах.
- Java Management Extensions (JMX) — технология Java для управления и мониторинга приложений, системных объектов, устройств (таких как принтеры) и сервис-ориентированных сетей.
- Измерение отклика приложения — стандартизированный инструментальный API для C и Java .
- Динамическая перекомпиляция — особенность некоторых эмуляторов и виртуальных машин, при которой система может перекомпилировать некоторую часть программы во время выполнения.
Рекомендации
- ^ Обзор инструментария исходного кода на веб-сайте IBM
- ^ «Комментирование, тестирование и инструментирование кода». 3 января 2011 года . Проверено 29 января 2014 г.
- Введение в инструментирование и трассировку: Microsoft Developer Network
- Инструменты разработчика Apple: введение в инструменты
- SystemTap предоставляет инфраструктуру бесплатного программного обеспечения (GPL) для упрощения сбора информации о работающей системе Linux.
- cwrap Автоматическое перенос функций C и C++ с помощью инструментов.