
- •Конспект лекций по курсу «Операционные системы», (1 семестр , часть 1)
- •Занятие 1.Введение
- •Занятие 2.Прерывания, многозадачность
- •Занятие 3.Работа с памятью
- •Занятие 4.Процессы
- •Занятие 5.Потоки. Многопроцессорные системы
- •Занятие 6.Микроядро.
- •Занятие 7.Устройства ввода-вывода. Dma.
- •Занятие 8.Буферизация операций ввода-вывода
- •Циклическая буферизация
- •Занятие 9.Структура hdd.
- •Занятие 10.Файловая система
- •Смешанный – состоят из записей разной длины с разным количеством полей:
- •Последовательный – состоит из записей одинаковой длины с одинаковым количеством и размеров полей.
- •Непрерывный
- •Цепочечный
- •Индексированный
- •Битовые таблицы ( маска)
- •Список свободных блоков
- •Цепочки свободных блоков
- •Индексирование
- •Занятие 11. Инсталяция windows
- •Запуск инсталляции
- •Занятие 12.Загрузка windows
- •Занятие 13.Загрузочный файл boot.Ini
- •Загрузочные файлы
- •Файл Boot.Ini
- •Занятие 14.Диск аварийного восстановления
- •Занятие 15.Консоль восстановления
- •Консоль восстановления
- •Занятие 16.Адресация и доступ к разным типам памяти
- •Основная и верхняя память.
- •Менеджеры памяти
Занятие 12.Загрузка windows
Первичные загрузочные файлы
Ntldr первичный загрузчик
Bootsect.dos содержит загрузочный сектор предыдущей ОС, загружается, если выбрана другая ОС
Ntdetect.com детектирование оборудования с занесением данных в реестр
Boot.ini меню выбора ОС
Ntbootdd.sys создается и используется только в случае загрузки со SCSI диска
Файлы начальной загрузки системы NT
Ntoskrnl.exe ядро NT (winnt\system32)
System параметры настройки системы (winnt\system32\config)
Hall.dll библиотека аппаратно-зависимого уровня(winnt\system32)
Драйверы устр драйверы устройств (winnt\system32\drivers)
Этапы загрузки NT
Тест BIOS (POST)
Считывание MBR и просмотр таблицы разделов
Загрузка Boot record из первого сектора активного раздела
Запуск Ntldr
Переход в 32-разрядный режим процессора
Запуск драйвера минимальной файловой системы (встроен в ntldr) – понимает FAT, NTFS
Ntldr загружает меню из Boot.ini (если выбрана не NT то далее управление передается bootsect.dos)
Ntldr загружает и запускает Ntdetect.com , который анализирует установленное оборудование (адаптеры, шины, порты, дисководы, клавиатуру, мышь …) и результаты передает обратно Ntldr для записи в дальнейшем данных в куст реестра Hardware
После сбора информации об оборудовании выдается меню выбора конфигураций оборудования, если этих конфигураций существует несколько. Если конфигурация только одна, то меню выбора не выводится.
Ntldr загружает в память Ntoskrnl.exe, Hall.dll и куст реестра System
Ntldr выбирает данные для загрузки ( список драйверов и служб) из куста реестра System и запускает драйверы начальной загрузки
Передача управления Ntldr -> Ntoskrnl.exe(запуск ядра)- появление графического экрана.
Загрузка программ аппаратно-зависимого уровня
Из данных System загружаются драйверы и службы низкого уровня. Их список задан в реестре: HLM\System\CCSet\Control\ServiceGroupOrder ( на экране : очистка синим цв. и вывод ……). Они разбиты по группам ( кто к какой группе относится записано в параметре этого раздела реестра Group = 0х0 – это самый низкий уровень) Для вывода имен загружаемых файлов - добавить в boot.ini параметр /sos в строки запуска
Инициализация ядра и драйверов низкого уровня
Загрузка из System драйверов высокого уровня (Group = 0х1)
Текущая рабочая конфигурация сохраняется в CCSet(CurrentControlSet) и копия в CloneControlSet ( содержат данные о драйверах и службах, которые должны быть загружены) При ошибке загрузки драйвера система выполняет действия в зависимости от параметра реестра для этого драйвера HLM\ System\CCSet\Services\имя драйвера или службы\ErrorControl: 0 – пропуск ошибки 1- ошибка игнорируется, но выводится сообщение 2- загрузка прерывается, а затем берется конфигурация из LastKnownGood ( если она уже применяется, то ошибка игнорируется 3- аналогично 2, но при ошибке в LastKnownGoog закрузка прекращается
Создание списка оборудования в реестре из ntdetect.com куст реестра Hardware
Запуск диспетчера сеансов Smss (Session Manager) который запускает высокоуровневые службы:
Smss запускает программы и настраивает файлы подкачки из данных реестра
Smss создает буквенные обозначения устройств. (напр, для PRN – направление на порт LPT)
Smss загружает подсистемы NT(обычно это Win32 – параметр Windows)
Win32 запускает Winlogon.exe, которая запускает администратор безопасности Lsass.exe и выводит окно входа
Запускаются автоматические службы ( сервера, рабочей станции…)
При успешном входе пользователя загрузка считается успешной и тогда: клонированный набор CloneControlSet копируется в управляющий набор для последней рабочей конфигурации LastKnownGoog