Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
April 30 2026 04:29:29   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 36351
Учимся удалять!... 33243
Примеры, синони... 24453
Декартовы коорд... 23944
Просмотр готовы... 23786
FAST (методика ... 22533
содержание - се... 21920
Просмотр готовы... 20815
Работа с инстру... 16422
Сейчас на сайте
Гостей: 2
На сайте нет зарегистрированных пользователей

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

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
5.12.2 Открытие поименованного канала
Поименованный канал — это файл, имеющий почти такую же семантику, как и непоименованный канал, за исключением того, что этому файлу соответствует запись в каталоге и обращение к нему производится по имени. Процессы открывают поименованные каналы так же, как и обычные файлы, и, следовательно, с помощью поименованных каналов могут взаимодействовать между собой даже процессы, не имеющие друг к другу близкого отношения. Поименованные каналы постоянно присутствуют в иерархии файловой системы (из которой они удаляются с помощью системной функции unlink), а непоименованные каналы являются временными: когда все процессы заканчивают работу с каналом, ядро отбирает назад его индекс.
Алгоритм открытия поименованного канала идентичен алгоритму открытия обычного файла. Однако, перед выходом из функции ядро увеличивает значения тех счетчиков в индексе, которые показывают количество процессов, открывших поименованный канал для чтения или записи. Процесс, открывающий поименованный канал для чтения, приостановит свое выполнение до тех пор, пока другой процесс не откроет поименованный канал для записи, и наоборот. Не имеет смысла открывать канал для чтения, если процесс не надеется получить данные; то же самое касается записи. В зависимости от того, открывает ли процесс поименованный канал для записи или для чтения, ядро возобновляет выполнение тех процессов, которые были приостановлены в ожидании процесса, записывающего в поименованный канал или считывающего данные из канала (соответственно).
Если процесс открывает поименованный канал для чтения, причем процесс, записывающий в канал, существует, открытие завершается. Или если процесс открывает поименованный файл с параметром «no delay», функция open возвращает управление немедленно, даже когда нет ни одного записывающего процесса. Во всех остальных случаях процесс приостанавливается до тех пор, пока записывающий процесс не откроет канал. Аналогичные правила действуют для процесса, открывающего канал для записи.
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Случайные статьи
Модель для билета ...
Опции для работы с...
Сетевые карты
Контактная информация
Оглавление
Creative MegaWorks...
Случаи из жизни
Реинжиниринг бизне...
Программы, поддерж...
Великолепный Linux
Синтаксис
Механизм создания ...
Версии Linux
Продолжение расска...
7.9 ЗАГРУЗКА СИСТЕ...
Отношение к делу и...
Что такое САПР
12.3.3.2 Wait
СЛОЖНЫЙ ПРИМЕР
8.1.4 Управление п...
Коммутация каналов
Компьютерные файлы
Технология совмест...
Навигационные функции
ПРЕДИСЛОВИЕ
«Ты прав, но это ...
Принцип 3. Обращай...
1.1. Зрелые и незр...
8.1 ПЛАНИРОВАНИЕ В...
Правила для сущностей
3.1.1. Организация...
Терминология
Глава 1. Ноутбук ...
Учимся удалять! [К...
TZ GPS
Глава 2. Pocket N...
Водозащищенность
7.1. Интерпретация...
4.12.1 Профессиона...
5.9 СМЕНА ТЕКУЩЕГО...
Мини-чат
Вам необходимо залогиниться.

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