- •Программное обеспечение. Типы по. Понятия и определения.
- •Определение и функции ос. Классификация ос. Критерий эффективности ос.
- •Эволюция ос. Основные этапы развития ос.
- •Классификация ос. Особенности алгоритмов управления ресурсами. Особенности аппаратных платформ.
- •Классификация ос. Особенности областей использования. Системы пакетной обработки. Системы разделения времени. Системы реального времени.
- •Особенности методов построения ос. Монолитное ядро или микроядерный подход. Объектно-ориентированного подход. Наличие нескольких прикладных сред. Распределенная организация.
- •Сетевые операционные системы. Структура сетевой операционной системы. Технология клиент-сервер.
- •Управление локальными ресурсами. Управление процессами. Состояние процессов.
- •Управление процессами. Контекст и дескриптор процесса.
- •Управление процессами. Алгоритмы планирования процессов.
- •Управление процессами. Вытесняющие и невытесняющие алгоритмы планирования.
- •Управление процессами. Средства синхронизации и взаимодействия процессов. Проблема синхронизации. Критическая секция.
- •15. Управление памятью. Типы адресов. Виртуальное адресное пространство.
- •16. Методы распределения памяти без использования дискового пространства. Распределение памяти фиксированными разделами. Распределение памяти разделами переменной величины.
- •17. Методы распределения памяти без использования дискового пространства. Перемещаемые разделы. Понятие виртуальной памяти.
- •18. Методы распределения памяти с использованием дискового пространства. Страничное распределение. Сегментное распределение.
- •19. Методы распределения памяти с использованием дискового пространства. Странично-сегментное распределение. Свопинг.
- •Методы распределения памяти с использованием дискового пространства. Странично-сегментное распределение. Свопинг.
- •Иерархия запоминающих устройств. Принцип кэширования данных. Кэш-память.
- •Репликация. Точная репликация. Ленивая репликация. Репликация, использующая группу.
- •Архитектура Windows nt систем. Понятие микроядерной архитектуры. Реалии работы ядра. Исполняемая и аппаратная часть Windows nt.
- •Архитектура Windows nt систем. Пользовательские процессы. Алгоритмы планирования процессов.
- •Менеджер памяти и управление памятью в Windows nt. Организация виртуальной памяти. Этапы размещения и замещения.
- •Архитектура Windows nt систем. Уровень абстракции от оборудования. Драйверы устройств. Уровни запросов прерываний.
- •Использование службы терминалов (Terminal Services) в сетях Microsoft. Функции удаленного администрирования. Сервер приложений.
- •Службы именования ресурсов. Доменный подход. Основной и резервные контроллеры домена.
- •Службы Internet Information Services. Приложения iis. Безопасность web-приложений.
- •Системные службы ос Windows, их назначение и конфигурирование.
- •Файловые системы. Fat, fat32, ntfs. Достоинства и недостатки.
- •Файловая система fat. Версии fat. Стандарт «8.3». Ограничения файловой системы fat. Недостатки fat. Сравнение с ntfs.
- •Файловая система ntfs. Средства разграничения доступа. Mft и его структура. Метафайлы. Шифрование и сжатие файлов. Ограничения ntfs. Сравнение с fat.
- •Алгоритм шифрования des (Data Encryption Standart) и его модификации (на примерах). Область применения, понятие криптостойкости.
- •Алгоритм шифрования rsa (rsa - Rivest, Shamir and Aldeman) и его модификации (на примерах). Область применения, понятие криптостойкости.
- •Безопасность в сети. Общая характеристика компьютерных «правонарушений». Сущность атак типа «отказ в обслуживании» (Denial Of Services).
- •DoS атаки - «отказ в оборудовании». Основные типы DoS атак, их характеристика. Уязвимость nt систем. «Слабые» места системы безопасности ос.
- •39. Брандмауэры и системы защиты Windows систем. Концепция безопасной работы в сети Интернет. Концепция безопасной работы. Фильтрация протоколов и портов. Прикладные шлюзы.
- •40. Unix системы. Краткая историческая справка. Архитектура ос unix (на основе сравнения с архитектурой Windows nt).
- •41. Структура ядра unix-системы. Основные принципы управления процессами и памятью. Подсистема ввода-вывода.
- •42. Алгоритмы архивации данных. Сжатие способом кодирования серий (rle). Алгоритм Хаффмана.
- •43. Алгоритмы архивации данных. Арифметическое кодирование. Алгоритм Лемпеля-Зива-Велча (Lempel-Ziv-Welch - lzw) и модификации.
- •44. Серверные системы unix. Характеристика и основные типы bsd-систем. Принципы построения архитектуры и ядра системы. Основные отличия и сравнительные характеристики.
- •Вытесняющую многозадачность
- •Многопользовательский доступ
- •Страничная организация виртуальной памяти (vm)
15. Управление памятью. Типы адресов. Виртуальное адресное пространство.
Распределению подлежит вся оперативная память, не занятая операционной системой. Обычно ОС располагается в самых младших адресах, однако может занимать и самые старшие адреса. Функциями ОС по управлению памятью являются: отслеживание свободной и занятой памяти, выделение памяти процессам и освобождение памяти при завершении процессов, вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти не достаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место, а также настройка адресов программы на конкретную область физической памяти.
Для идентификации переменных и команд используются символьные имена (метки), виртуальные адреса и физические адреса.
Символьные имена присваивает пользователь при написании программы на алгоритмическом языке или ассемблере.
Виртуальные адреса вырабатывает транслятор, переводящий программу на машинный язык. Так как во время трансляции в общем случае не известно, в какое место оперативной памяти будет загружена программа, то транслятор присваивает переменным и командам виртуальные адреса, обычно считая по умолчанию, что программа будет размещена, начиная с нулевого адреса. Совокупность виртуальных адресов процесса называется виртуальным адресным пространством. Каждый процесс имеет собственное виртуальное адресное пространство. Максимальный размер виртуального адресного пространства ограничивается разрядностью адреса.
Физические адреса соответствуют номерам ячеек оперативной памяти, где в действительности расположены или будут расположены переменные и команды. Переход от виртуальных адресов к физическим может осуществляться двумя способами. В первом случае замену виртуальных адресов на физические делает специальная системная программа - перемещающий загрузчик. Перемещающий загрузчик на основании имеющихся у него исходных данных о начальном адресе физической памяти, в которую предстоит загружать программу, и информации, предоставленной транслятором об адресно-зависимых константах программы, выполняет загрузку программы, совмещая ее с заменой виртуальных адресов физическими.
Второй способ заключается в том, что программа загружается в память в неизмененном виде в виртуальных адресах, при этом операционная система фиксирует смещение действительного расположения программного кода относительно виртуального адресного пространства. Во время выполнения программы при каждом обращении к оперативной памяти выполняется преобразование виртуального адреса в физический. Второй способ является более гибким, он допускает перемещение программы во время ее выполнения, в то время как перемещающий загрузчик жестко привязывает программу к первоначально выделенному ей участку памяти. Вместе с тем использование перемещающего загрузчика уменьшает накладные расходы, так как преобразование каждого виртуального адреса происходит только один раз во время загрузки, а во втором случае - каждый раз при обращении по данному адресу.