- •Методические указания по выполнению контрольной работы
- •230401 Информационные системы (по отраслям)
- •Содержание
- •Введение
- •1. Методические указания по изучению дисциплины Краткая история эволюции вычислительных систем
- •3. Микроядерная архитектура
- •4.Смешанные системы
- •Классификация ос
- •Общие сведения об операционных системах
- •Архитектурные особенности ос
- •1.Монолитное ядро
- •2. Многослойные системы
- •3.По типу доступа к компьютеру
- •По типу средств вычислительной техники, для управления ресурсами которых предназначена ос.
- •Основные принципы построения ос
- •Операционное окружение. Интерфейс пользователя
- •Интерфейс пользователя
- •Разновидности интерфейсов.
- •Прерывания. Обработка прерываний
- •Принципы обработки прерываний
- •Планирование процессов. Состояния существования процессов.
- •Когда требуется планирование
- •Планирование в системах пакетной обработки
- •Планирование в интерактивных системах
- •3.Планирование с использованием многоуровневой очереди.
- •Обслуживание ввода-вывода Структура системы ввода-вывода.
- •Управление периферийными устройствами
- •Функции базовой подсистемы ввода-вывода.
- •Буферизация и кэширование.
- •Обработка прерываний и ошибок.
- •Управления реальной памятью
- •Типы адресов
- •Алгоритмы распределения памяти
- •1. Распределение памяти фиксированными разделами
- •Один процесс в памяти: однозадачная ос
- •2. Оверлейная структура (для фиксированных разделов)
- •3. Распределение памяти динамическими (переменными) разделами
- •4. Перемещаемые разделы (Сжатие). Способ борьбы с фрагментацией
- •Управления виртуальной памятью
- •2.Сегментное распределение предусматривает перемещение данных сегментами - частями виртуального адресного пространства произвольного размера с учетом смыслового значения данных.
- •3.Странично-сегментное распределение
- •Работа с файлами. Файловые системы
- •Имена файлов
- •Операции над файлами:
- •Каталоги
- •Файловая система
- •Структура файловой системы
- •Физическая организация файловой системы
- •Диски, разделы, секторы, кластеры
- •Планирование заданий
- •Вытесняющие и невытесняющие алгоритмы планирования
- •Алгоритмы планирования
- •1.Алгоритмы планирования, основанные на квантовании
- •2. Алгоритмы планирования, основанные на приоритетах
- •Распределение ресурсов
- •А) Нарушение условия взаимоисключения
- •Б) Hарушение условия ожидания дополнительных ресурсов
- •С) Нарушение условия кругового ожидания
- •Защищенность и отказоустойчивость ос
- •Базовые технологии безопасности к ним относятся: аутентификация, авторизация, аудит.
- •Авторизация доступа
- •Избыточные дисковые подсистемы raid
- •Операционная система ms dos Основные компоненты ms dos:
- •Конфигурирование ос ms dos.
- •Планирование и установка системы Windows xp
- •Конфигурирование разделов на жестком диске
- •Выбор файловой системы
- •Установка с загрузочного компакт-диска
- •Загрузка Windows xp
- •Файлы, необходимые для запуска системы
- •Общие сведения о файловых системах ос ms Windows xp
- •Системный реестр
- •Управление безопасностью реестра
- •Структура операционной системы Linux
- •Процессы
- •Процедура загрузки ос Linux
- •2. Методические указания по выполнению контрольной работы.
- •Требования к оформлению контрольной работы
- •Варианты контрольных заданий Вариант 1
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Опишите процесс установки и удаление приложений в операционной системе ms Windows. Вариант 5
- •Вариант 6
- •Вариант 7
- •Классификация программных вирусов и средства борьбы с ними.
- •Вариант 12
- •Вариант 13
- •Перечень литературы
Процедура загрузки ос Linux
ОС Linux работает в 2-х режимах: однопользовательском (режим пользователя root, в этом режиме настраивается ОС) и многопользовательский (режим работы всех пользователей).
После включения питания компьютера и завершения тестирования аппаратной части BIOS считывает из первого сектора загрузочного диска короткую программу загрузчик. Эта программа запускает основной системный загрузчик (например, LILO), который, в свою очередь, загружает в память ядро системы vmlinuz - x.y.z- a, которое обычно хранится в файле в каталоге /boot. Здесь x.y.z --- это номер версии ядра, а вместо символа "а" часто стоит указание на какие то конкретные модификации ядра.
Сразу после загрузки ядро монтирует корневую файловую систему и запускает процесс init. Процесс init --- это программа, которая ответственна за продолжение процедуры загрузки, и перевод системы от начального состояния, возникающего после загрузки ядра, в стандартное состояние обработки запросов многих пользователей. Процесс init выполняет еще массу различных операций, необходимых для дальнейшей работы системы: проверку и монтирование файловых систем, запуск различных служб (демонов), запуск процедур регистрации, оболочек пользователей на различных терминалах и т. д.
Точный список этих операций зависит от так называемого уровня выполнения (run level). Уровень выполнения определяет перечень действий, выполняемых процессом init, и состояние системы после загрузки, т. е. конфигурацию запущенных процессов. Уровень выполнения идентифицируется одним символом. В ОС Linux существует 8 основных уровней выполнения:
0- остановка системы;
1- однопользовательский режим (для специальных случаев администрирования);
2 - многопользовательский режим без NFS (то же, что и 3, если компьютер не работает с сетью);
3 - полный многопользовательский режим;
4 - использование не регламентировано;
5 - обычно используется для запуска системы в графическом режиме;
6 - перезагрузка системы;
S (или s) --- примерно то же, что и однопользовательский режим, но S и s
используются в основном в скриптах.
Как видите, уровни 0, 1 и 6 зарезервированы для особых случаев. Относительно того, как использовать уровни со 2 по 5, единого мнения не существует.
Первым делом после старта процесс считывает свой конфигурационный файл /etc/inittab. Этот файл состоит из отдельных строк. Если строка начинается со знака или пуста, то она игнорируется.
Обработка файла /etc/inittab процессом init начинается в однопользовательском режиме (уровень 1), в котором единственным пользователем является пользователь root, работающий с консоли. Первым делом init находит строку, которая определяет, какой уровень выполнения запускается по умолчанию.
Далее выполняет команды, указанные в строке с ключевым словом sysinit. В стандартной конфигурации здесь выполняется скрипт rc.sysinit из каталога /etc/rc.d. После этого процесс init просматривает файл /etc/inittab и выполняет скрипты, соответствующие однопользовательскому уровню (1 во втором поле строки), всем уровням (строки с пустым вторым полем) и уровню, заданному по умолчанию.
Следующая важная функция, которую выполняет этот процесс (на уровнях со 2 по 5) --- запуск шести виртуальных консолей (процессов getty), чтобы предоставить пользователям возможность регистрироваться в системе с терминалов. Для этого init порождает процессы, именуемые getty процессами, и следит за тем, какой из процессов открывает какой терминал. Каждый getty процесс устанавливает свою группу процессов, используя вызов системной функции setpgrp, открывает отдельную терминальную линию и обычно приостанавливается во время выполнения функции open до тех пор, пока машина не получит аппаратную связь с терминалом. Когда функция open возвращает управление, getty процесс исполняет программу login (регистрации в системе), которая требует от пользователей, чтобы они идентифицировали себя указанием регистрационного имени и пароля. Если пользователь зарегистрировался успешно, программа login, запускает командный процессор shell и пользователь приступает к работе. Этот вызов shell именуется "login shell" (регистрационный shell, регистрационный интерпретатор команд). Процесс, связанный с shell, имеет тот же идентификатор, что и начальный getty процесс, поэтому login shell является процессом, возглавляющим группу процессов.
Если пользователь не смог успешно зарегистрироваться, программа регистрации завершается через определенный промежуток времени, закрывая открытую терминальную линию, а процесс init порождает для этой линии следующий getty – процесс открывающий терминал, вместо прекратившего существование.
После завершения загрузки init продолжает работать в фоновом режиме, отслеживая изменения в состоянии системы.
Таким образом, процесс начальной загрузки init постоянно находится в оперативной памяти и при получении соответствующих сигналов повторно выполняет цикл чтения из файла /etc/inittab о том, что нужно делать, при чем этот набор инструкций различен для разных уровней выполнения.
Когда суперпользователь останавливает систему (командой shutdown), именно init завершает все другие исполняющиеся процессы, размонтирует все файловые системы и останавливает процессор.
