2013-07-20 4 views
11

Я новичок в создании архитектуры, я работаю над встроенным программным обеспечением и пытался узнать о файле .axf, который присутствует в папке отладки моего проекта.Что такое .axf-файлы?

Обнаружено, что это файл исполняемого файла руки, созданный компоновщиком во время процесса сборки, и используется для отладки сбоев. Таким образом, очевидно, что он содержит некоторую отладочную информацию, но неясно, какая именно информация? А также есть файл .map в папке отладки, так что может быть разница между этими двумя файлами?

+1

Я искал его для вас. , надеюсь, что это поможет немного. – lulyon

+1

Спасибо, я уже прочитал эту ссылку. Но я хотел бы знать, какую информацию он содержит. Также в чем разница между файлами .axf и .map? – Pravi

+6

axf является двоичным файлом, имеет машинный код (и другие вещи), так как ответ google выше утверждает, что это оболочка вокруг эльфа или aif. как правило, файлы карт имеют только карту, список адресов, где все закончилось после процесса связывания. –

ответ

18

Файл AXF представляет собой объектный файл , сгенерированный компилятором RealM ARM (также частью ARM-MDK от Keil) и содержит как объектный код, так и информацию об отладке. В отладчике, в то время как только объектный код загружается на самой цели, как код, так и отладочная информация загружаются в память хоста разработки.

При отладке (любого рода, а не только сбоев) через JTAG, SWD или другое соединение код должен быть доступен на хосте вместе с информацией об отладке, которая связывает этот код с исходным кодом. По отладочному соединению переносятся только минимальные данные, такие как значения регистра, поэтому, например, отладчик принимает значение счетчика программ и может отображать ассемблер и исходный код, который доступен на хосте, используя данные отладки в AXF.

Файл MAP содержит некоторые той же самой информации, но она предназначена для человека читаемости и потребления, а не использования машины, и не содержит строку кода в исходного объектного кода ассоциации данные, необходимые на уровне исходного отладчика ,

В основном вы можете игнорировать его - компилятор создает его, отладчик загружает его. Ваша инструментальная цепочка, вероятно, также генерирует .hex-файл, который вы используете для производственного программирования, и содержит только машинный код и постоянные данные и инициализаторы.

+8

(.axf-файлы - это формат ELF, как и обычно называемые файлы .elf, и содержат информацию об отладке DWARF) – James

+0

@James: Да, это было упомянуто dwelch в комментарии к вопросу. – Clifford

Смежные вопросы