Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Экзамен ОС 2018

.pdf
Скачиваний:
117
Добавлен:
29.01.2018
Размер:
4.67 Mб
Скачать

Оглавление

Оглавление

Оглавление

1. Определение ОС. Функции ОС. Процессы и потоки. Классификация ОС. История развития. Тенденции развития современных процессоров.

Операционная система (ОС) История развития:

Тенденции развития современных процессоров: Функции:

Процессы и потоки: Классификация:

2. Операционная система MS Windows 2000+. Общая характеристика и основные функции. Структура MS Windows 2000+. Подсистема защиты MS Windows 2000+.

Объекты в MS Windows 2000+.

Общая характеристика: Основные функции:

Структура MS Windows 2000+:

Подсистема защиты MS Windows 2000+: SID:

Объекты в MS Windows 2000+:

Типы объектов: Примеры объектов:

Основные функции обьектов: Структура объекта:

3. Основы файловых систем. Файлы и их атрибуты. Каталоги. Логическая организация ФС. Логическая организация файлов. Физическая организация файлов. Повышение производительности файловых систем.

Основы файловых систем: Файлы и их атрибуты: Логическая организация файлов: Каталоги:

Логическая организация ФС:

Повышение производительности файловых систем:

4. Способы учета свободного дискового пространства.

5. Файловые системы FAT и FAT32. Структура логического диска. Элемент каталога. Логическая, физическая организация файлов. Хранение длинных имен. Повышение производительности файловых систем.

5.1 Файловые системы FAT и FAT32

5.1.1 Файловая система FAT16

5.1.2 Файловая система VFAT

5.1.3 Файловая система FAT32

Оглавление

Оглавление

5.1.4 Файловая система exFAT (иногда называют FAT64) 5.2 Структура логического диска 5.3 Элемент каталога

5.3.1 Элемент каталога FAT16

5.3.2 Элемент каталога VFAT

5.3.3 Элемент каталога FAT32

5.4 Логическая, физическая организация файлов

5.4.1 Логическая организация файлов

5.4.2 Физическая организация файлов

5.5 Хранение длинных имен

5.6 Повышение производительности файловых систем

6. Файловая система NTFS. Тома NTFS. Физическая структура MFT и метафайлы. Атрибуты в NTFS. Хранение файлов и каталогов. Сжатие файлов в NTFS. Защита целостности данных. Дополнительные возможности NTFS.

6.1 Файловая система NTFS. Физическая организация NTFS.

6.2 Тома NTFS

Типы томов в NTFS: RAID массивы

Размер кластера тома в NTFS

6.3 Физическая структура MFT и метафайлы.

Механизм использования MFT-зоны MFT и ее структура

6.4 Атрибуты в NTFS Атрибуты файлов в NTFS

Структура одной записи MFT: 6.5. Хранение файлов и каталогов

6.5.1 Резидентное хранение файлов

6.5.2 Нерезидентное хранение файлов

6.5.3 Хранение каталогов

6.6 Сжатие файлов в NTFS Пример сжатия файла: Разреженные файлы Многопоточные файлы

6.7 Защита целостности данных Средства протоколирования транзакций Примеры транзакций NTFS Кэширование в Windows

Порядок прохождения операции транзакции Структура журнала транзакций

7. Сравнение структуры логического диска FAT (FAT32) и тома NTFS. Функции Win32 API для работы с файлами. Организация асинхронной работы с файлами.

Оглавление

Оглавление

7.1 Сравнение структуры логического диска FAT(FAT32) и тома NTFS Поиск данных файла Поиск свободного места

Работа с каталогами и файлами Итоги сравнения

7.2 Функции Win32 API для работы с файлами 7.3 Организация асинхронной работы с файлами

8. Классификация методов распределения памяти. Методы без использования внешней памяти. Защита памяти.

8.1 Классификация методов распределения памяти

8.2 Методы без использования внешней памяти Фиксированные разделы Разделы переменной величины Перемещаемые разделы

