Существует пять основных действий, которые операционная система должна поддерживать для управления запущенными процессами. Без этих пяти действий операционная система не смогла бы оставаться стабильной в течение длительного времени.
Создание процесса
Когда вы впервые включаете компьютер, операционная система открывает процессы для запуска служб для всего, от диспетчера очереди печати до обеспечения безопасности компьютера. Когда вы входите в систему и запускаете программы, они создают зависимые процессы. Процесс - это не сама программа, а скорее инструкции, которые ЦП использует для выполнения программы. Процесс принадлежит либо Windows, либо другой установленной вами программе.
Видео дня
Состояние обработки
Состояние процесса может быть «создан», «запущен», «ожидает» или «заблокирован». Можно сказать, что процесс "ожидает" момента после того, как вы запустите его родительскую программу, но до того, как она будет обработана ЦП. Процесс «запущен», когда его обрабатывает ЦП. Вы можете считать процесс «заблокированным», если на компьютере недостаточно памяти для его обработки или если файлы, связанные с процессом, не могут быть обнаружены. Во всех операционных системах есть какая-то система обработки процессов, хотя они имеют разные имена для каждого состояния.
Синхронизация процессов
После запуска процессов операционной системе необходим способ гарантировать, что никакие два процесса не будут обращаться к одним и тем же ресурсам одновременно. В частности, никакие два процесса не могут пытаться выполнить одну и ту же область кода одновременно. Если два процесса попытаются выполнить этот код одновременно, может произойти сбой, поскольку они попытаются одновременно вызвать одни и те же файлы и отправить одинаковые инструкции в ЦП. Если два процесса должны запускать один и тот же код, один должен дождаться завершения другого, прежде чем продолжить.
Связь процессов
Компьютер должен гарантировать, что процессы могут взаимодействовать с ЦП и друг с другом. Например, в программе может быть много процессов, и каждый процесс может иметь разный уровень разрешений. Уровень разрешений - это просто показатель уровня доступа, который процесс должен иметь к системе. Взаимодействие с процессами гарантирует, что компьютер может определять разрешения для каждого процесса. Это очень важно для предотвращения удаления вредоносными программами системных файлов или добавления инструкций в саму операционную систему.
Предотвращение тупиковых ситуаций
Наконец, у компьютера должен быть способ гарантировать, что процессы не зайдут в тупик. Тупиковая ситуация возникает, когда каждому из двух процессов требуется ресурс, который другой в настоящее время использует, и поэтому ни один процесс не может завершить то, что он делает. Ресурсы не могут быть освобождены, и программы блокируются. Вы также можете назвать эту ситуацию «циклическим ожиданием». Операционные системы предотвращают тупик в различных способов, но наиболее распространенный метод - заставить процесс объявить ресурсы, которые ему потребуются, прежде чем он сможет запускать. В качестве альтернативы, процесс может быть вынужден запрашивать ресурсы блоками, а затем освобождать ресурсы по мере их завершения.