WikiDer > Системная объектная модель (формат файла)

System Object Model (file format)
Системная объектная модель
РазработанHewlett Packard

В вычислениях Системная объектная модель (SOM) - проприетарный исполняемый файл формат файла разработан Hewlett Packard для своего HP-UX и MPE / ix операционных систем, в частности, SOM - это собственный формат, используемый для 32-битный заявление исполняемые файлы, объектный код, и общие библиотеки работает под PA-RISC семейство процессоров.

С введением 64-битный процессоров, Hewlett Packard принял Исполняемый и связываемый формат (ELF) для представления более широкого 64-битного программного кода, при этом SOM ​​по-прежнему используется для приложений, работающих в 32-битном режиме. Позже, с введением Itanium В семействе процессоров HP-UX отказалась от формата SOM в пользу ELF как для 32-битного, так и для 64-битного кода приложения.

В HP-UX формат файла SOM иногда называют а. выход формат и описывается Язык программирования C структуры в заголовочном файле "/usr/include/a.out.h". Однако формат SOM технически не совпадает со стандартным. а. выход формат, используемый многими другими операционными системами Unix.

Обзор формата файла SOM

Файл SOM состоит из записи заголовка фиксированного размера, за которой следует ряд разделов, некоторые из которых являются необязательными. Заголовок всегда появляется в начале файла и содержит байтовые смещения и размеры других разделов в файле. За исключением заголовка, другие разделы могут появляться в любом месте файла, хотя типичная структура файла SOM (при условии, что присутствуют все разделы) выглядит следующим образом:

  • Запись заголовка
  • Запись вспомогательного заголовка
  • Space Records
  • Подпространственные записи
  • Записи об исправлении загрузчика
  • Космические струны
  • Записи символов
  • Записи об исправлении
  • Строки символов
  • Записи компилятора
  • Данные для загружаемых пространств
  • Данные для выгружаемых пространств

Числовые поля хранятся в прямой порядок байтов порядок байтов, собственный порядок байтов PA-RISC, большинство из которых имеет ширину 32 бита. Строки символов обычно кодируются в 8-битном формате. ASCII и оба имеют префикс 32-битного индикатора длины, а также оканчивающийся нулем, подобно C струны. Большинство записей выровнены по словам (начинаются со смещения четных байтов) с добавлением отступов по мере необходимости.

Смотрите также

внешняя ссылка