Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
February 27 2026 23:13:27   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
4.12.1 Професси... 36245
Учимся удалять!... 33118
Примеры, синони... 24347
Декартовы коорд... 23753
Просмотр готовы... 23668
FAST (методика ... 22412
содержание - се... 21799
Просмотр готовы... 20682
Работа с инстру... 16131
Сейчас на сайте
Гостей: 1
На сайте нет зарегистрированных пользователей

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

Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ по Delphi
Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog
10.3.7 Вход в систему
Как показано в главе 7, процесс начальной загрузки, имеющий номер 1, выполняет бесконечный цикл чтения из файла "/etc/inittab" инструкций о том, что нужно делать, если загружаемая система определена как "однопользовательская" или "многопользовательская". В многопользовательском режиме самой первой обязанностью процесса начальной загрузки является предоставление пользователям возможности регистрироваться в системе с терминалов (Рисунок 10.19). Он порождает процессы, именуемые getty-процессами (от "get tty" — получить терминал), и следит за тем, какой из процессов открывает какой терминал; каждый getty-процесс устанавливает свою группу процессов, используя вызов системной функции setpgrp, открывает отдельную терминальную линию и обычно приостанавливается во время выполнения функции open до тех пор, пока машина не получит аппаратную связь с терминалом. Когда функция open возвращает управление, getty-процесс исполняет программу login (регистрации в системе), которая требует от пользователей, чтобы они идентифицировали себя указанием регистрационного имени и пароля. Если пользователь зарегистрировался успешно, программа login наконец запускает командный процессор shell и пользователь приступает к работе. Этот вызов shell'а именуется "login shell" (регистрационный shell, регистрационный интерпретатор команд). Процесс, связанный с shell'ом, имеет тот же идентификатор, что и начальный getty-процесс, поэтому login shell является процессом, возглавляющим группу процессов. Если пользователь не смог успешно зарегистрироваться, программа регистрации завершается через определенный промежуток времени, закрывая открытую терминальную линию, а процесс начальной загрузки порождает для этой линии следующий getty-процесс. Процесс начальной загрузки делает паузу до получения сигнала об окончании порожденного ранее процесса. После возобновления работы он выясняет, был ли прекративший существование процесс регистрационным shell'ом и если это так, порождает еще один getty-процесс, открывающий терминал, вместо прекратившего существование.
алгоритм login /* процедура регистрации */
{
исполняется getty-процесс: установить группу процессов (вызов функции setpgrp);
открыть терминальную линию; /* приостанов до завершения открытия */
if (открытие завершилось успешно) {
исполнить программу регистрации: запросить имя пользователя;
отключить эхо-сопровождение, запросить пароль;
if (регистрация прошла успешно) { /* найден соответствующий пароль в /etc/passwd */
перевести терминал в канонический режим (ioctl);
исполнить shell;
}
в противном случае считать количество попыток регистрации, пытаться зарегистрироваться снова до достижения определенной точки;
}
}
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Случайные статьи
. Система терминов...
Бумажные или компь...
Выводы
12.4 СИСТЕМА TUNIS
Группа 1 - информа...
Одноранговые сети
Правила размещения...
4.5 СУПЕРБЛОК
Правое и левое
2.6.1. Кодирование...
Личные впечатления...
3.1.1. Организация...
Глава вторая
5.1 OPEN
Совместная работа ...
3.4. Разделы
Fortuna ClipOn Blu...
Принцип 4. Создава...
2.6.3. Сжатие данных
Справочная сущность
Глава 14. INTERPHA...
Глава 21. BT-308 B...
О легальности испо...
1.3.2 Среда выпол...
Совершенство — это...
Глава 9. Royaltek ...
6.4.1 Прерывания и...
9.1.2.2 Выгрузка с...
3.6 ВЫВОДЫ
Автомобильные приб...
Рационален ли чел...
Глава 1. Выбираем ...
Глава 16. Raymarin...
Глава 7. Использов...
2.3.2.3 Факсимильн...
2.4. Цифровые кана...
Строка текущего со...
5.8 СОЗДАНИЕ СПЕЦИ...
Принцип 3. Обращай...
Сканируем
Мини-чат
Вам необходимо залогиниться.

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