- •2) Архитектура и структура операционных систем: Прерывания, многозадачность.
- •3) Управление файлами: Структура файловой системы, контроль доступа.
- •1. Архитектура и структура операционных систем: Основные принципы построения операционных систем.
- •2. Общие понятия распределенных систем: Структура сетевых операционных систем и распределенных систем, сокет, middleware, технологии построения распределенных систем.
- •Управление памятью: Свопинг, оверлей.
- •1. Принципы построения операционных систем.
- •11. Принципы построения операционных систем.
- •1. Принцип модульности
- •2. Принцип функциональной избирательности
- •3. Принцип генерируемости ос
- •4. Принцип функциональной избыточности
- •5. Принцип виртуализации
- •6. Принцип независимости программ от внешних устройств
- •7. Принцип совместимости
- •8. Принцип открытой и наращиваемой ос
- •9. Принцип модульности (переносимости)
- •10. Принцип обеспечения безопасности вычислений
- •2. Архитектура и структура операционных систем: Системные вызовы, привилегированный режим, режим ядра, пользовательский режим, posix, ieee.
- •3. Управление вводом-выводом: Структура системы ввода-вывода, типичные функции hal.
- •1. Управление процессами и задачами: Генерирование событий, критическая секция.
- •2. Управление вводом-выводом: Буферизация, кэширование, спулинг.
- •3. Основы безопасности компьютерных систем: Виды угроз, атака, механизм и политика информационной безопасности, ее свойства.
- •1. Управление памятью: Линии, шины, магистрали, адресация.
- •2. Управление процессами и задачами: Мьютекс, семафор.
- •3. Управление файлами: Файл, типы файлов, файловая система, требования к устройствам хранения.
- •1. Управление вводом-выводом: Этапы развития системы ввода-вывода.
- •2. Архитектура и структура операционных систем: Монолитные и микроядерные операционные системы, архитектура "клиент-сервер".
- •3. Назначение и основные понятия операционной системы: Системное программное обеспечение и его классификация.
- •1. Управление файлами: Сектор, дорожка, цилиндр, блок, кластер, раздел, mbr.
- •2. Основы безопасности компьютерных систем: Формализация подхода к обеспечению информационной безопасности, требования c2 "оранжевой книги".
- •3. Архитектура и структура операционных систем: Вычислительный процесс, дескриптор процесса, диспетчер задач, поток.
- •1. Общие понятия распределенных систем: Понятие и характеристики распределенных систем, схемы объединения автономных систем в вычислительные сети.
- •2. Назначение и основные понятия операционной системы: ose/rm, api, eei, функций операционной системы.
- •3. Управление файлами: Логическая организация файла.
- •1)Основы безопасности компьютерных систем: Идентификация, авторизация, аутентификация, аудит.
- •2. Управление памятью: Виды методов распределения памяти с использованием внешней памяти.
- •17) Виды методов распределения памяти с использованием внешней памяти
- •1)Страничное распределение
- •2)Сегментное распределение
- •3) Странично-сегментное распределение
- •3. Управление файлами: Физическая организация файла.
- •1. Классификация операционных систем.
- •2. Управление памятью: Виды методов распределения памяти без использования внешней памяти.
- •3. Архитектура и структура операционных систем: Программные модули, многопоточность.
2. Архитектура и структура операционных систем: Системные вызовы, привилегированный режим, режим ядра, пользовательский режим, posix, ieee.
Интерфейс между операционной системой и программами пользователя определяется набором системных вызовов, представляемых операционной системой.
Для связи с операционной системой пользовательская программа должна сформировать системный вызов, который обеспечивает перевод системы в режим работы ядра и активизирует функции операционной системы. Это реализуется с помощью специальных команд вызывающих прерывание (программное прерывание). В результате выполнения таких команд происходит переключение режима работы процессора из пользовательского в режим ядра (привилегированный режим), и управление передается операционной системе.
После завершения работы системной программы, обслуживающей соответствующий системный вызов, восстанавливается пользовательский режим, и управление возвращается программе пользователя к команде, следующей за системным вызовом.
Системные вызовы, доступные в интерфейсе, могут отличать-ся друг от друга в различных операционных системах, хотя лежащая в их основе концепция практически одинакова.
В целях унификации программного интерфейса для различных реализаций (клонов) операционной системы UNIX был разработан интерфейс POSIX (Portable System Interface for Computing Environment - интерфейс переносимой операционной системы для вычислительной среды). Разработанный стандарт POSIX 1003.1-1988 определил интерфейс приложений (Application Programming Interface, API). Позже он был принят как стандарт IEEE 1003.1-1990. Наиболее современная версия стандарта POSIX в редакции 2003 г. является стандартом ISO/IES 9945. Этот стандарт нашел широкое применение во многих операционных системах, в том числе и с архитектурой, отличной от UNIX. Надо заметить, что он не делает различия между системными вызовами и библиотечными функциями, называя все элементы программного интерфейса просто функциями.
3. Управление вводом-выводом: Структура системы ввода-вывода, типичные функции hal.
Сверху вниз:
1)програмное обеспечение ввода-вывода уровня пользователя,
2)аппаратно-независимая часть подсистемы ввода-вывода ОС
3)драйверы устройств
4)обработчики прерываний
5)аппаратура
Два нижних уровня этой системы составляет аппаратуру: сами устройства, непосредственно выполняющие операции, и их контроллеры, служащие для организации совместной работы устройств и остальной вычислительной системы. Следующий уровень составляют драйвера устройств ввода-вывода, скрывающие от разработчиков операционных систем особенности функционирования конкретных устройств и обеспечивающие четко определенный интерфейс между аппаратурой и вышележащим уровнем - уровнем базовой (аппаратно-независимой) подсистемы ввода-вывода, которая, в свою очередь, предоставляет механизм взаимодействия между драйверами и целевыми программами.
(не обязательно) Вот перечень лишь нескольких направлений (далеко не полный), по которым различаются устройства:
скорость обмена данных может варьироваться в диапазоне от нескольких байт в секунду (клавиатура) до нескольких гигабайт в секунду (сетевые карты);
некоторые устройства могут быть использованы параллельно несколькими процессами (являются разделяемыми), в то время как другие требуют монопольного захвата процессом;
устройства могут запоминать выведенные данные для ее последующего ввода или не обладать этой функцией. Устройства, запоминающие данные, в свою очередь, могут дифференцироваться по формам доступа к сохраненным данным: обеспечивать к ней последовательный доступ в жестко заданном порядке или уметь находить и передавать только необходимую порцию данных;
часть устройств умеет передавать данные только по одному байту последовательно (символьные устройства), а часть устройств умеет передавать блок байтов как единое целое (блочные устройства);
существуют устройства, предназначенные только для ввода данных, устройства, предназначенные только для вывода данных, и устройства, которые могут совершать и ввод и вывод.
Hardware Abstraction Layer (HAL, Слой аппаратных абстракций) — слой абстрагирования, реализованный в программном обеспечении, находящийся между физическим уровнем аппаратного обеспечения и программным обеспечением, запускаемом на этом компьютере. HAL предназначен для скрытия различий в аппаратном обеспечении от основной части ядра операционной системы, таким образом чтобы большая часть кода, работающая в режиме ядра не нуждалась в изменении при её запуске на системах с различным аппаратным обеспечением. На персональных компьютерах HAL, по существу, может рассматриваться как драйвер материнской платы, позволяющий взаимодействовать инструкциям высокоуровневых языков программирования с низкоуровневыми компонентами, такими как аппаратное обеспечение.
БИЛЕТ №4