пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Вопрос 29. Многозадачность. (§6.3)

Задачность - единица работы компьютерной системы, требующая выделения ресурсов.

Многозадачность – это способность системы выполнять одновременно несколько приложений.

Можно одновременно делать расчеты, печатать документ и играть в игру.

На самом деле процессор или ядро процессора каждый момент времени может решать только одну задачу. Для каждой задачи выделяется своя доля времени процессора.

У пользователя создается иллюзия одновременного решения задач.

Различают два вида многозадачности:

1)кооперативная

2)преемптивная.

В кооперативной многозадачности каждому приложению назначается приоритет. Задачи малого приоритета решаются во время простоя задачи большого приоритета (ожидание нажатия клавиши, чтение – запись на диск и др.). Каждая задача самостоятельно решает, когда отдать процессор другой задаче.

Задача большого приоритета может забрать себе все время процессора.

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

Приложения Windows способны порождать процессы.

Процесс – совокупность действий, которые могут выполняться независимо от других процессов. Например, можно открыть несколько окон и независимо обрабатывать несколько документов. За каждым окном закреплен процесс.

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

Деление процесса на потоки функция самого приложения, а порядок предоставления потокам процессорного времени осуществляется операционной системой.

Процесс состоит из потоков, в крайнем случае, из одного. Многозадачность Windows основана на способности ОС обрабатывать много потоков.

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

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

Есть две разновидности многопроцессорной обработки:

1) асимметричная

2) симметричная.

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

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

 


22.01.2014; 01:24
хиты: 58
рейтинг:0
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь