Способы организации многозадачных ОС

2. Способы реализации многозадачных операционных систем:

1) кооперативная многозадачность

В оперативной памяти находится несколько процессов. Один из них – в состоянии активности, ряд процессов в состоянии готовности. Активный процесс сам принимает решение о том, когда он передает управление другому процессу или операционной системе.

2) вытесняющая многозадачность

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

Для вытесняющей многозадачности существуют 3 стратегии планирования:

1) отдавать предпочтение более коротким процессам,

2) по возможности заканчивать вычисления в том же порядке, в каком они были начаты,

3) предоставлять всем пользователям (процессам пользователей) одинаковое время ожидания.

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

Системные процессы выступают в роли обслуживающих процессов (серверные). В Windows (NT) существуют 32 приоритета. Приоритет присваивается операционной системой при создании процесса. Первые 16 приоритетов – для пользовательских процессов, остальные – для системных процессов.

Перевод «в фон» снижает приоритет потока. Поток может иметь приоритет ±2 к приоритету процесса.

В OS/2 есть 4 класса приоритетов в каждом классе 32 приоритета (всего 128):

1)

 
 

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

2) серверный класс, к которому относятся задачи, представляющие собой элементы определенной системы.

3) регулярный (стандартный) класс, включающий все пользовательские задачи.

4) остаточный класс, который получает время, когда в очереди нет других классов.

Внутри каждого класса карусельная обработка.

25.. Диспетчеризация задач со статическими приоритетами Другим классом динамических алгоритмов являются динамические алгоритмы планирования со статическими приоритетами. Напомним, что принцип работы любого планировщика на основании приоритета состоит в том, что в каждый момент времени исполняется та задача, которая имеет наивысший приоритет. В случае динамических планировщиков со статическими приоритетами задач приоритет задачи, будучи однажды ей назначен, не изменяется с течением времени. Приводимые далее способы назначения приоритетов ориентированы на системы периодических задач.

Существует 2 распространенных способа назначения приоритетов:

· RMS (rate monotonic scheduling). Правило назначения приоритетов таково: чем меньше период задачи, тем выше у нее приоритет. Иными словами, чем чаще (отсюда rate) задача переходит в состояние готовности, тем ее приоритет выше.

· DMS (deadline monotonic scheduling). В этом алгоритме приоритеты назначаются по немного другому правилу: чем меньше относительный крайний срок задачи, тем выше ее приоритет.

Эти алгоритмы неоптимальны, так как при определенных условиях могут привести к превышению дедлайна, однако ввиду их относительной простоты именно они чаще используются в системах реального времени


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: