Все о моделировании в Компас-3D LT
   Главная Статьи Файлы Форум Ссылки Категории новостей
Декабрь 04 2022 18:11:57   
Навигация
Главная
Статьи
Файлы
FAQ
Форум
Ссылки
Категории новостей
Обратная связь
Фото галерея
Поиск
Разное
Карта Сайта
Популярные статьи
Что необходимо ... 65535
Учимся удалять!... 30874
4.12.1 Професси... 29459
Примеры, синони... 22691
Просмотр готовы... 21329
Декартовы коорд... 20899
FAST (методика ... 20775
содержание - се... 19907
Просмотр готовы... 18001
Работа с инстру... 13781
Сейчас на сайте
Гостей: 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;
}
в противном случае считать количество попыток регистрации, пытаться зарегистрироваться снова до достижения определенной точки;
}
}
Комментарии
Нет комментариев.
Добавить комментарий
Пожалуйста залогиньтесь для добавления комментария.
Рейтинги
Рейтинг доступен только для пользователей.

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

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

Пароль



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

Забыли пароль?
Запросите новый здесь.
Случайные статьи
7.2.3. Выполняемые...
Глава 2. Беспровод...
ГЛАВА 5. СИСТЕМНЫЕ...
Автомобильные аппа...
2.4.2 Логическое к...
Навигационные функции
Канал передачи данных
5.1 Архитектура со...
Второй параграф
TDK XS-iV Tremor M...
9.5. Инженерия ра...
2.7 Сети PDH и SO...
Правила
Необходимые предпо...
Video Logic DigiTh...
Подходы к определе...
Как правильно уста...
Мультиплексный
Перепроектирование...
5.6 CLOSЕ
ГЛАВА 7. УПРАВЛЕНИ...
5.2 READ
11.2.3 Семафоры
RoutePlanner и Str...
Пользовательские п...
10.2 ДИСКОВЫЕ ДРАЙ...
Интернет-исследова...
Сквозные (межфункц...
Память
6.4.5 Копирование ...
Совместная работа ...
Единицы измерения
Избыточная связь
Глава 10. Особенно...
Исчисление высказ...
Глава 14. INTERPHA...
Шинная топология
Идентификация атри...
9.2.1.2 Функция ex...
7.2.2 Группы проце...
Мини-чат
Вам необходимо залогиниться.

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