Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Организация зап... 64683
Создание потоко... 62664
Модуль Forms 61267
Создание отчето... 61239
ТЕХНОЛОГИИ ДОСТ... 57704
Пример работы с... 55212
Имитационное мо... 53097
Реклама
Сейчас на сайте
Гостей: 4
На сайте нет зарегистрированных пользователей

Пользователей: 13,067
новичок: senata7
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Расчет мер близости на отношениях на Delphi + Пояснительная записка
Моделирование работы узла коммутации сообщений на GPSS + Пояснительная з...
Моделирование автовокзала + Отчет + Блок схема

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Группы процессов в системе 4.3BSD UNIX
Задания. Командные интерпретаторы, поддерживающие управления заданиями, такие как csh, обычно создают новую группу процессов для каждой введенной командной строки, независимо от того, будут ли они выполняться в фоновом или текущем режиме. Таким образом, задание обыкновенно состоит из одного процесса или набора процессов, соединенных между собой конвейерами
Потомки этих процессов также будут являться членами группы.

Также может иметь смысл заглянуть на сайт trucktrading.ru, ведь именно там можно узнать много нового на тему http://www.trucktrading.ru/. Тема запчасти для грузовиков может показаться на первый взгляд незначительной и даже не тематичной. Но стоит посетить сайт trucktrading.ru, и тема запчасти для грузовиков начинает проявлять себя с неожиданной стороны и вызывает всё больший интерес. Дело в том, что тема запчасти для грузовиков очень подробно представлена на сайте trucktrading.ru. Трудно найти более детальное освещение темы запчасти для грузовиков чем это сделано на сайте trucktrading.ru. Спасибо сайту trucktrading.ru за такое доскональное преподнесение темы запчасти для грузовиков.


Сеансы входа в систему. В системе 4.3BSD каждый сеанс входа в систему может создавать несколько групп процессов (или заданий), которые функционируют одновременно, разделяя между собой один и тот же терминал. Поле t_pgrp структуры tty терминала всегда содержит группу текущего выполняющегося задания.



Управляющие терминалы. Если процесс с идентификатором, группы равным нулю, открывает терминал, то такой терминал становится управляющим для данного процесса, а сам процесс присоединяется к текущей управляющей группе терминала (поле p_pgrp структуры ргос процесса устанавливается равным полю t_pgrp структуры tty терминала). Если терминал в данный момент не является управляющим терминалом какой-либо группы, то процесс становится лидером (то есть поля p_pgrp структуры ргос процесса и t_pgrp структуры tty терминала устанавливаются равными значению PID процесса).



Прямые наследники init (то есть все командные интерпретаторы, установленные на вход в систему) первоначально обладают идентификатором группы, равным нулю. Установить идентификатор группы процесса в ноль может только суперпользователь.
Доступ к терминалу. Интерактивные процессы (то есть процессы, принадлежащие текущей управляющей группе терминала, полученной из поля t_pgrp структуры tty этого терминала) всегда обладают беспрепятственным доступом к терминалу. Если фоновый процесс попытается прочесть с терминала, драйвер пошлет сигнал SIGTTIN всем процессам, принадлежащим его группе. По умолчанию сигнал SIGTTIN приводит к приостановке работы получивших его процессов. Операция записи в терминал по умолчанию разрешена всем фоновым процессам. Система 4.3BSD предлагает настройку терминала (бит LT0ST0P, изменяемый при помощи вызова TIOCLSET ioctl), установка которой приводит к отправке сигнала SIGTT0U фоновому процессу, пытающемуся произвести запись в терминал. Задания, приостановленные сигналом SIGTTIN или SIGTT0U, могут продолжить работу после получения сигнала SIGC0NT.
Управляющая группа. Процесс, имеющий доступ к терминалу на чтение, может осуществить вызов TIOSPGRP ioctl для изменения значения идентификатора управляющей группы терминала (поле t_pgrp структуры tty) на любое другое. Командный интерпретатор использует эту возможность системы для вызова процесса из фонового выполнения в интерактивный режим и наоборот. Например, пользователь может возобновить работу приостановленной группы процессов и назначить ее активной, сделав эту группу управляющей и отправив ей сигнал SIGC0NT. Для этой цели в командных интерпретаторах csh и ksh предусмотрены команды fg и bg.
Закрытие терминала. Когда нет ни одного процесса, для которого данный терминал открыт, то такой терминал не связан с группой и его поле t_pgrp обнуляется. Это действие производится при помощи процедуры драйвера close, вызываемой в момент, когда последний дескриптор терминала закрывается.
Повторная инициализация линии терминала. ОС 4.3BSD обеспечивает системный вызов vhangup, который обычно используется процессом init для завершения текущего сеанса входа в систему и старта нового.


Вызов просматривает таблицу открытых файлов, находит каждый элемент, относящийся к этому терминалу, и делает его неиспользуемым. Это достигается посредством удаления состояния «открыт» в элементах таблицы открытых файлов либо в тех реализациях, в которых поддерживается интерфейс vnode (см. раздел 8.6), изменением вектора vnodeops на такой набор функций, которые просто возвращают ошибку.



Затем vhangup вызывает процедуру терминала close() и посылает сигнал SIGHUP управляющей группе этого терминала. Такой подход в ОС 4.3BSD является решением проблемы управления процессами, которые продолжают функционирование уже после завершения сеанса входа в систему.
Опубликовал katy July 06 2015 19:03:21 · 0 Комментариев · 1337 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Применение жадног...
База данных: Книж...
Мод "проверочный ...
JBlabel3D
MPTools
Srinilist
Отключение и вклю...
Х. М. Дейтел, П. ...
Run
Progressbar
TmxOutlookBarPro
Converter AMR<->W...
Dynamic Titles дл...
Socoban
Swat [Исходник на...
Bitmap [для кнопок]
Импорт новостей ...
Иллюстрированный ...
CoolControls v3.0...
PolyFlow

Топ загрузок
Приложение Клие... 100386
Delphi 7 Enterp... 83602
Converter AMR<-... 20051
GPSS World Stud... 11328
Borland C++Buil... 11247
Borland Delphi ... 8186
Turbo Pascal fo... 6989
Visual Studio 2... 4970
Калькулятор [Ис... 4421
FreeSMS v1.3.1 3516
Случайные статьи
Моделирование случ...
Challenge Handshak...
Общие подходы к пр...
Поиск
Простой графически...
лучший онлайн-кази...
Квартиры на сутки ...
Команда UPDATE
Работа с фильтрами...
Изменение тайтла и...
Создание и изменен...
Понятие "область п...
Существуют три реж...
Преобразование ука...
Файловая система s...
Выбор пакета ассем...
Apache. Полезные с...
Строка доступа к с...
Игра в планирование
Страница управлени...
Анализ классическо...
Агрегированные кон...
Записи
Сайт секс знакомств
Определения служб
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?