От эффективности алгоритмов управления локальными ресурсами компьютера во многом
зависит эффективность всей сетевой ОС в целом. Поэтому, характеризуя сетевую
ОС, часто приводят важнейшие особенности реализации функций ОС по управлению
процессорами, памятью, внешними устройствами автономного компьютера. Так, например,
в зависимости от особенностей использованного алгоритма управления процессором
операционные системы делят на многозадачные и однозадачные, многопользовательские
и однопользовательские, на системы, поддерживающие многонитевую обработку и
не поддерживающие ее, на многопроцессорные и однопроцессорные системы.
Поддержка многозадачности. По числу одновременно выполняемых задач операционные
системы могут быть разделены на два класса:
однозадачные (например, MS DOS, MSX);
многозадачные (ОС ЕС, OS/2, UNIX, Windows).
Однозадачные ОС в основном выполняют функцию предоставления пользователю виртуальной
машины, делая более простым и удобным процесс взаимодействия пользователя с
компьютером. Однозадачные ОС включают средства управления переферийными устройствами,
средства управления файлами, средства общения с пользователем.
Многозадачные ОС, кроме выполнения вышеперечисленных функций, управляют разделением
совместно используемых ресурсов, таких как процессор, оперативная память, файлы
и внешние устройства.
Поддержка многопользовательского режима. По числу одновременно работающих
пользователей ОС делятся:
на однопользовательские (MS DOS, ранние версии OS/2);
многопользовательские (UNIX, Windows).
Вытесняющая и невытесняющая многозадачность. Важнейшим разделяемым
ресурсом является процессорное время. Способ распределения процессорного
времени между несколькими одновременно существующими в системе процессами (или
нитями) во многом определяет специфику ОС. Среди множества существующих вариантов
реализации многозадачности можно выделить две группы алгоритмов:
При невытесняющей многозадачности активный процесс выполняется до тех пор, пока
он сам, по собственной инициативе, не отдаст управление операционной системе
для того, чтобы та выбрала из очереди другой готовый к выполнению процесс. При
вытесняющей многозадачности решение о переключении процессора с одного процесса
на другой принимается операционной системой, а не самим активным процессом.
Поддержка многонитевости. Важным свойством операционных систем является возможность
распараллеливания вычислений в рамках одной задачи.
Многонитевая ОС разделяет процессорное время не между задачами, а между
их отдельными ветвями (нитями).
Многопроцессорная обработка. Другим важным свойством ОС является отсутствие
или наличие в ней средств поддержки многопроцессорной обработки - мулътипроцессирование.
Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.
В наши дни становится общепринятым введение в ОС функций поддержки многопроцессорной
обработки данных. Такие функции имеются в операционных системах Solaris 2.x
фирмы Sun, Open Server 3.x фирмы Santa Cms Operations, OS/2 фирмы IBM, Windows фирмы Microsoft и NetWare 4.1 фирмы Novell.