Разница между упреждающей и совместной многозадачностью
Многозадачность - это методология одновременного выполнения нескольких задач или процессов в течение определенного периода времени. Вытесняющая и кооперативная многозадачность - это два типа многозадачности.
В режиме вытесняющей многозадачности операционная система может инициировать переключение контекста с запущенного процесса на другой процесс. Другими словами, операционная система позволяет остановить выполнение текущего запущенного процесса и выделить ЦП другому процессу. ОС использует некоторые критерии, чтобы решить, как долго процесс должен выполняться, прежде чем разрешить другому процессу использовать операционную систему. Механизм принятия управления операционной системой от одного процесса и передачи его другому процессу называется вытеснением или вытеснением.
При совместной многозадачности операционная система никогда не инициирует переключение контекста с запущенного процесса на другой. Переключение контекста происходит только тогда, когда процессы добровольно передают управление периодически или когда они простаивают или логически заблокированы, чтобы позволить нескольким приложениям выполняться одновременно. Кроме того, в этой многозадачности все процессы взаимодействуют, чтобы схема планирования работала.
Давайте посмотрим на разницу между вытесняющей многозадачностью и совместной многозадачностью.
SR.NO. | Вытесняющая многозадачность | Совместная многозадачность |
---|---|---|
1 | Вытесняющая многозадачность - это задача, используемая ОС, чтобы решить, как долго задача должна выполняться, прежде чем разрешить другой задаче использовать ОС. | Кооперативная многозадачность - это тип многозадачности компьютера, при котором операционная система никогда не инициирует переключение контекста с запущенного процесса на другой. |
2 | Он прерывает работу приложений и передает управление другим процессам, не зависящим от приложения. | В совместной многозадачности планировщик процессов никогда не прерывает процесс неожиданно. |
3 | Операционная система может инициировать переключение контекста с запущенного процесса на другой процесс. | Операционная система не инициирует переключение контекста с запущенного процесса на другой. |
4 | Вредоносная программа запускает бесконечный цикл, она наносит вред только себе, не затрагивая другие программы или потоки. | Вредоносная программа может остановить всю систему, ожидая или запустив бесконечный цикл и не отказываясь от управления. |
5 | Вытесняющая многозадачность заставляет приложения совместно использовать ЦП независимо от того, хотят они этого или нет. | В совместной многозадачности все программы должны взаимодействовать, чтобы это работало. Если одна программа не сотрудничает, это может перегружать процессор. |
6 | Операционные системы UNIX, Windows 95, Windows NT являются примерами вытесняющей многозадачности. | Операционные системы Macintosh OS версии 8.0-9.2.2 и Windows 3.x являются примерами совместной многозадачности. |