- •1 Призначення та функції операційних систем.
- •2 Классификация ос:
- •3 Свойства ос:
- •4 Архитектура компьютерной системы Windows nt
- •5 Типы Windows-приложений:
- •6 Структура оконных вин приложений
- •7 Механизм сообщений Windows
- •9 Реєстрація класів вікон користувача та створення вікон у Windows.
- •10 Создание дочерних окон.
- •12 Сегментный способ адресации в Windows
- •13 Страничная организация памяти в Windows
- •14.Алгоритм управления страницами
- •15. При выделении памяти необходимо учитывать следующие ограничения:
- •18. Механизмы работы с памятью. Использование виртуальной памяти.
- •19. Механизмы работы с памятью. Отображение файлов на память.
- •20. Механизмы работы с памятью. Использование «кучи».
- •21. Исследование виртуальной памяти. Системная информация.
- •22. Исследование виртуальной памяти. Статус виртуальной памяти.
- •23. Исследование виртуальной памяти. Определение состояния адресного пространства.
- •25 Компоненты файловой системы
- •26 Монтирование и демонтирование файловой системы
- •Функциональные свойства fat
- •28 Ntfs
- •29 Поняття планування та диспетчеризації.
- •30 Алгоритм циклічного планування процесів.
- •31 Алгоритм пріоритетного планування процесів.
- •32 Алгоритм планування процесів з кількома чергами.
- •33 Алгоритм адаптивно-рефлекторного планування процесів.
- •34. Поняття політики планування процесів.
- •35. Класифікація процесів з погляду планування.
- •36. Поняття процесу. Пріоритети, порядок створення та завершення
- •37. Завдання. Обмеження, створення, статистична інформація.
- •38. Поняття потоку. Створення, призупинення, поновлення та завершення потоків.
- •39. Життєвий цикл процесу. Стан процесу. Переключення станів.
- •40. Абстрактне визначення та контекст процесу. Відносини між процесами.
- •41) Критичний ресурс. Критична секція. Використання спільної змінної.
- •42) Критичний ресурс. Критична секція. Почергове виконання критичної секції.
- •43) Критичний ресурс. Критична секція. Алгоритм Деккера.
- •44) Поняття синхронізації. Виявлення та запобігання тупиків (блокувань).
- •45) Синхронізація потоків. Функції та використання моніторів.
- •46) Синхронізація. Поняття та використання семафора для критичної секції.
- •53. Понятие параллельного исполнения.
- •57. Назовите и охарактеризуйте структуру сетевых операционных систем.
- •58. Взаимодействий компонентов ос при взаимодействии компьютеров в сети.
4 Архитектура компьютерной системы Windows nt
Использована концепция микроядра. Согласно концепции ОС разделена на несколько подсистем, каждая из которых выполняет отдельный набор сервисных функций. Каждый из наборов реализован в пользовательском режиме, при этом выполняется цикл проверки запросов от клиента на одну из сервисных функций. В качестве клиента может выступать другой компонент ОС или другая программа (прикладная). Клиент запрашивает сервис, посылая определенное сообщение на сервер. Ядро ОС, работая в привилегированном режиме, доставляет сообщение клиента необходимому сервису, сервис выполняет необходимую операцию, а ядро возвращает результаты операции клиенту с помощью другого сообщения. Структурно Windows NT состоит из двух крупных частей, которые работают: в режиме пользователя первый, а второй в режиме ядра. Та часть, которая работает в режиме ядра и содержит компоненты управления виртуальной памятью, объектами ввода-вывода, файловой системой, взаимодействием процессов, частично системой безопасности – называется наполнительной частью NT-executive. Другая часть ОС, которая работает в режиме пользователя, состоит из сервера – защищенные подсистемы. Каждый из сервисов выполняется в отдельном процессе, память его отделена от других процессов, систем управления виртуальными функциями и др. Эти подсистемы взаимодействуют путем отправки сообщений, проходящих через исполнительную часть. Исполнительная часть работает в пространстве ядра и никогда не сбрасывается на жесткий диск. Ядро выполняет планирование потоков защищенных подсистем, точно так же как поток обычных прикладных процессов. ТАБЛИЦА Системный интерфейс, Системные службы
Менеджер объектов
Менеджер процессов
Менеджер безопасности
Менеджер виртуальной памяти
Менеджер КЭШа
Менеджер plug&play
Менеджер энергопотребления
Менеджер конфигурации
Менеджер локального вызова процедур
Менеджер ввода-вывода
Интерфейс графических устройств Win32 (GDI).
Файловая система
Ядро Драйверы
Уровень аппаратной абстракции
Аппаратные средства компьютера
Менеджер объектов создает, удаляет, управляет объектами исполнительной части: абстрактные типы данных, которые используются для представления ресурсов компьютерной системы.
Функции: выделяет память для объектов; присоединяет объекту дескриптор безопасности (определяет право доступа и использование объекта); создает и управляет структурой каталога объекта, в котором хранятся имена объектов; создает дескриптор объекта и возвращает его к процессу, который вызывает данный объект.
Менеджер процессов и потоков создает и приостанавливает, возобновляет и завершает потоки и процессы, а также хранит информацию для системы. Менеджер безопасности контролирует правила защиты ресурсов компьютера. Менеджер виртуальной памяти обеспечивает процессам следующие функции: управление виртуальным адресным пространством; разделение памяти между процессами; защита виртуальной памяти одного процесса от других.
Механизмы защиты памяти:
Каждый механизм имеет собственное адресное пространство. Доступ к другим процессам запрещен на аппаратном уровне.
Наличие режимов ядра и пользователя. Потоки имеют доступ к системным данным - в режиме ядра. В режиме пользователя это запрещено.
Страничный механизм защиты – для каждой виртуальной страницы определяется набор признаков, в которых устанавливают разрешенные типы доступа в пользовательском режиме и в режиме ядра.
Защита памяти с использованием объектно-ориентированного подхода.
Монитор ссылок безопасности проверяет, разрешен ли доступ процессов к какому-либо объекту при каждом открытии процесса указателя на строку памяти.
Менеджер кэш-памяти – обеспечивает хранение в памяти недавно использовавшихся блок-дисков. Определяет, какие блоки в ближайшее время могут потребоваться, а какие нет. Взаимодействует с менеджером виртуальной памяти и файловой системой, причем, если используется несколько файловых систем – менеджер кэш-памяти должен их поддерживать.
Менеджер plug&play – в случаях обнаружения нового устройства при загрузке системы или при подключении устройства через систему USB данный менеджер получает сообщение нового устройства и устанавливает соответствующие драйвера. Менеджер энергопотребления – отключает устройства (монитор и диски), если к ним нет обращения некоторое время, отслеживает заряд и работу аккумулятора. Сообщает инфу пользователю.
Менеджер конфигураций – отслеживает состояние реестра, добавляет новее и ищет необходимые ключи.
Менеджер локального вызова процедур – обеспечивает взаимодействие между процессами и подсистемами. Механизм вызова локальных процедур является оптимизированным вариантом. Каждая подсистема устанавливает канал, через который могут связываться другие процессы.
Менеджер ввода-вывода, который представляет средства для выполнения операций, независящих от устройств. Файловые системы – NT драйвер, который выполняет файл–ориентированные запросы на ввод-вывод и преобразует их в вызовы обычных устройств.
GDI – управляет графическим изображением, поступающим на монитор, или принтер. Не зависит от типа мониторов и принтеров. Исполняется на нижних уровнях представленных ядром. Функции NT ядра: планирование процессов; обработка прерываний и исключающих ситуаций; синхронизация процессов; восстановление системы после сбоев. Ядро работает в привилегированном режиме и никогда не удаляется из памяти, обратиться к ядру можно только с использованием механизмов прерывания. Ядро находится на уровне аппаратных абстракций, в котором расположено большинство машинно-зависимых функций. Знание архитектуры ОС является основой практических навыков разработки эффективных приложений. В архитектуре процессоров intel386, а тем более в поздних версиях, для защиты кода и данных, как от случайного, так и преднамеренного изменения, предусмотрено 4 уровня привилегий; Windows использует 2 уровня
Режим ядра – наиболее привилегированный режим; программы, выполняющиеся в этом режиме, имеют доступ ко всему аппаратному обеспечению и памяти компьютера. Режим пользователя – менее привилегирован, не обеспечивает прямой доступ к архитектуре. Ограничен, выделенным ему, адресным пространством от программ. Для вызова системных сервисов используется интерфейс прикладного программирования (API -интерфейс)
