- Debug symbol
-
debug символы (символы отладки) — информация, которую язык программирования генерирует автоматически на основе исходных кодов. Это специфичный кусок машинного кода, описывающий текущий исполняемый модуль. Отладочная информация может компилироваться вместе с бинарным исполняемым файлом, и входить в его состав, может присутствовать в качестве отдельного файла, либо же просто отбрасываться на этапе компиляции и/или линковки. Эта информация позволяет человеку использовать «символические» (отладочные) данные о двоичном файле, такие как имена переменных, процедур и функция из исходного кода. Эта информация может быть крайне полезной во время поиска ошибок в исходном коде, отладке программы и разного рода отказах.
Когда отладочные символы включаются в состав самого двоичного файла, его размер может весьма значительно увеличиваться (иногда на несколько мегабайт). Чтобы избежать этого избыточного размера, современные компиляторы выводят отладочную информацию в отдельный файл; для компиляторов Microsoft этот файл называется pdb(program database)-файл. Некоторые компании распространяют свои pdb файлы проектов на отдельных CD/DVD для того чтобы конечные пользователи могли отлаживать их продукты. Так же некоторые компании, например Mozilla Corporation имеют специальные серверы, с которых можно скачать отладочные символы отдельно. WinDBG — отладчик от Microsoft может быть сконфигурирован так, чтобы автоматически загружать отладочную информацию для DLL-библиотек Windows по запросу, если в них есть необходимость. Однако PDB отладочная информация которую распространяет Microsoft разумеется распространяется лишь частично (она включает в себя только общедоступные функции, глобальные переменные и их типы данных), в то время как Mozilla Corporation имеет схожую инфраструктуру, однако распространяются с полноценной отладочной информацией.
И Microsoft и Mozilla также распространяют исходные коды (Microsoft — предоставляет некоторые компоненты .Net Framework, в то время как Mozilla предоставляет полные исходные коды) для того чтобы упростить процесс отладки.
История
Символические отладчики фактически существовали еще в мире мейнфреймов практически с тех пор, как появились первые подходящие компьютерные дисплеи, на которых соответствующая информация отображалась (ранее же они существовали в качестве символических дампов на распечатках бумаги). Они не были ограничены компилируемыми языками высокого уровня и были так же доступны для уровня Ассемблера.
Публичные сервера исходных кодов и символьной отладки
- Microsoft Symbol Server
- Microsoft Reference Source Server: http://referencesource.microsoft.com/
- Mozilla Source Server: https://developer.mozilla.org/en/Using_the_Mozilla_source_server
- .NET libraries at SymbolSource: http://www.symbolsource.org/
Категория:- Отладка программ
Wikimedia Foundation. 2010.