8.3 Защита памяти Защита отдельных ячеек памяти

Методы граничных регистров Метод ключей защиты

Метод матрицы доступа, как усовершенствование метода ключей защиты Защита памяти по привилегиям

9. Методы с использованием внешней памяти. Стратегии управления виртуальной памятью (свопинг).

Страничное распределение : Сегментное распределение Стратегии управления ВП

Стратегия выборки Стратегия размещения Стратегия замещения Алгоритмы свопинга : Трешинг Принцип Деннинга

10. Архитектура памяти MS Windows 2000+. Менеджер ВП. Виртуальное АП. Средства защиты памяти. Страничное преобразование. Реализация свопинга в MS Windows 2000+.

Виртуальная память Адресное пространство Защита памяти

Средства защиты памяти обычно выполняют : Основные классические подходы защиты :

Архитектура памяти в Win 32 : Интерфейсы :

Оглавление

Оглавление

Windows 2000+ использует страничную организацию памяти Средства защиты памяти :

Организацией свопинга в Windows 2000+ занимается VMM.

11. Организация «статической» виртуальной памяти. Блоки адресов. Состояния блоков адресов. Функции Win32 API.

Блоки адресов и состояния.

Организация статической виртуальной памяти и функции WinAPI :

12. Архитектура памяти в MS Windows 2000+. Организация «динамической» виртуальной памяти. Назначение и преимущества по сравнению с кучами ANSI C.

Функции Win32 API.

Кучи - динамически распределяемые области данных Функции WinAPI :

Создание дополнительных “куч” : Достоинства между кучами ANSI C :

13. Архитектура памяти в MS Windows 2000+. Проецируемые файлы, назначение и использование. Функции Win32 API.

Проецируемые файлы Функции WinAPI

Проецирование файла данных в файл: Завершение проецирования файла данных :

Механизм совместного использования проецируемого файла Взаимодействие процессов через общую область данных

14. Архитектура памяти в MS Windows 2000+. Адресация расширенного адресного пространства. 64-разрядные операционные системы MS Windows.

Адресация расширенного адресного пространства

Address Windowing Extensions

Функции AWE API

Пример использования AWE

Функция AllocateUserPhysicalPages Функция MapUserPhysicalPages Функция FreeUserPhysicalPages

Ограничения AWE AWE и архитектура x64

64-разрядные операционные системы MS Windows Архитектура AMD64

Адресное пространство Windows для архитектуры x64 Достоинства и недостатки 64-разрядных приложений

Поддержка 32-разрядных приложений в 64-разрядной среде Windows Необходимость написания 64-разрядных приложений Повышение производительности 64-разрядного приложения Виртуальный адрес на платформе x64

Оглавление

Оглавление

Трансляция виртуальных адресов в x64-системах Адресация «больших» страниц на платформе x64

15. Архитектура памяти в MS Windows 2000+. Использование локальной памяти потока. Функции Win32 API.

Использование локальной памяти потока Локальная память потока (TLS) Назначение TLS

Виды TLS Динамическая TLS

Функции для работы с динамической TLS Иллюстрация использования динамической TLS Статическая TLS

Синтаксис объявления переменной в статической TLS Ограничения на использование статической TLS

16. Объекты управления центральным процессором и объединения ресурсов в MS Windows 2000+. Атрибуты процессов и потоков. Классы приоритетов.

Объекты управления центральным процессором и объединения ресурсов в MS Windows 2000+

Контекст процесса

Process Control Block

Переключение контекста Переключение контекста и производительность системы

Сопутствующие факторы, влияющие на производительность Методы снижения ресурсоемкости переключения контекста

Основные понятия

Процессы и потоки Windows Процессы Потоки

Атрибуты процесса Атрибуты потоков Поток и ресурсы процесса

Защита процессов и потоков Классы приоритетов Относительные приоритеты потоков

Иллюстрация по приоритетам для Windows 2000

