В настоящее время я работаю над объектными файлами в формате ELF, сгенерированными из некоторых исходных файлов C (у меня их нет, доступны только объектные файлы). Как я написал небольшой инструмент, который извлекает все неопределенные символы, я наткнулся на некоторые символы, которые имеют раздел индексы, указывающие на заповедных участках:ELF зарезервированный раздел
Подробно:
Каждый symbol
запись в Symbol Table
в файле ELF имеет поле с целым числом, указывающее на section header entry index
, к которому принадлежит этот символ, настолько хорошо ... Спецификация ELF определяет группу индексов заголовка зарезервированного раздела, значение 0
для undefined symbols
и несколько других в диапазоне 0xFF00 - 0xFFFF
. О последнем одном, то ELF спецификация имеет только очень мало информации, о том, что эти разделы
зарезервированы для конкретного процессора семантики .
Мой вопрос:
Какой код действительно приводит к символу с индексом таблицы заголовка раздела, указывающий на такой reserved section
? Если он исходит не из исходного кода, а, может быть, из компилятора или чего-то еще, пожалуйста, объясните :)
Заранее спасибо!
Не зная, о каком процессоре вы говорите, и о каком конкретном процессоре разделе трудно сказать. – ajax
Спасибо за ответ (наконец, D)! Можно ли дать общий ответ на мой вопрос? Итак, если есть какие-либо кодовые конструкции, которые всегда приводят к таким символам? –