Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
Апрель 12 2021 02:52:09   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
Учимся удалять!... 27852
4.12.1 Професси... 25731
Примеры, синони... 22024
FAST (методика ... 20162
Просмотр готовы... 19960
Декартовы коорд... 19058
Просмотр готовы... 16903
содержание - се... 16423
Работа с инстру... 12840
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

Пользователей: 9,955
новичок: Logyattella
Друзья сайта
Ramblers Top100
Рейтинг@Mail.ru

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
6.5.2 Выделение области
Ядро выделяет новую область (по алгоритму allocreg, Рисунок 6.18) во время выполнения системных функций fork, exec и shmget (получить разделяемую память). Ядро поддерживает таблицу областей, записям которой соответствуют точки входа либо в списке свободных областей, либо в списке активных областей. При выделении записи в таблице областей ядро выбирает из списка свободных областей первую доступную запись, включает ее в список активных областей, блокирует область и делает пометку о ее типе (разделяемая или частная). За некоторым исключением каждый процесс ассоциируется с исполняемым файлом (после того, как была выполнена команда exec), и в алгоритме allocreg поле индекса в записи таблицы областей устанавливается таким образом, чтобы оно указывало на индекс исполняемого файла. Индекс идентифицирует область для ядра, поэтому другие процессы могут при желании разделять область. Ядро увеличивает значение счетчика ссылок на индекс, чтобы помешать другим процессам удалять содержимое файла при выполнении функции unlink, об этом еще будет идти речь в разделе 7.5. Результатом алгоритма allocreg является назначение и блокировка области.
алгоритм allocreg /* разместить информационную структуру области */
входная информация:
(1) указатель индекса
(2) тип области
выходная информация: заблокированная область
{
выбрать область из списка свободных областей;
назначить области тип;
присвоить значение указателю индекса;
if (указатель индекса имеет ненулевое значение)
увеличить значение счетчика ссылок на индекс;
включить область в список активных областей;
return (заблокированную область);
}
Рисунок 6.18. Алгоритм выделения области
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Случайные статьи
6.5.8 Копирование ...
Что такое САПР
Изображение атрибута
3.7 Сеть NetWare ...
7.2.3 Посылка сигн...
9.2.2 "Сборщик" ст...
8.1. Управление тр...
2.1.1. Уровень 1 ...
7.3.2. Концепци...
2.2.1. Проводные к...
Патч-антенна
6.3 КОНТЕКСТ ПРОЦЕССА
8.2. Планирование...
Синтаксис диаграмм
Иерархические сети
Что необходимо доб...
Запуск программы [...
История GeForce
2.4.7.1 Идея цикли...
Методы управления ...
Представление домена
Определение связи
Запись трека (Trac...
Глава 7. Pocket N...
Как работает эхолот
Глава 10. Особенно...
2.4.7.4 Построение...
Глава 9. Реальный GPS
Принцип 1. Как мож...
4.12.1 Профессиона...
Продолжение расска...
Глава 17. GPS-прие...
Глава 2. PocketGPS...
Пройдусь по Абрико...
Глава 4. Основные ...
Как правильно наст...
2.3.1 Общие сообра...
Постоянное обновление
Недопустимые комби...
Трещина, которая н...
Мини-чат
Вам необходимо залогиниться.

Нет присланных сообщений.
Copyright © 2009