Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции СПО.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
2.79 Mб
Скачать

Курс лекций По дисциплине: «Системное программное обеспечение»

Тюмень 2008

Содержание

1 Основные определения 5

2 Эволюция операционных систем 7

2.1 Появление первых операционных систем 7

2.2 Появление мультипрограммных операционных систем для мэйнфреймов 10

2.3 Операционные системы и глобальные сети 15

2.4 Операционные системы мини-компьютеров и первые локальные сети 16

2.5 Развитие операционных систем в 80-е годы 18

2.6 Особенности современного этапа развития операционных систем 24

2.7 Выводы 28

3 Назначение и функции операционной системы 31

3.1 Операционные системы для автономного компьютера 31

1.1.1 ОС как виртуальная машина 31

1.1.2 ОС как система управления ресурсами 33

3.2 Функциональные компоненты операционной системы автономного компьютера 35

1.1.3 Управление процессами 36

1.1.4 Управление памятью 38

1.1.5 Управление файлами и внешними устройствами 40

1.1.6 Защита данных и администрирование 42

1.1.7 Интерфейс прикладного программирования 44

1.1.8 Пользовательский интерфейс 45

3.3 Требования к современным операционным системам 46

3.4 Выводы 49

4 Архитектура операционной системы 50

4.1 Ядро и вспомогательные модули ОС 50

4.2 Ядро в привилегированном режиме 54

4.3 Многослойная структура ОС 58

4.4 Типовые средства аппаратной поддержки ОС 64

4.5 Микроядерная архитектура 68

1.1.9 Концепция 68

1.1.10 Преимущества и недостатки микроядерной архитектуры 71

4.6 Выводы 75

5 Процессы и потоки 77

5.1 Мультипрограммирование 77

1.1.11 Мультипрограммирование в системах пакетной обработки 78

1.1.12 Мультипрограммирование в системах разделения времени 83

1.1.13 Мультипрограммирование в системах реального времени 84

5.2 Мультипроцессорная обработка 85

5.3 Понятия «процесс» и «поток» 90

5.4 Операции над процессами 96

5.5 Планирование и диспетчеризация потоков 98

5.6 Состояния потока 102

5.7 Вытесняющие и невытесняющие алгоритмы планирования 104

5.8 Алгоритмы планирования, основанные на квантовании 106

5.9 Алгоритмы планирования, основанные на приоритетах 110

5.10 Смешанные алгоритмы планирования 113

5.11 Планирование в системах реального времени 114

5.12 Выводы 115

6 Мультипрограммирование на основе прерываний 118

6.1 Назначение и типы прерываний 118

6.2 Механизм прерываний 121

6.3 Диспетчеризация и приоритезация прерываний в ОС 127

6.4 Функции централизованного диспетчера прерываний на примере Windows NT 129

6.5 Системные вызовы 135

6.6 Выводы 141

7 Синхронизация процессов и потоков 143

7.1 Цели и средства синхронизации 143

7.2 Необходимость синхронизации и гонки 145

7.3 Критическая секция 147

7.4 Блокирующие переменные 147

7.5 Семафоры 152

7.6 Тупики 155

7.7 Синхронизирующие объекты ОС 159

7.8 Сигналы 162

7.9 Выводы 163

9 Управление памятью 164

9.1 Функции ОС по управлению памятью 164

9.2 Типы адресов 165

9.3 Алгоритмы распределения памяти 172

9.4 Распределение памяти фиксированными разделами 173

9.5 Распределение памяти динамическими разделами 175

9.6 Перемещаемые разделы 176

9.7 Свопинг и виртуальная память 178

9.8 Страничное распределение 181

9.9 Сегментное распределение 191

9.10 Сегментно-страничное распределение 194

9.11 Разделяемые сегменты памяти 199

9.12 Выводы 202