Квазіпараллельний виконання процесів

З точки зору зовнішнього спостерігача, в хорошій багатозадачного ОС відбувається одночасна, паралельна робота декількох процесів. Однак зрозуміло, що ця одночасність удавана. Насправді, якщо в системі працює лише один процесор, то в кожен момент часу він виконує команди, що відносяться тільки до одного з наявних процесів. Ілюзія паралельності створюється за рахунок того, що процеси змінюють один одного через малі інтервали часу, які людина-спостерігач не в силах відстежити. Подібна організація роботи називається квазіпараллельний виконанням процесів.

Зрозуміло, якщо в системі є декілька процесорів, то може бути організовано справжнє паралельне виконання процесів, кількість яких не перевищує кількості процесорів. При більшому числі процесів може використовуватися змішана організація, що поєднує дійсну паралельність і квазіпараллельний.

Важливо відзначити, що для більшості завдань взаємодії процесів немає різниці, якого роду паралельність використовується в даній ОС. Взагалі, основні проблеми управління процесами можна розбити на два рівні:

· Проблеми коректної та ефективної реалізації паралельного (тобто зазвичай квазіпараллельний) виконання процесів - це проблеми нижнього рівня;

· Проблеми коректної взаємодії паралельних процесів - це проблеми верхнього рівня, при розгляді яких вважається, що низькорівневі проблеми реалізації процесів так чи інакше вирішені.

Таке розбиття полегшує проектування і налагодження систем, а також дозволяє краще зрозуміти істота розглянутих проблем.