- •1. Определение ос. Функции ос. Процессы и потоки. Классификация ос. История развития.
- •1.1 Определение ос.
- •Уровни вс.
- •Микроархитектура.
- •Машинный язык.
- •Системное и прикладное по.
- •1.2 Основная функция ос.
- •Варианты мультипрограммирования.
- •Состояния процессов и потоков.
- •1.4 Классификация ос.
- •1.4.1 Признаки классификации.
- •Особенности алгоритмов управления ресурсами. Поддержка многозадачности.
- •Многозадачность.
- •Вытесняющая и не вытесняющая многозадачность.
- •Классификация дисциплин обслуживания.
- •Дисциплины обслуживания.
- •Приоритетное обслуживание.
- •Динамический приоритет.
- •Поддержка многопользовательского режима.
- •Многопроцессорная обработка.
- •Системы пакетной обработки.
- •Системы разделения времени.
- •Системы реального времени.
- •Модульное ядро.
- •Микроядро.
- •Достоинства и недостатки микроядра.
- •Ооп: достоинства и недостатки.
- •1.5 Эволюция операционных систем. Появление ос.
- •Первый “баг”.
- •Этапы эволюции.
- •1 Этап (1940-60).
- •2 Этап (1965-75).
- •3 Этап (1970-80).
- •4 Этап (1980-90).
- •5 Этап (1990 – …).
- •2. Операционная система ms Windows 2000 и выше. Общая характеристика и основные функции. Структура ms Windows 2000-2003. Объекты в ms Windows 2000-2003.
- •2.2 Основная характеристика Windows 2000-2008.
- •2.3 Архитектура ос Windows 2000-2003. Краткая характеристика.
- •Структура ядра.
- •2.4 Объекты Windows 2000-2008.
- •Назначение объектов.
- •Типы объектов Windows 2000-2008.
- •Структура объектов Windows 2000-2003.
- •Удержание объектов.
- •Учет использования ресурсов.
- •Защита объектов.
- •Избирательный доступ.
- •3. Основы файловых систем. Файлы и их атрибуты. Каталоги. Логическая организация фс. Логическая, физическая организация файлов. Кэширование. Raid - системы.
- •4. Основы файловых систем. Файлы и их атрибуты. Каталоги. Логическая организация фс. Логическая, физическая организация файлов. Способы учёта свободного дискового пространства.
- •3.1 Основы файловых систем.
- •3.2, 3.3 Файлы и их атрибуты. Каталоги.
- •3.4 Логическая организация фс.
- •3.5 Логическая, физическая организация файлов.
- •3.6 Кэширование. Кэширование диска.
- •3.7 Raid - системы.
- •Сравнение raid-систем.
- •5. Файловые системы fat и fat32. Структура логического диска. Элемент каталога. Логическая, физическая организация файлов. Хранение длинных имён. Raid – системы.
- •5.1 Файловая система fat16.
- •Размеры разделов и кластеров fat16 для Windows 95-2000.
- •Файловая система vfat.
- •Элемент каталога vfat.
- •Пример длинного имени.
- •6.1 Файловая система ntfs.
- •6.2 Тома ntfs.
- •6.3 Mft и ее структура.
- •6.4 Атрибуты файлов.
- •6.5 Хранение файлов.
- •6.6 Сжатие файлов.
- •6.7 Защита целостности данных.
- •6.8 Дополнительные возможности.
- •7. Сравнение структуры логического диска fat32 и тома ntfs . Функции win32 api для работы с файлами.
- •8. Сравнение структуры логического диска Fat32 и тома ntfs. Варианты организации асинхронной работы с файлами.
- •7.1 Файловая система ntfs vs. Fat.
- •7.2 Функции win32 api для работы с файлами.
- •9. Методы распределения памяти с использованием дискового пространства. Стратегии управления виртуальной памятью. Классификация методов распределения памяти.
- •9.1 Методы распределения памяти с использованием дискового пространства.
- •Страничное распределение.
- •Сегментное распределение.
- •Сегментно-страничное распределение.
- •9.2 Стратегии управления виртуальной памятью (свопинг).
- •Понятие «trashing».
- •10. Архитектура памяти ms Windows 2000. Менеджер вп. Виртуальное ап. Средства защиты памяти. Страничное преобразование. Реализация свопинга в ms Windows 2000-2003.
- •Архитектура api управления памятью.
- •11. Архитектура памяти ms Windows 2000-2003. Организация «статической » виртуальной памяти. Блоки адресов. Состояния блоков адресов. Функции Win32 api.
- •12. Архитектура памяти в ms Windows 200-2003. Организация «динамической» виртуальной памяти. Назначение и преимущество по сравнению с кучами ansi c. Функции Win32 api.
- •13. Архитектура памяти в ms Windows 2000-2003. Проецируемые файлы, назначение и использование. Функции Win32 api. Проецируемые файлы.
- •14. Объекты управления центральным процессором и объединения ресурсов в ms Windows 2000-2003. Атрибуты процессов и потоков. Классы приоритетов.
- •14.1, 14.2 Управление центральным процессором и объединение ресурсов. Атрибуты процессов и потоков. Объекты Windows .
- •Процессы.
- •Потоки.
- •Задание (job).
- •Волокна (fibers).
- •14.3 Классы приоритетов.
- •15. Общие принципы диспетчеризация (планирование загрузки) в ms Windows 2000-2003. Классы приоритетов. Относительные приоритеты. Динамическое изменение приоритетов.
- •15.1 Общие принципы диспетчеризация (планирование загрузки) в ms Windows 2000-2003. Планирование загрузки однопроцессорной системы.
- •15.3 Относительные приоритеты потоков.
- •15.4 Динамическое изменение приоритетов.
- •16. Граф состояний потоков в ms Windows 2000-2003. Поток простоя. Принципы адаптивного планирования.
- •16.1 Граф состояний потоков в ms Windows 2000.
- •16.2 Поток простоя.
- •16.3 Принципы адаптивного планирования.
- •17. Граф состояний потоков в ms Windows 2000-2003. Особенности планирования в многопроцессорных системах.
- •17.2 Особенности планирования в многопроцессорных системах.
- •18. Граф состояний потоков в ms Windows 2000-2003. Особенности планирования в ос ms Windows Vista и Server 2008.
- •18.2 Особенности планирования в ос ms Windows Vista и Server 2008.
- •19. Планирование загрузки процессорного времени в ms windows 2000-2003. Функции win 32 api создания и завершение процессов и потоков, управление потоками
- •20. Планирование загрузки процессорного времени в ms windows 2000-2003. Функции win 32 api создания и завершения потоков. Управление потоками.
- •21. Критические секции и состязания. Семафоры, Мьютексы. Задача о читателях и писателях. Предотвращение критических ситуаций и средства синхронизации процессов
- •22. Критические секции и состязания. Семафоры , атомарные операции, critical_section. Задача о читателях и писателях. Предотвращение критических ситуаций и средства синхронизации процессов
- •23. Синхронизация потоков с использованием объектов ядра ms Windows 2000-2003. Основные принципы синхронизации. События. Семафоры. Функции win 32 api.
- •24. Синхронизация потоков с использованием объектов ядра ms Windows 2000-2003. Основные принципы синхронизации. Таймеры ожидания. Мьютексы. Функции win 32 api.
- •25. Межпроцессорное взаимодействие. Передача информации в ms Windows 2000-2003. Анонимные каналы. Почтовые ящики. Функции win 32 api.
- •26. Межпроцессорное взаимодействие. Передача информации в ms Windows 2000-2003. Именованные каналы. Почтовые ящики. Функции win 32 api.
2.3 Архитектура ос Windows 2000-2003. Краткая характеристика.
Многоуровневая ОС.
Ядро работает в защищенном режиме.
Присутствует микроядро, но оно дополнительно не защищено от остальных фрагментов ядра (т.е. по сути присутствует гибридное ядро).
В архитектуре можно выделить наноядро – уровень абстракции от оборудования HAL.
Компоненты ядра спроектированы на основе принципов построения объектно-ориентированных систем, хотя Windows не является объектно-ориентированной системой в точном смысле этого понятия, поскольку основная часть кода системы написана на Си из соображений обеспечения высокой скорости выполнения и переносимости.
Упрощенная архитектура Windows 2000
Структура ядра.
Исполняющая система, которая включает управление памятью, процессами, потоками, безопасностью, вводом/выводом, межпроцессорными обменами;
Важные для производительности ОС компоненты выполняются в режиме ядра, где они взаимодействуют с оборудованием и друг с другом без использования переключателей контекста и смены режимов.
Например, исполняющая система включает в себя менеджер виртуальной памяти, менеджер кэш-памяти, менеджер объектов, менеджер системы безопасности.
Все эти компоненты и полностью защищены от выполняемых приложений, которые не имеют прямого доступа к коду и данным из привилегированной части операционной системы.
Ядро (микроядро) выполняет низкоуровневые функции ОС: диспетчеризация потоков, прерываний и исключений, синхронизация процессоров. Ядро также включает набор процедур и базовых объектов, используемый исполняемой частью для создания высокоуровневых конструкций;
Микроядро (Microkernel) является основным компонентом операционной системы и координирует выполнение большинства базовых операций Windows.
В отличие от остальной части ядра ОС, МЯ никогда не выгружается из оперативной памяти, его выполнение никогда не прерывается другими потоками.
Код МЯ написан в основном на Си, а фрагменты, оказывающие наибольшую нагрузку на процессор, на языке Ассемблера.
Функции микроядра:
- МЯ, в первую очередь, занимается планированием загрузки процессора на основании следующих принципов:
квантование времени;
абсолютные приоритеты;
динамические приоритеты.
- В случае если компьютер содержит несколько процессоров, МЯ может выполнятся на всех процессорах и синхронизирует их работу. МЯ осуществляет диспетчеризацию потоков, таким образом, чтобы максимально загрузить процессоры системы и обеспечить первоочередную обработку потоков с более высоким приоритетом.
- МЯ также обеспечивает работу других базовых объектов ядра, которые используются исполняющей системой (и в некоторых случаях экспортируются в режим пользователя).
Уровень абстракции от оборудования (HAL – Hardware Abstraction Layer), изолирует остальное ядро от специфики аппаратной платформы, на которой выполняется ОС. Подобный подход позволяет обеспечить переносимость Windows. HAL можно рассматривать в качестве наноядра.
Драйверы устройств включают как файловую систему, так и аппаратные драйверы, которые транслируют пользовательские вызовы функций ввода/вывода в запросы физических устройств ввода/вывода;
Функции графического интерфейса пользователя работают с окнами, элементами управления и изображениями.
