Лекция №5. Вычислительные процессы, задачи и ресурсы Цель лекции: ознакомиться
с
назначением
и
функциями
вычислительных процессов и задач, классификацией ресурсов и общей
схемой их выделения, с диаграммой состояний процесса и его дескрипторами,
а
также
с
основными
принципами
мультипрограммирования,
многопользовательского режима работы и режима разделения времени.
Последовательный процесс (задача – task) – это отдельная программа с
ее данными, выполняющаяся на последовательном процессоре (т.е. таком
процессоре, в котором текущая команда выполняется после завершения
предыдущей).
В современных процессорах для повышения скорости вычислений
возможно параллельное выполнение нескольких команд, что достигается
двумя основными способами – организацией конвейерного механизма выполнения команды и созданием нескольких конвейеров. Однако в подобных
процессорах обязательно достигается логическая последовательность в
выполнении команд, предусмотренная программой.
Концепция процесса предполагает два аспекта:
1) процесс является носителем данных;
2) процесс выполняет задачи, связанные с обработкой данных.
В качестве примеров процессов (задач) можно назвать прикладные
программы пользователей, утилиты и другие системные обрабатывающие
программы. Процессом может быть редактирование текста, трансляция
исходной программы, ее компоновка, исполнение. Трансляция какой-нибудь
исходной программы является одним процессом, а трансляция следующей
исходной программы – другим, т.к. транслятор выступает как одна и та же
программа, но обрабатываемые данные являются разными. Основная цель
процесса - выработать механизмы распределения и управления ресурсами.
Ресурсы – это многократно используемые, относительно стабильные и
часто недостающие объекты, которые запрашиваются, задействуются или
освобождаются в период их активности, т.е. всякий объект, который может
распределяться внутри системы. Ресурсы могут быть