Главная | Партнер - calon.by | Соглашение | Публикация статей

Управление Памятью Freebsd
Категория: Статьи

Каждый процесс начинает выполнение с тремя сегментами памяти: кода (text), данных и стека. Сегмент данных делится на инициализированные данные и неинициализированные данные (известные также как BSS). Сегмент text является сегментом только для чтения и обычно разделяется между всеми процессами, выполняющими файл, тогда как в области данных и стека может быть осуществлена запись и они индивидуальны для каждого процесса. Сегмент text и инициализированные данные для процесса считываются из исполняемого файла. Исполняемый файл отличается тем, что это обычный файл (а не каталог, специальный файл или символическая ссылка) и для него установлены один или более битов с разрешением доступа на исполнение. У каждого исполняемого файла есть заголовок exec, содержащий магическое число, обозначающее тип исполняемого файла. FreeBSD поддерживает несколько исполняемых форматов, включая следующие. Файлы, которые должны читаться интерпретатором. Файлы, которые могут исполняться непосредственно, включая AOUT, ELF и сжатый gzip ELF. Исполняемый файл вначале анализируется структурой активизации образа (imgact). Заголовок файла, который должен быть выполнен, передается по списку зарегистрированных активаторов образа для обнаружения подходящего формата. Когда подходящий формат найден, соответствующий активатор образа подготавливает файл к выполнению У файлов, попадающих в первую категорию, магическое число (занимающее 2 первых байта файла) представляет собой последовательность из двух символов «#!» , за которыми следует имя пути к интерпретатору, который должен быть использован. Это имя пути в настоящее время ограничено константой времени компиляции в 128 символов. Например, #!/bin/sh ссылается на оболочку Борна. Активатор образа, который будет выбран, обрабатывает вызов интерпретаторов. Он загрузит и запустит указанный интерпретатор, передав в качестве аргумента имя файла, который должен быть интерпретирован. Для предотвращения зацикливаний FreeBSD допускает лишь один уровень интерпретации, и интерпретатор файла не может сам интерпретироваться По соображениям производительности большинство файлов попадают во вторую категорию и являются непосредственно выполняемыми. Информация в заголовке непосредственно выполняемого файла включает архитектуру и операционную систему, для которой исполняемый файл был создан, а также указывает, является ли он статически скомпонованным или использующим разделяемые библиотеки. Выбранный активатор образа может использовать такую информацию, как знание операционной системы, для которой исполняемый файл был откомпилирован, чтобы отконфигурировать ядро для использования соответствующей интерпретации системных вызовов при работе программы. Например, исполняемый файл, построенный для запуска под Linux, может безболезненно работать под FreeBSD с использованием вектора перенаправления системных вызовов, предоставляющим эмуляцию системных вызовов Linux. В заголовке указаны также размеры сегментов text, инициализированных данных, неинициализированных данных и дополнительные сведения для отладки. Отладочная информация не используется ядром или выполняющейся программой. За заголовком следует образ сегмента text, за которым идет образ инициализированных данных. Неинициализированные данные не содержатся в исполняемом файле, поскольку они могут создаваться по требованию с использованием заполненной нулями памяти. Более подробно вы можете ознакомиться с внутренним устройством BSD в библиотеке Unix документации

Статьи по теме:

IBM передаёт фреймворк ACTF в дар Eclipse
Микропроцессор
Загрузка нескольких различных ОС
Архитектура украинского сегмента сети Internet
Российские национальные IP-сети
Интерфейс глобальных сетей
Накопители информации в компьютере
Описание построения графической схемы терминала
Зарождение кибернетики
Делайте резервные ропии профессионально - Norton Ghost 14
Обзор Windows Vista
Приостановка печати всех документов
Анимация На Рабочем Столе Вашего Компьютера
Загрузка в альтернативном режиме
Темп развития CompactPCI
Программа 1С Бухгалтерия Предприятия 8
ПРИНЦИП ПОСТРОЕНИЯ КОМПЬЮТЕРНЫХ СЕТЕЙ
LCD мониторы
Компьютер и инвалиды
Как работает вирус
Другие отличил NetWare 4.x
Задача, решаемая с использованием систем управления базами данных
Уровень агентов
Диспетчер печати
WordPad: Выделение текста кеглем шрифта
Цифровая логика
Очистка большой области рисунка
Программа AntiVir
Выпущена Версия Mobile Forex 2.15: Новый Подход К Надежности И Удобству
Системы электронной почты
Программный код в среде Visual Basic
Линукс привелось в действие приборы: Теперь в рынке
Использование буфера обмена
Советы владельцам виртуальных магазинов
Открытие документа в процессе загрузки операционной системы
Обзор возможностей WinRAR 3.70 RU Final
Классификация прикладных систем и классификация кабельных систем
Микропроцессор
Отличие ЭС от других программных продуктов
СОЗДАНИЕ И РАБОТА С ГРАФИЧЕСКОЙ ИНФОРМАЦИЕЙ
Использование анонимного ftp по e-mail
Открытие документа из Главного меню
Как структура Internet сказывается на Пользователе?
Windows Vista как платформа
МЕЖДУНАРОДНЫЙ И ОТЕЧЕСТВЕННЫЙ ОПЫТ БОРЬБЫ И ПРЕДУПРЕЖДЕНИЯ КОМПЬЮТЕРНЫХ ПРЕСТУПЛЕНИЙ И ВНОВЬ ВОЗНИКАЮЩИЕ ПРОБЛЕМЫ
Списки воспроизведения
Обмен данными через буфер обмена
3Ds Max 2008 (Rip)
Настройка уровня звука
Поколения ЭВМ
Микроконтроллерыне Системы
РАЗВИТИЕ ИНФОРМАЦИОННОГО ОБЩЕСТВА
Шина ISA
Java, как объектно-ориентированный язык
Новые концентраторы и коммутаторы BayStack компании Bay Networks