17. Общие принципы диспетчеризация (планирования загрузки) в MS Windows 2000+. Классы приоритетов. Относительные приоритеты. Динамическое изменение приоритетов.

Общие принципы диспетчеризация (планирования загрузки) в MS Windows 2000+ Классификация дисциплин обслуживания Линейные бесприоритетные дисциплины

Оглавление

Оглавление

First-Come, First-Served (очередь)

Пример FCFS – Вариант 1

Пример FCFS – Вариант 2 Shortest Job First

Пример SJF Shortest-Remaining-Time-First

Пример SRTF Квантование времени

Производительность квантования времени Многоуровневая очередь Виды диспетчеризации между очередями

Пример многоуровневой очереди Классы приоритетов Относительные приоритеты

Динамическое изменение приоритетов Базовый и динамический приоритеты потока Динамические приоритеты

18. Граф состояний потоков в MS Windows 2000+. Поток простоя. Принципы адаптивного планирования.

Граф состояний потоков в MS Windows 2000+. Поток простоя

Назначение потока простоя Адаптивное планирование

Принципы адаптивного планирования Повышение приоритета Снижение повышенного приоритета «Голодающие» потоки

19. Граф состояний потоков в MS Windows 2000+. Особенности планирования в многопроцессорных системах. Особенности планирования в ОС MS Windows Vista и Server 2008.

Граф состояний потоков в MS Windows 2000+

Особенности планирования в многопроцессорных системах. Выбор процессора для потока при наличии простаивающих Выбор процессора для потока

Алгоритм выбор процессора для потока в Windows XP, 2003 и старше Выбор процессора для потока при отсутствии простаивающих

Выбор потока для конкретного процессора (Windows 2000 и XP) Выбор потока для конкретного процессора (Windows 2003 и старше)

Особенности планирования в ОС MS Windows Vista и Server 2008. Проблема неравномерного распределения ресурсов процессора Иллюстрация неравномерного распределения ресурсов процессора Усовершенствования ядра ОС Windows Vista – Server 2008

Оглавление

Оглавление

Решение неравномерного распределения ресурсов ЦП

20. Планирование загрузки процессорного времени в MS Windows 2000+. Функции Win32 API создания и завершения процессов и потоков, управления потоками. Функции Win32 API создания и завершения потоков.

Планирование загрузки процессорного времени в MS Windows 2000+. Квантование времени Настройка квантования Длительности кванта

Приоритетный режим обслуживания Классы приоритета процессов Адаптивное планирование

API Win32 для создания и завершения процессов Порядок создания процесса Функция создания процесса

Параметры CreateProcess Параметр fdwCreate

Результат выполнения CreateProcess Завершение процессов

Действия при возврате управления входной функцией первичного потока Функция ExitProcess

Функция TerminateProcess

Когда все потоки процесса «уходят» Действия при завершении процесса

Управление динамическими приоритетами потоков процесса API Win32 для управления потоками

Функция создания потока Параметры CreateThread Функция CreateRemoteThread

Установка приоритета потока Относительные приоритеты потоков Завершение потока Возврат управления функцией потока Функция ExitThread

Функция TerminateThread

Действия при завершении потока Действия при принудительном завершении процесса

Управление динамическими приоритетами потока Управление потоками – функция ResumeThread Управление потоками – функция SuspendThread Засыпание и переключение потоков с помощью Sleep Засыпание и переключение потоков Определение периодов выполнения потока

Оглавление

Оглавление

21. Критические секции и состязания. Cемафоры и мьютексы. Задача о читателях и писателях. Задача о философах. Взаимная блокировка (тупики).

Пример возникновения гонок (состязаний) Еще один пример гонок

Критические секции Простейшее решение проблемы возникновения гонок

Условия взаимного исключения гонок со стороны процессов Пример решения взаимного исключения с использованием критических секций Алгоритм Петерсона Ограничения алгоритма Петерсона Алгоритм пекарни

