ВЗАИМОДЕЙСТВИЕ И УПРАВЛЕНИЕ ПРОЦЕССАМИ
Понятие "программа" – недостаточно мощное понятие для описания операционных систем, однако детальное исследование программ позволяет выделить ряд важных концепций, которые проясняют принципы построения операционных систем.
При выполнении программ явно выделяются три объекта:
· последовательность команд или процедура, которая определяет
программу;
· процессор, который выполняет процедуру;
· среда, т. е. та часть окружающего мира, которую процессор может непосредственно воспринимать или изменять.
К среде относятся, например, память, универсальные и управляющие регистры ЭВМ, поскольку они могут и восприниматься, и изменяться
программой.
Можно выделить следующие свойства программы:
* операции, заданные процедурой, выполняются строго последовательно, т. е. следующий шаг не начинается, пока предыдущий полностью не завершится (из определения программы мы исключаем любой процесс, содержащий совмещение операций);
* среда полностью управляется программой, а следовательно, и изменяется только в результате шагов, выполненных программой;
* время выполнения операций, а также временной интервал между выполнением операций не имеют отношения к выполнению программы. Естественно, здесь мы не учитываем, что вся программа должна быть выполнена за разумный интервал времени;
* совершенно не имеет значения, выполняется ли программа целиком на одном процессоре, лишь бы не изменялась среда программы.
Программа в силу указанных свойств предполагает отсутствие внешнего воздействия на ее выполнение. Хорошим приближением такого рода программ являются программы, написанные на языках высокого уровня. Важное свойство таких программ – возможность точного повторения их работы, если только она не имеет доступа к часам реального времени.
Программы, удовлетворяющие указанным свойствам, не могут быть операционными системами, ибо:
* предполагается, что операционная система эффективно использует все ресурсы компьютера, а это требует совмещения операций различных компонент;
* ОС отвечает на поступающие запросы за определенное время, а так как они поступают произвольным образом, то последовательность операций определяется не только самой системой.