Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Олифер. Сетевые операционные системы.docx
Скачиваний:
71
Добавлен:
01.07.2025
Размер:
16 Мб
Скачать
☆

Глава 3. Архитектура операционной системы 95

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

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

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

Аппаратная зависимость и переносимость ОС 111

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

Машинно-зависимые компоненты ОС 115

Переносимость операционной системы 116

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

Концепция 119

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

Совместимость и множественные прикладные среды 125

Двоичная совместимость и совместимость исходных текстов 125

Трансляция библиотек 128

Способы реализации прикладных программных сред 129

Система виртуальных машин 133

Выводы 134

Задачи и упражнения 137

Глава 4. Процессы и потоки 139

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

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

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

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

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

Планирование процессов и потоков 152

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

Создание процессов и потоков 159

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

Состояния потока 167

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

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

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

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

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

Моменты перепланирования 190

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

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

Аппаратная поддержка прерываний 196

Программные прерывания 201

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

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

Процедуры обработки прерываний и текущий процесс 210

Системные вызовы 212

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

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

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

Критическая секция 223

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

Семафоры 228

Тупики 231

Системные синхронизирующие объекты 236

Выводы 242

Задачи и упражнения 245

Глава 5. Управление памятью 260

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

Типы адресов 261

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

Фиксированные разделы 272

Динамические разделы 274

Перемещаемые разделы 276

Виртуальная память 278

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

Оптимизация страничной виртуальной памяти 290

Двухуровневое страничное распределение памяти 293

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

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

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

Кэширование данных. 310

Универсальная концепция 310

Иерархия памяти 312

Принцип действия кэш-памяти 313

Проблема согласования данных 316

Отображение основной памяти на кэш 317

Схемы выполнения запросов в системах с кэш-памятью 323

Выводы 327

Задачи и упражнения 330

Глава 6. Аппаратная поддержка мультипрограммирования на примере процессора Pentium 333

Регистры процессора 334

Привилегированные команды 338

Средства поддержки сегментации памяти 339

Виртуальное адресное пространство 340

Преобразование адресов 345

Защита данных при сегментной организации памяти 348

Сегментно-страничный механизм 357

Средства вызова процедур и задач 362

Вызов процедур 362

Вызов задач 367

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

Кэширование в процессоре Pentium 376

Буфер ассоциативной трансляции 377

Кэш первого уровня 381

Совместная работа кэшей разного уровня 383

Выводы 385

Задачи и упражнения 387