Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
February 25 2026 23:51:17   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 36238
Учимся удалять!... 33113
Примеры, синони... 24341
Декартовы коорд... 23742
Просмотр готовы... 23666
FAST (методика ... 22411
содержание - се... 21797
Просмотр готовы... 20676
Работа с инстру... 16123
Сейчас на сайте
Гостей: 3
На сайте нет зарегистрированных пользователей

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

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
6.6.1 События, вызывающие приостанов выполнения, и их адреса
Как уже говорилось во второй главе, процессы приостанавливаются до наступления определенного события, после которого они «пробуждаются» и переходят в состояние «готовности к выполнению» (с выгрузкой и без выгрузки из памяти). Такого рода абстрактное рассуждение недалеко от истины, ибо в конкретном воплощении совокупность событий отображается на совокупность виртуальных адресов (ядра). Адреса, с которыми связаны события, закодированы в ядре, и их единственное назначение состоит в их использовании в процессе отображения ожидаемого события на конкретный адрес. Как для абстрактного рассмотрения, так и для конкретной реализации события безразлично, сколько процессов одновременно ожидают его наступления. Как результат, возможно возникновение некоторых противоречий. Во-первых, когда событие наступает и процессы, ожидающие его, соответствующим образом оповещаются об этом, все они «пробуждаются» и переходят в состояние «готовности к выполнению». Ядро выводит процессы из состояния приостанова все сразу, а не по одному, несмотря на то, что они в принципе могут конкурировать за одну и ту же заблокированную структуру данных и большинство из них через небольшой промежуток времени опять вернется в состояние приостанова (более подробно об этом шла речь в главах 2 и 3). На Рисунке 6.30 изображены несколько процессов, приостановленных до наступления определенных событий.
Рисунок 6.30. Процессы, приостановленные до наступления событий, и отображение событий на конкретные адреса
Еще одно противоречие связано с тем, что на один и тот же адрес могут отображаться несколько событий. На Рисунке 6.30, например, события «освобождение буфера» и «завершение ввода-вывода» отображаются на адрес буфера («адрес A»). Когда ввод-вывод в буфер завершается, ядро возобновляет выполнение всех процессов, приостановленных в ожидании наступления как того, так и другого события. Поскольку процесс, ожидающий завершения ввода-вывода, удерживает буфер заблокированным, другие процессы, которые ждали освобождения буфера, вновь приостановятся, ибо буфер все еще занят. Функционирование системы было бы более эффективным, если бы отображение событий на адреса было однозначным. Однако на практике такого рода противоречие на производительности системы не отражается, поскольку отображение на один адрес более одного события имеет место довольно редко, а также поскольку выполняющийся процесс обычно освобождает заблокированные ресурсы до того, как начнут выполняться другие процессы. Стилистически, тем не менее, механизм функционирования ядра стал бы более понятен, если бы отображение было однозначным.
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Случайные статьи
Как правильно уста...
5. Продукции типа...
2.6.2. Способы кон...
Отзывы о книге Сет...
13.1 ПЕРИФЕРИЙНЫЕ ...
5.12 КАНАЛЫ
Процессное управле...
Версии Linux
Video Logic DigiTh...
9.1.2.1 Выгрузка п...
2.2.2.3 Переходы и...
4.8 ДРУГИЕ ТИПЫ ФА...
Нечеткий вывод
5.2. Ближайшие задачи
Сервер
Интернет-исследова...
«Булкотряс», обору...
Применение атрибута
Немного о КПК Mita...
4.12.3.4 Структурн...
10.3.3 Терминальн...
Современные акусти...
8.4 ВЫВОДЫ
13.3 "ПРОЗРАЧНЫЕ" ...
Документированная ...
Удобство использов...
Ресурс бизнес-проц...
Общение
7.2.5. Проверка в...
1.5.1 Прерывания ...
До 200 долларов
7.5 ВЫЗОВ ДРУГИХ П...
2.2.4 Измерение ур...
ГЛАВА 2. ПЯТЬ УРОВ...
2.4.3 Блоковые коды
3. Декомпозиция пр...
Глава 1. Ноутбук ...
Глава 3. GARMIN ST...
Глава 15. FF2112
Специальные билеты
Мини-чат
Вам необходимо залогиниться.

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