Cемафоры и мьютексы Мьютексы

Задача о читателях и писателях Взаимная блокировка (тупики)

Пример взаимной блокировки Условия возникновения тупиков

Задача об обедающих философах Решение задачи об обедающих философах

22. Синхронизация потоков с использованием объектов ядра MS Windows 2000+. Основные принципы синхронизации. Таймеры ожидания, мьютексы. Критические секции. Функции Win32 API.

Синхронизация потоков Объекты синхронизации и их состояния

Объекты синхронизации MS Windows 2000+ и их состояния Примеры функционирования объектов синхронизации Спящие потоки Специализированные объекты синхронизации События Применение «событий» Таймеры ожидания

Сравнение инструментов синхронизации Windows 2000+ Функции Win32 API для управления таймерами

Создание и открытие таймера ожидания Режимы доступа к таймеру Управление таймером ожидания Запуск таймера ожидания Отмена действия таймера

Функции Win32 API для управления мьютексами Создание и открытие мьютекса Режимы доступа к мьютексу Управление мьютексом

Оглавление

Оглавление

Функции Win32 API для управления критическими секциями Структура типа CRITICAL_SECTION

Основные поля структуры CRITICAL_SECTION Вход в свободную секцию Вход в занятую секцию Освобождение секции

Критические секции в многопроцессорных системах

23. Синхронизация потоков с использованием объектов ядра MS Windows 2000+. Основные принципы синхронизации. События, семафоры. Критические секции.

Функции Win32 API.

Синхронизация потоков с использованием объектов ядра MS Windows 2000+. Основные принципы синхронизации.

События Общая информация

Применение событий Создание объекта типа “событие”

Совместное использование объекта «события» процессами Открытие объекта типа «событие» Режимы доступа к «событиям» Управление «событиями»

Особенности PulseEvent

Пример использования «события» для синхронизации потоков Семафоры

Создание объекта типа «семафор» Открытие объекта типа «семафор» Режимы доступа к семафору Захват семафора Освобождение семафора

Определение текущего состояния семафора Критические секции.

24. Атомарные операции и lockless программирование. Реализация многопоточности с использованием технологии OpenMP, блокировки и синхронизация потоков в OpenMP.

Атомарные операции и lockless программирование. Lockless программирование

Атомарные операции как lockless-инструмент Виды атомарных операций

Реализация атомарных операций в Windows 2000+ Переупорядочивание и модель памяти «Сильная» и «слабая» модели памяти Барьеры памяти и оптимизации Полные барьеры Двухсторонние барьеры

Оглавление

Оглавление

Односторонние барьеры

Управление переупорядочиванием в MS VC Неявные барьеры в MS VC 2005 Производительность lockless приложений

Реализация многопоточности с использованием технологии OpenMP Компоненты OpenMP

Директивы pragma

Функции run-time OpenMP

Переменные окружения Формат директивы pragma

Реализация параллельной обработки Директива #pragma omp for Директива #pragma omp parallel for

Распараллеливание при помощи директивы sections Директива single

Задание числа потоков Область видимости переменных

Директивы указания области видимости переменных Алгоритмы планирования Динамическое планирование Управляемое планирование

Сравнение динамического и управляемого планирования Планирование в период выполнения Автоматическое планирование

Блокировки и синхронизация потоков в OpenMP. Блокировки (замки)

Функции для работы с блокировками в OpenMP и Win32 Барьерная синхронизация Неявная барьерная синхронизация Явная барьерная синхронизация Типы явной синхронизации Атомарные операции Критические секции

Директива master

Упорядочивание итераций с помощью ordered Явный барьер памяти Неявный барьер памяти

Отказ от неявного барьера памяти

25. Межпроцессное взаимодействие. Передача информации в MS Windows 2000+. Атомы. Сообщения. Анонимные каналы. Функции Win32 API.

Межпроцессное взаимодействие. Механизмы межпроцессного обмена

Оглавление