- •Классификация и характеристика программного обеспечения
- •Назначение, классификация системного программного обеспечения. Требования к спо
- •Формирование целостного представления о назначения организации сис по.
- •Овладение методами и инструментами: настройки, откладки, диагностики и защиты программных систем.
- •Назначение, функции и основные качества операционных систем. Требования к современным ос
- •Поколения операционных систем и их классификация
- •Функциональные компоненты операционных систем: подсистема управления ресурсами
- •1.1. Управление процессами
- •1.2. Управление памятью
- •1.3. Управление файлами и внешними устройствами
- •Функциональные компоненты операционных систем: подсистема управления задачами
- •2.1. Защита данных и администрирование
- •2.2. Интерфейс прикладного программирования
- •2.3. Пользовательский интерфейс
- •Архитектура операционных систем: ядро и вспомогательные модули ос
- •Модулями ос
- •Архитектура операционных систем: ядро в привилегированном режиме
- •В привилегированном режиме
- •К привилегированному ядру
- •Архитектура операционных систем: многослойная структура ос
- •Типовые средства аппаратной поддержки операционных систем
- •Концепция, преимущества и недостатки микроядерной архитектуры
- •Пространство
- •Мультипрограммирование. Реализация в системах пакетной обработки
- •Ввода-вывода
- •В мультипрограммной системе (б)
- •Мультипроцессорная обработка: сущность и характеристика
- •Понятия «процесс» и «поток», операции над процессами в мультипрограммных системах
- •Планирование и диспетчеризация потоков в мультипрограммных системах
- •Состояния потока в мультипрограммных системах
- •Вытесняющие и невытесняющие алгоритмы планирования
- •Алгоритмы планирования, основанные на квантовании
- •Алгоритмы планирования, основанные на приоритетах
- •Синхронизация процессов и потоков: цели и средства синхронизации
- •Синхронизация процессов и потоков: гонки и тупики
- •Синхронизация процессов и потоков: критическая секция, блокирующие
- •Синхронизация процессов и потоков: использование семафоров
- •Синхронизация процессов и потоков: синхронизирующие объекты ос
- •Функции операционных систем по управлению памятью
- •Управление памятью: виртуальное адресное пространство и виртуальная память
- •Алгоритмы распределения памяти: распределение памяти фиксированными разделами
- •Алгоритмы распределения памяти: распределение памяти динамическими разделами, перемещаемые разделы
- •Управление памятью: страничное распределение
- •Управление памятью: сегментное распределение
- •Управление памятью: сегментно-страничное распределение
- •Мультипрограммирование на основе прерываний: диспетчеризация и приоритезация прерываний в ос
- •Мультипрограммирование на основе прерываний: системные вызовы
- •Управление вводом-выводом в операционной системе: основные понятия и концепции организации ввода/вывода
- •Режимы управления вводом/выводом. Основные системные таблицы ввода/вывода
- •2.1. Режимы управления вводом/выводом
- •2.2. Основные системные таблицы ввода-вывода
- •Управление вводом-выводом в операционной системе: кэширование операций ввода/вывода при работе с накопителями на магнитных дисках
- •Управление файлами: общий принцип работы операционной системы с файлами
- •Управление файлами: общая характеристика файловых систем (fat, fat32 и ntfs)
- •2.1. Файловая система fat
- •2.2. Файловые системы vfat и fat32
- •3. Файловая система ntfs
- •3.1. Структура тома с файловой системой ntfs
- •3.2. Возможности файловой системы ntfs по ограничению
- •Сетевые и распределенные операционные системы
- •Функциональные компоненты сетевой операционной системы
- •Одноранговые и серверные сетевые операционные системы
- •Интерфейс прикладного программирования (api)
- •1.1. Принципы построения интерфейсов ос
- •1.2. Варианты реализации функций api
- •1). Реализация функций api на уровне ос
- •2). Реализация функций api на уровне системы программирования
- •3). Реализация функций api с помощью внешних библиотек
- •Платформенно-независимый интерфейс posix
- •Технологии программирования сом
Мультипрограммирование. Реализация в системах пакетной обработки
Важнейшая функция ОС – организация рационального использования всех её аппаратных информационных ресурсов.
Мультипрограммирование или многозадачность (multitasking) – это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются сразу несколько программ.
Мультипрограммирование призвано повысить эффективность использования вычислительной системы, но эффективность может пониматься по-разному.
Критерии эффективности вычислительных систем:
- пропускная способность – количество задач, выполняемых вычислительной системой в единицу времени;
- удобство работы пользователей;
- реактивность системы – способность системы выдерживать заранее заданные (возможно, очень короткие) интервалы времени между запуском программы и получением результата.
В зависимости от выбранного критерия все мультипрограммные ОС на 3 класса:
ОС пакетной обработки
ОС разделения времени
ОС реального времени
Мультипрограммирования в системах пакетной обработки.
В этом случае главное целью является минимизация простоя всех устройств компьютера и прежде всего процессора
Системы пакетной обработки предназначены для решения задач в основном вычислительного характера
Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, т.е. решение максимального числа задач в единицу времени
В системах пакетной обработки используется следующая схема функционирования:
в начале работы формируется пакет заданий, каждое задание содержит требование к системным ресурсам;
из этого пакета заданий формируется мультипрограммная смесь, т.е. множество одновременно выполняемых задач.
При формировании ОС мультипрограммной смеси выбираются задачи и единицы работы программ, которые предъявляются разные требования к ресурсам. В этом случае обеспечивается возможность параллельная работа ресурсов, а, следовательно, уменьшается время простоя.
Совмещение по времени работы программ может быть достигнуто разными способами в зависимости от типа вычислительной системы.
Рис. 1. Параллельное выполнение вычислений и операций
Ввода-вывода
Рис. 1а – показан 1й способ, характерен для высокопроизводительный ВС (майнфрейм).
Рис. 1б – поясняется другой способ совмещения по времени операций, характерный для обычных ВС с контролерами ввода-вывода.
В этом случае, максимальный эффект ускорения достигается при наиболее полном перекрытии вычислений и ввода-вывода.
В случае, когда процессор выполняет только одну задачу, степень ускорения зависит от природы данной задачи и от того, насколько тщательно был выявлен возможный параллелизм при её программировании:
В задачах, в которых преобладают либо вычисления, либо ввод-вывод, ускорение почти отсутствует.
Параллелизм невозможен также, когда для продолжения вычислений необходимо завершение операции ввода-вывода.
Если же в системе выполняются одновременно несколько задач, появляется возможность совмещения вычислений одной задачи с вводом-выводом другой.
Рис.2.
Рис. 2. Время выполнения двух задач: в однопрограммной системе (а),
