Операционная система не только предоставляет пользователям и программистам удобный интерфейс к аппаратным средствам компьютера, но и является механизмом, распределяющим ресурсы компьютера.
К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы данных, диски, накопители на магнитных лентах, принтеры, сетевые устройства и некоторые другие. Ресурсы распределяются между процессорами. Процесс (задача) представляет собой базовые понятие большинства современных ОС и часто кратко определяется как программа в стадии выполнения. Программа - это статический объект, представляющий собой файл с кодами и данными. Процесс - это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает "запустить программу на выполнение", то есть создать новую единицу вычислительной работы. Например, ОС может создать процесс в ответ на команду пользователя run prg1. exe, где prg1. exe - это время файла, в котором хранится код программы.
|
|
Во многих современных ОС для обозначения минимальной единицы работы ОС используют термин " нить", или "поток", при этом изменяется суть термина "процесс".
Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является назначением операционной системы.
Управление ресурсами включает решение следующих общих, не зависящих от типа ресурса задач:
- планирование ресурса - то есть определение, какому процессу, когда и в каком количестве (если ресурс может выделятся частями) следует выделить данный ресурс;
- удовлетворение запросов на ресурсы;
- отслеживание состояния и учет использования ресурса - то есть поддержание оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;
- разрешение конфликтов между процессами.
Для решения этих общих задач управления ресурсами разные ОС используют различные алгоритмы, особенности которых в конечном счете и определяют облик ОС в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс. Например, применяемый алгоритм управления процессором в значительной степени определяет, может ли ОС использоваться как система разделения времени, система пакетной обработки или система реального времени.