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

     

Флаги


Последние два байта заголовка файла содержат флаги, характеризующие тип объектного файла. Флаги определены во включаемом файле <filehdr.h>; используемые флаги приведены в следующей таблице:



Обозначение Значение Смысл
F_RELFLG 00001 Из файла удалена информация о настройке ссылок
F_EXEC 00002 Файл является выполняемым (в нем нет неразрешенных внешних ссылок)
F_LNNO 00004 Из файла удалена информация о номерах строк
F_LSYMS 00010 Из файла удалена информация о локальных именах
F_AR32W 0001000 32-битное слово


Два младших байта поля флагов определяют тип секции. Флаги описаны в следующей таблице:

Обозначение Значение Смысл
STYP_REG 0x00 Обычная секция (размещаемая, настраиваемая, загружаемая)
STYP_DSECT 0x01 Фиктивная секция (неразмещаемая, настраиваемая, незагружаемая)
STYP_NOLOAD 0x02 Незагружаемая секция (размещаемая, настраиваемая, незагружаемая)
STYP_GROUP 0x04 Групповая секция (формируется из входных секций)
STYP_PAD 0x08 Секция-заполнитель (неразмещаемая, ненастраиваемая, загружаемая)
STYP_COPY 0x10 Секция типа COPY (рабочий признак для редактора связей; неразмещаемая, ненастраиваемая, загружаемая; таблицы настройки ссылок и номеров строк обрабатываются обычным образом)
STYP_TEXT 0x20 Секция содержит выполняемые команды
STYP_DATA 0x40 Секция содержит инициализированные данные
STYP_BSS 0x80 Секция содержит только неинициализированные данные
STYP_INFO 0x200 Секция комментариев (неразмещаемая, ненастраиваемая, незагружаемая)
STYP_OVER 0x400 Оверлейная секция (неразмещаемая, настраиваемая, незагружаемая)
STYP_LIB 0x800 Библиотечная секция .lib (обрабатывается так же, как секция комментариев)



Содержание раздела