Подсистема управления процессами планирует выполнение процессов, то есть распределяет процессорное время между несколькими одновременно существующими в системе процессами, занимается созданием и уничтожением процессов, обеспечивает процессы необходимыми системными ресурсами, поддерживает синхронизацию процессов, а также обеспечивает взаимодействие между процессами.
Чтобы процесс мог быть выполнен, операционная система должна назначить ему область оперативной памяти, в которой будут размещены коды и данные процесса, а также предоставить ему необходимое количество процессорного времени.
Основные функции подсистемы управления процессами:
1) распределение процессорного времени между несколькими одновременно существующими в системе процессами;
2) создание и уничтожение процессов;
3) обеспечение процессов необходимыми системными ресурсами;
4) поддержка взаимодействия между процессами.
Обычно процесс представляется как совокупность двух следующих компонентов:
1) объект ядра, через который операционная система управляет процессом, и где хранится статистическая информация о процессе;
2) адресное пространство, в котором содержится код и данные всех модулей процесса.
Процессы инертны. Чтобы процесс что-нибудь выполнил, в нем нужно создать поток. Потоки отвечают за исполнение кода, который содержится в адресном пространстве процесса. Каждый процесс может владеть несколькими потоками, которые "одновременно" исполняют код в адресном пространстве процесса.
При создании процесса первый или первичный поток обычно создается системой автоматически.
Для каждого вновь создаваемого процесса ОС генерирует системные информационные структурыпроцесса, которые содержат данные о потребностях процесса в ресурсах вычислительной системы, а также о фактически выделенных ему ресурсах.