Основной задачей любой операционной системы является  управление процессами. Операционная система должна распределять между ними  ресурсы, предоставлять им возможность совместно использовать информацию и  обмениваться ею, защищать ресурсы, используемые одним процессом, от их  использования другими процессами, а также обеспечивать возможность синхронной  работы процессов. Для этого операционная система должна поддерживать для  каждого процесса свою структуру данных, в которой задается состояние данного  процесса и указываются ресурсы, которыми он владеет. Это позволяет операционной  системе осуществлять управление процессами.
  В многозадачной однопроцессорной системе несколько  различных процессов могут выполняться, чередуясь один с другим. В многопроцессорной  системе несколько процессов могут не только чередоваться, но и выполняться  одновременно. Эти типы параллелизма вызывают массу сложных проблем, с которыми  сталкивается как создающий приложение программист, так и операционная система.
  Во многих современных операционных системах положение с  управлением процессами усложняется введением понятия потока. В многопоточной  системе принадлежность ресурсов остается атрибутом процесса, в то время как  сам процесс представляет собой множество параллельно выполняющихся потоков.
Архитектура операционной системы должна удовлетворять  определенным требованиям. Все многозадачные операционные системы используют концепцию  процесса — начиная с однопользовательских операционных систем, таких, как  Windows 98, и заканчивая операционными системами для мейнфреймов, таких, как  OS/390, которые способны поддерживать работу тысяч пользователей. Таким  образом, основные требования, которым должны удовлетворять операционные  системы, могут быть сформулированы с использованием понятия процесса.
  Операционная система должна чередовать  выполнение нескольких процессов, чтобы повысить степень использования  процессора при обеспечении разумного времени отклика.
  Операционная система должна распределять ресурсы  между процессами в соответствии с заданной стратегией (т.е. предоставляя  определенным функциям или приложениям более высокий приоритет), избегая в то же  время взаимоблокировок.1
  От операционной системы может потребоваться  поддержка обмена информацией между процессами, а также обеспечение возможности  создания процессов пользователями. Обе эти возможности могут помочь в  структурировании приложений.
Подробное изучение операционных систем мы начнем со  знакомства с представлением процессов и управлением ими. Для начала рассмотрим  возможные состояния процессов, характеризующие их поведение; затем перейдем к  структурам данных, которые нужны операционной системе для представления состояния  и других характеристик процессов. И, наконец, будет рассмотрено управление  процессами в операционной системе UNIX SVR4.