Координирование действий машины

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

Понятие процесса

Одним из главных принципов, лежащих в основе современных операционных систем, является разделение понятий программы и деятельности по ее исполнению. Программа — это просто статический набор указаний, а выполнение программы — динамическая деятельность, свойства которой меняются во времени. Эта деятельность называется процессом (process). Текущее состояние деятельности называется состоянием процесса (process state). Это состояние включает участок программы, который в данный момент выполняется (значение в счетчике команд), а также значения других регистров центрального процессора и соответствующих ячеек памяти. Грубо говоря, состояние процесса — это моментальный снимок ресурсов машины в данное время. В разные моменты выполнения программы имеют место разные состояния процесса.

Различие между программой и процессом подчеркивается еще и тем фактом, что отдельная программа может быть одновременно связана с несколькими процессами. Например, в системе коллективного использования с разделением времени два пользователя могут одновременно редактировать разные документы. Оба действия используют одну и ту же программу редактирования текста, но каждому их них будет соответствовать отдельный процесс с собственным набором данных и скоростью протекания. В такой ситуации операционная система хранит в оперативной памяти только одну копию программы редактирования текста и позволяет каждому процессу использовать ее в течение определенного кванта времени.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: