Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по информатике.doc
Скачиваний:
28
Добавлен:
25.12.2018
Размер:
1.48 Mб
Скачать
    1. Многопоточность

Подчиняясь принципам построения вычислительных устройств, все подсистемы в компьютере управлялись центральным процессором. Выполняя последовательность операций, процессор вынужден был длительное время простаивать. Например, дожидаясь завершения операции обмена данными между внешним устройством и оперативной памятью. Большой эффективности удалось достичь, организовав мультипрограммный (мультизадачный) режим работы вычислительной системы. При мультизадачном режиме, пока одна задача ожидает завершения операций ввода/вывода, другая задача может быть поставлена на решение.

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

Вв

cpu

Задача А

Задача В

а)

Вв

cpu

Задача А

Вв

cpu

Задача В

б)

Рисунок 2 – Схема выполнения двух программ а – однопрограммный режим; б – мультипрограммный режим.

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

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

    1. Дескриптор

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

Дескриптор – описатель (задачи) процесса.

Дескриптор содержит:

  1. идентификатор процесса (process ID);

  2. тип или класс процесса (№ очереди);

  3. приоритет процесса (место в очереди);

  4. переменную состояния (выполнение, готовность к выполнению и др.);

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

  6. данные о ресурсах, которыми процесс владеет (указатели на открытые файлы, сведения о незавершенных операциях ввода/вывода и др.)

  7. место (или его адрес) для организации взаимодействия с другими процессами;

  8. параметры времени запуска;

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