Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции БОС_Магданов.docx
Скачиваний:
10
Добавлен:
01.03.2025
Размер:
460.85 Кб
Скачать

2.Основные классы задач операционной системы.

На задачи ОС влияет прикладное и локальное назначение.

По прикладному назначению систему делятся на:

  1. Системы реального времени (СРВ).

  2. Системы оперативной обработки (СОО).

  3. Системы прикладного обеспечения (СПО).

По локальному назначению:

  1. Автономные системы.

  2. Сетевые системы.

Безусловно, уровень назначения и локализация влияют на подход решения основных задач ОС, как собственно и аппаратура.

Для решения основных задач ОС применяется, как правило, следующий подход:

Каждая задача разделяется на классы, с каждым из которых связываются методы решения задач, которые в литературе по операционным системам получили устоявшиеся названия: режимы работы, дисциплины и т.д.

Рассмотрим основные классы задач:

Задача управления потоком прикладных задач. Такой поток может быть однопрограммным и многопрограммным.

Однопрограммный поток может обрабатываться в двух режимах – режиме непосредственного доступа (командная строка DOS) и режиме пакетной обработки.

Режим пакетной обработки - задача или задачи формируются в виде некоторого задания (пакета) на внешнем носителе. Такой пакет включает в себя специальные команды или операторы, а также часть, которая даёт ему информацию об управлении системой.

Многопрограммный режим связан с обработкой набора пакетов заданий. По окончанию ввода первого пакета ОС сразу начинает его обработку, не дожидаясь ввода второго и последующих пакетов. Задания, принадлежащие одному пакету, выполняются последовательно, разные – параллельно, при этом передача ресурсов между пакетами, входящими в набор осуществляется по мере их освобождения.

Кроме того, многопрограммный режим может осуществляться в режиме разделения времени. Главное отличие – это предоставление каждой задаче или пользователю ресурсов ЭВМ в течение ограниченного кванта времени. По его истечению ресурсы передаются другой задаче и т.д.

Можно выделить подкласс задач, определяющих порядок обслуживания задач в многопрограммном режиме.

Здесь мы можем выделить два важнейших компонента:

  1. Режимы обслуживания.

  2. Дисциплины обслуживания.

Режимом обслуживания называется правило отбора заявок на обслуживание. Их делят на три основных вида:

  1. Одиночный отбор заявок.

  2. Групповой отбор заявок (выбирается группа заявок определенного типа).

  3. Смешанный режим.

Дисциплиной обслуживания называется правило отбора заявок при заданном режиме обслуживания. Для каждого из режимов может быть применена одна из трех дисциплин:

  1. Бесприоритетного обслуживания.

  2. Обслуживание с приоритетом.

  3. Обслуживание по расписанию.

Основные бесприоритетные дисциплины следующие: Обслуживание в порядке поступления (FIFO – First In First Out), в обратном порядке (LIFO – Last In First Out) и в случайном порядке.

Если же требуется, чтобы заявки имели приоритет, применяются следующие основные дисциплины:

  1. Обслуживание с относительным приоритетом – приоритет заявки влияет только на ее место в очереди.

  2. Обслуживание с абсолютным приоритетом, когда приоритетная заявка получает преимущество не только перед очередью, но и перед заявкой уже находящейся на обслуживании.

  3. Со смешанным приоритетом – 1 и 2 применяются одновременно.

  4. С динамическим приоритетом – значение приоритета заявок может измениться, расти, по мере их нахождения в очереди.

  5. Обслуживание по расписанию использует заданные временные интервалы.

Совершенно очевидно, что важнейшую роль среди всех задач ОС играют задачи и алгоритмы их решения при управлении локальными ресурсами: Центральный процессор, вход-выход, контроллер (управляющее устройство) и важнейшим из них является центральный процессор (ЦП).

По способу использованного алгоритма управления процессора мы можем разделить ОС на: однозадачные и многозадачные, однопользовательские и многопользовательские, однопроцессорные и многопроцессорные, безнитевые (обычные) и поддерживающие нитевую обработку.

Рассмотрим их по порядку.

Однозадачные очевидно предоставляют пользователю наиболее удобную виртуальную машину, как средство управления перифериями, файлами, процессором.

Многозадачные ОС помимо этого управляют разделением совместно используемых ресурсов процессора, файлов, периферий.

Однопользовательский режим очевиден и понятен.

Многопользовательский режим отличается появлением средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Стоит отметить, что не всякая многозадачная система является многопользовательской и не всякая однопользовательская – однозадачной.

В многозадачности нужно отметить вытесняющую и не вытесняющую многозадачность. Основные отличия между ними – степень централизации механизмов планирования процессов. При вытесняющей многозадачности механизм планирования целиком сосредоточен в ОС. Во втором случае, при не вытесняющей многозадачности происходит распределение между системой и прикладными программами. В последнем случае активный процесс выполняется до тех пор, пока сам не отдаст управление операционной системе.

Однопроцессорная система рассматривает процесс как ресурс (многозадачные, мультипрограммные).

В Многопроцессорной системе у нас возникает новая задача – мультипроцессирование.

Классификация по способу организации вычислительного процесса в многопроцессорной системе:

  1. Ассиметричный способ.

  2. Симметричный способ.

В первом случае ОС целиком выполняется на каком-нибудь одном процессоре, распределяя по другим прикладные задачи.

Во втором случае ОС полностью децентрализована и выполняется на каждом процессоре, который можно рассматривать как самостоятельную вычислительную систему.

Архитектура (железо) вычислительной машины также оказывает влияние на архитектуру ОС.

По типу аппаратуры мы может различать ОС персональных компьютеров, миникомпьютером, мэйнфрэймов, супер ЭВМ, кластеров и сетей ЭВМ, ОС мобильных устройств.

ОС большой машины существенно отличается от ОС малой ЭВМ, хотя бы потому, что количество ресурсов, задач и т.д. значительно выше в первом случае.

Наряду с этим существует попытка снять влияние железо на ОС и обеспечить ее максимальную переносимость с одной платформы на другую, т.е. создать мобильную ОС. Общий подход: выделяется часть ОС, зависящая от архитектуры, которая переписывается (адаптируется) при переносе системы. Такой принцип реализован в OC Unix и в ее клонах.

Последняя задача – это задача реализация ядра ОС и его оболочки, т.е. по сути дела – задача определения внутренней структуры ОС. Первый способ построения ядра системы – это его построение в виде монолитного ядра. В этом случае это одна программа, работающая в самом привилегированном режиме и обеспечивающая быстрые процедуры переходы с одной задачи на другую. Большинство ОС реализовано по принципу монолитного ядра.

Вторым способом является построения ОС на базе микроядер. Каждое микроядро определяет минимум функций по управлению ресурсами, а функции более высокого уровня выполняются специальные компоненты ОС: серверы, работающие в пользовательском режиме. При этом конечно мы теряем эффективность с точки зрения времени, но получаем более гибкую систему, которую можно модифицировать, добавляя или исключая серверы, в т.ч. пользовательские серверы. Также серверы относительно легко защитить друг от друга.

Построение ОС на базе объектно-ориентированного подхода дает возможность использовать все его достоинства и перенести их с уровня приложений, на уровень ОС.

Существует прикладная среда, которая позволяет через серверную систему выполнить в рамках одной ОС приложение другой. Большинство ОС поддерживают одновременно прикладные среды MS-DOS, Windows, Unix, OC/2.

На основе разделения этих задач мы может произвести классификацию ОС.

Классификационный признак

Описание класса

  1. Мощность аппаратных средств

Персональные, мини, большие, супер ЭВМ

  1. Количество ЭВМ, обслуживаемых ОС

Автономные, многомашинные, сети локальные и глобальные

  1. Тип обработки

Оперативная обработка, пакетная обработка, реального времени

  1. Режим обработки

Однопрограммный, мультипрограммный, разделение времени

  1. Режим обслуживания заявок

Одиночный отбор, групповой отбор, смешанный отбор

  1. Дисциплина обслуживания заявок

Без приоритетов, с приоритетом

Завершая рассмотрение вычислительной системы, мы должны рассмотреть интерфейс, определяющий взаимодействие системы с человеком.

Интерфейс – это стандартный набор правил, обязательных при взаимодействии различных подсистем или уровней, применимых в сети ЭВМ. Этот набор правил взаимодействия в нашем случае набор правил взаимодействия ОС с пользователем.

С точки зрения безопасности ОС все интерфейсы могут быть разделены на два класса:

  1. Обычные интерфейсы, нейтральные по отношению к безопасности. Утечки возможны только на физическом уровне интерфейса. Пример – снятие изображения с экрана, подслушка и т.д.

  2. “Защищенные” интерфейсы, которые учитывают или могут учитывать индивидуальность человека-пользователя.

К обычным относятся командный интерфейс, пакетный, графический, простой и оконный.

Ко вторым относятся интерфейсы, основанные на распознавании речи, биометрические и семантические, последний из которых можно понимать как общение с вычислительной системой на “естественном” языке.