Операционная система UNIX. Руководство программиста




Вспомогательные элементы таблицы имен


Вспомогательные элементы имеют тот же размер, что и основные, однако их структура зависит от типа имени и класса памяти. Эта зависимость показана в следующей таблице:

Имя Класс памяти Тип Формат вспомогательного элемента
d1 Базовый тип
.file C_FILE DT_NON T_NULL Имя файла
.text, .data, .bss C_STAT DT_NON T_NULL Секция
Имя структуры,объединения или перечисления C_STRTAG, C_UNTAG, C_ENTAG DT_NON T_NULL Начало структуры, объединения или перечисления
.eos C_EOS DT_NON T_NULL Конец структуры
Имя функции C_EXT, C_STAT DT_FCN Кроме T_MOE Функция
Имя массива C_AUTO, C_STAT, C_MOS, C_MOU, C_TPDEF DT_ARR Кроме T_MOE Массив
.bb, .eb C_BLOCK DT_NON T_NULL Начало и конец блока
.bf, .ef C_FCN DT_NON T_NULL Начало и конец функции
Имя, связанное со структурой, объединением или перечислением C_AUTO, C_STAT, C_MOS, C_MOU, C_TPDEF DT_PTR, DT_ARR, DT_NON T_STRUCT, T_UNION, T_ENUM Имя, связанное со структурой, объединением или перечислением

Здесь имя структуры, объединения или перечисления включает также специальные имена .xfake. Если имя удовлетворяет нескольким из перечисленных условий, то его вспомогательный элемент должен иметь формат объединения.

Примечание

Было бы ошибкой полагаться на какие-либо априорные предположения о числе вспомогательных элементов. Число вспомогательных элементов для имени хранится в поле n_numaux соответствующего основного элемента и должно извлекаться только оттуда.

В следующих пунктах описывается структура вспомогательных элементов.




Содержание  Назад  Вперед