Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС / Тема_2.ppt
Скачиваний:
202
Добавлен:
11.04.2015
Размер:
3.19 Mб
Скачать

2.1. Концепция процессов и потоков.

Задания, процессы, потоки (нити), волокна Основные понятия

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

При этом ОС «не знает» о смене волокон, так как все тот же поток продолжает работу.

21

Задание (JOB)

Процесс 1

Процесс 2

Поток 1

Поток 2

Поток k

Thread 1

Thread 2

Thread k

Процесс N

Объекты

 

Название

Описание

Задание

Набор процессов с общими

 

квотами и лимитами

Процесс

Контейнер для ресурсов и

 

потоков

Поток

Исполнение кода в процессе

Волокно

Облегченный поток,

Волокна (Fibers)

полностью управляемый в

 

пространстве пользователя

Операционные системы

22

 

2.2. Мультипрограммирование. Формы

многопрограммной работы

 

2.2.1. Мультипрограммирование в системах

 

пакетной обработки

 

 

Системы

пакетной

 

обработки

предназначаются для решения задач в

основном

вычислительного

характера,

не

требующих быстрого получения результатов.

Максимальная

пропускная

способность

компьютера достигается в этом случае

минимизацией простоев его устройств и,

прежде всего, процессора.

 

 

 

 

Операционные системы

 

 

23

 

 

 

 

2.2.1. Мультипрограммирование в системах пакетной обработки

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

Например, в такой смеси желательно присутствие задач вычислительного характера и с интенсивным вводом-выводом.

24

Операционные системы

2.2.1. Мультипрограммирование в системах пакетной обработки

Канал

Ввод - вывод

 

Канальная программа

t

 

 

 

 

 

Команда запуска

 

Сигнал завершения

 

 

 

операции ввода-вывода

 

 

канала

 

 

Центральный

 

 

 

 

 

 

 

 

 

 

 

процессор

В ы ч и с л е н и я

 

 

t

 

 

 

 

О п е р а ц и и в в о д а – в ы в о д а

Контроллеры

t

t

Центральный процессор

В ы ч и с л е н и я

25

Операционные системы

2.2.1. Мультипрограммирование в системах пакетной обработки

В компьютерах класса мэйнфреймов совмещение достигается благодаря наличию в машине специализированных процессоров ввода-вывода (каналов).

Ввод-вывод осуществляется одновременно с вычислениями в центральном процессоре, который «отвлекается» только для выдачи команд каналам и приема сигналов о завершении ввода-вывода.

26

Операционные системы

2.2.1. Мультипрограммирование в системах пакетной обработки

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

При этом время выполнения отдельной задачи может быть больше, чем при монопольном ее выполнении.

27

Операционные системы

 

 

 

 

Ta+Tb=11

 

 

 

 

 

Ta=6

 

 

 

Tb=5

 

 

 

A

2

2

A

2

B

3

B

1

t

 

 

 

В ы ч и с л е н и я

 

 

 

 

 

 

 

 

 

A

2

 

 

 

B 1

 

 

t

 

 

 

 

В в о д – в ы в о д

 

 

 

 

 

 

 

 

 

 

Ta+Tb= 8

Tb= 6

 

 

 

 

 

 

 

Ta= 7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A

2 B

 

3 A

2 B 1 В ы ч и с л е н и я

t

 

 

 

 

 

 

 

 

 

 

A

2

 

B 1

 

В в о д – в ы в о д

 

 

t

 

 

 

 

 

 

 

 

 

 

 

 

A 1

 

B 1

Готовность (ожидание процессора)

 

 

 

 

 

 

 

 

 

t

 

 

 

 

Операционные системы

 

 

28

 

 

 

 

 

 

 

2.2.2. Мультипрограммирование в системах разделения времени

В системах разделения времени

пользователям (в частном случае одному) предоставляется возможность интерактивной работы сразу с несколькими приложениями.

Для этого каждое приложение должно регулярно получать возможность «общения» с пользователем.

ОС принудительно периодически приостанавливает приложения, не дожидаясь, когда они «добровольно» освободят процессор.

29

Операционные системы

2.2.2. Мультипрограммирование в системах

разделения времени

Всем

приложениям

попеременно

выделяются

кванты

времени

процессора,

таким образом,

пользователи,

запустившие

программы

на

выполнение,

получают

возможность поддерживать с ними диалог со

своего терминала.

 

 

Если время кванта выбрано достаточно

небольшим, то у всех пользователей

складывается

 

впечатление

единоличной

работы на машине.

 

 

 

 

Операционные системы

30