Операционная система: назначение и классификация операционных систем. Общая характеристика и основные механизмы операционной системы Windows

Операционная система в наибольшей степени определяет облик вычислительной системы. Современные вычислительные системы состоят из процессоров, памяти, таймеров, различных типов дисков, накопителей на магнитных лентах, принтеров, сетевой коммуникационной аппаратуры и других устройств, требующих сложного механизма управления. ОС должна управлять всеми ресурсами вычислительной машины так, чтобы обеспечить максимальную эффективность ее функционирования. В соответствии с этим главной функцией ОС является распределение процессоров, памяти, других устройств и данных между вычислительными процессами, конкурирующими за эти ресурсы. Управление ресурсами включает решение следующих не зависящих от вида ресурса задач:

планирование ресурса , т.е. определение, кому, когда и в каком количестве необходимо выделить данный ресурс;

контроль за состоянием ресурса , т.е. поддержание оперативной информации о том, занят или не занят ресурс, какое количество ресурса уже распределено, а какое свободно.

От эффективности алгоритмов управления локальными ресурсами компьютера во многом зависит эффективность всей сетевой ОС в целом.

Операционные системы различаются особенностями реализации алгоритмов управления ресурсами компьютера, областями использования и по многим другим признакам. Так, в зависимости от особенностей алгоритма управления процессором операционные системы делятся на однозадачные и многозадачные, однопользовательские и многопользовательские, на однопроцессорные и многопроцессорные системы, а также на локальные и сетевые.

Однозадачные и многозадачные операционные системы. По числу одновременно выполняемых задач операционные системы делятся на два класса:

однозадачные (например, MS DOS, MSX);

многозадачные (ОС ЕС, OS/2, Unix, ОС семейства Windows) и др.

Однозадачные ОС в основном выполняют функцию предоставления пользователю виртуальной машины, делая более простым и удобным интерфейс пользователя с компьютером. Однозадачные ОС включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.



Многозадачные ОС , кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких, как процессор, оперативная память, файлы и внешние устройства.

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

Невытесняющая многозадачность (NetWare, Windows 3.x);

Вытесняющая многозадачность (Windows NT, OS/2, Unix).

Основным различием между вытесняющим и невытесняющим алгоритмом многозадачности является степень централизации планирования вычислительных процессов. В первом случае планирование вычислительных процессов целиком возлагается на операционную систему, а во втором – распределено между операционной системой и прикладными программами. При невытесняющей многозадачности активный вычислительный процесс выполняется до тех пор, пока сама прикладная программа по собственной инициативе не отдаст указание операционной системе выбрать из очереди другой готовый к выполнению процесс. При вытесняющей многозадачности решение о переключении процессора с одного активного вычислительного процесса на другой принимается самой ОС, а не прикладной программой.

В зависимости от областей использования многозадачные ОС подразделяются на три типа:

системы пакетной обработки (например, ОС ЕС);

системы с разделением времени (Unix, VMS, Windows, Linux);

системы реального времени (QNX, RT/11).

Системы пакетной обработки предназначены для решения задач такого характера, которые не требуют быстрого получения результатов. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, т.е. решение максимального числа задач в единицу времени. Для достижения этой цели в системах пакетной обработки используется следующий порядок обработки данных: в начале работы формируется пакет заданий, каждое задание содержит требование к системным ресурсам; из этого пакета заданий формируется множество одновременно выполняемых задач. Для одновременного выполнения выбираются те задачи, которые предъявляют различные требования к ресурсам. Это делается с целью обеспечения сбалансированной загрузки всех устройств вычислительной машины. Например, является желательным одновременное присутствие вычислительных задач и задач с интенсивным вводом-выводом.

Таким образом, выбор нового задания из пакета заданий зависит от внутренней ситуации, складывающейся в системе, т.е. выбирается наиболее оптимальное, “выгодное” задание. Следовательно, в таких ОС невозможно гарантировать выполнение того или иного задания в течение определенного периода времени. В системах пакетной обработки переключение процессора с выполнения одной задачи на выполнение другой происходит только в случае, если активная задача сама отказывается от процессора, например, из-за необходимости выполнить операцию ввода-вывода. Очевидно, что такой алгоритм вычислительного процесса снижает эффективность работы пользователя в интерактивном режиме, но остается актуальным для обеспечения высокой производительности при обработке больших объемов информации и до настоящего времени, особенно в прикладных информационных системах.

Системы с разделением времени. В системах с разделением времени каждой задаче выделяется небольшой квант процессорного времени, ни одна задача не занимает процессор надолго и время ответа оказывается приемлемым. Если квант выбран достаточно небольшим, то это предполагает параллельное выполнение нескольких программ, существующих в рамках одной вычислительной системы. Ясно, что подобные системы обладают меньшей пропускной способностью, чем системы пакетной обработки, так как на выполнение принимается каждая запущенная пользователем задача, а не та, которая “выгодна” системе. Критерием эффективности систем с разделением времени является не максимальная пропускная способность процессора, а эффективность работы пользователя в интерактивном режиме.

Системы реального времени (ОС РВ) применяются для управления различными техническими объектами (такими, как станок, спутник, научная экспериментальная установка) или технологическими процессами (гальваническая линия, доменный процесс и т.п.). Применяют ОС РВ и в банковском деле. Критерием эффективности для систем реального времени является их способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата (управляющего воздействия). Это время называется временем реакции системы, а соответствующее свойство системы – реактивностью. Среди наиболее известных ОС РВ для IBM PC – RTMX, AMX, OS-9000, FLEX OS, QNX и др. Среди перечисленных ОС наиболее полным набором инструментальных средств обладает ОС РВ QNX, которая выполняет 32-разрядные приложения и может работать совместно с ОС семейства Unix.

Некоторые операционные системы могут совмещать в себе свойства систем разных типов, например, часть задач может выполняться в режиме пакетной обработки, а часть – в режиме реального времени или в режиме разделения времени. В таких случаях режим пакетной обработки часто называют фоновым режимом.

Многопользовательский и однопользовательский режимы. По числу одновременно работающих пользователей ОС могут быть разделены на однопользовательские (MS DOS, Windows 3.x) и многопользовательские (Unix, Windows NT, Windows XP, Linux).

Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что не всякая многозадачная система является многопользовательской и не всякая однопользовательская ОС является однозадачной.

Многопроцессорные и однопроцессорные системы. Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки. В наши дни становится общепринятым введение в ОС функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.

В системе с многопроцессорной обработкой данных ОС могут быть разделены по способу организации вычислительного процесса следующим образом: асимметричные ОС и симметричные ОС . Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричная ОС полностью децентрализована и использует все количество процессоров, разделяя их между системными и прикладными задачами.

Одним из важных признаков классификации ОС является деление их на сетевые и локальные.

Сетевые ОС предназначены для управления ресурсами компьютеров, объединенных в сеть с целью совместного использования данных.

Они предоставляют средства разграничения доступа к информации, ее целостности и сохранности, а также другие возможности использования сетевых ресурсов.

Сетевая операционная система составляет основу любой вычислительной сети.

С одной стороны, каждый компьютер в сети в некоторой степени автономен, поэтому под сетевой операционной системой понимается вся совокупность операционных систем отдельных компьютеров, взаимодействующих с целью обмена сообщениями и разделения ресурсов по единым правилам – протоколам.

С другой стороны, сетевая ОС – это операционная система отдельного компьютера, обеспечивающая ему возможность работать в сети.

В большинстве случаев ОС устанавливаются на одном или более достаточно мощных компьютерах-серверах, предназначенных исключительно для обслуживания сети и совместно используемых ресурсов.

Все остальные ОС будут считаться локальными сетевыми и могут использоваться на любом ПК, подключенном к сети в качестве рабочей станции. На каждой рабочей станции выполняется своя собственная локальная сетевая операционная система, отличающаяся от ОС автономного компьютера наличием дополнительных средств, позволяющих компьютеру работать в сети.

Локальная сетевая ОС такого типа не имеет фундаментальных отличий от ОС автономного компьютера, но она обязательно содержит программную поддержку для сетевых интерфейсных устройств (драйвер сетевого адаптера), а также средства для удаленного входа в другие компьютеры сети и средства доступа к удаленным файлам, однако эти дополнения существенно не меняют структуру самой операционной системы.

В сетевой операционной системе отдельной машины можно выделить несколько частей:

средства управления локальными ресурсами компьютера : функции распределения оперативной памяти между планированием и диспетчеризацией процессов, управления процессорами в многопроцессорных машинах, управления периферийными устройствами и другие функции управления ресурсами локальных ОС;

средства предоставления собственных ресурсов и услуг в общее пользование – серверная часть ОС (сервер). Эти средства обеспечивают, например, блокировку файлов и записей, что необходимо для их совместного использования; ведение справочников имен сетевых ресурсов; обработку запросов удаленного доступа к собственной файловой системе и базе данных; управление очередями запросов удаленных пользователей к своим периферийным устройствам;

средства запроса доступа к удаленным ресурсам и услугам и их использование – клиентская часть ОС. Эта часть выполняет распознавание и перенаправление в сеть запросов к удаленным ресурсам от приложений и пользователей, при этом запрос поступает от приложения в локальной форме, а передается в сеть в другой форме, соответствующей требованиям сервера. Клиентская часть также осуществляет прием ответов от серверов и преобразование их в локальный формат, так что для приложения выполнение локальных и удаленных запросов неразличимо;

коммуникационные средства ОС , с помощью которых происходит обмен сообщениями в сети. Эта часть обеспечивает адресацию и буферизацию сообщений, выбор маршрута передачи сообщения по сети, надежность передачи и т.п., т.е. является средством транспортировки сообщений.

Операционная система (ОС) - организованная совокупность программ (систем), которая действует как интерфейс между аппаратурой ЭВМ и пользователями. Она обеспечивает пользователей набором средств для облегчения проектирования, программирования, отладки и сопровождения программ и в то же время управляет распределением ресурсов для обеспечения эффективной работы.

Операционные системы (ОС) классифицируют :

    по особенностям алгоритмов управления ресурсами – локальные и сетевые ОС. Локальные ОС управляют ресурсами отдельного компьютера. Сетевые ОС участвуют в управлении ресурсами сети;

    по числу одновременно выполняемых задач - однозадачные и многозадачные . Однозадачные ОС выполняют функцию предоставления пользователю виртуальной вычислительной машины, обеспечивая его простым и удобным интерфейсом взаимодействия с компьютером, средствами управления периферийными устройствами и файлами. Многозадачные ОС, кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства;

    по числу одновременно работающих пользователей - однопользовательские и многопользовательские . Основным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей;

    по возможности распараллеливания вычислений в рамках одной задачи - поддержка многонитевости . Многонитевая ОС разделяет процессорное время не между задачами, а между их отдельными ветвями – нитями;

    по способу распределения процессорного времени между несколькими одновременно существующими в системе процессами или нитями - невытесняющая многозадачность и вытесняющая многозадачность . В невытесняющей многозадачности механизм планирования процессов целиком сосредоточен в операционной системе, а в вытесняющей распределен между системой и прикладными программами. При невытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам по собственной инициативе не передаст управление операционной системе для выбора из очереди другого готового к выполнению процесса. При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом;

    по отсутствию или наличию в ней средств поддержки многопроцессорной обработки . Многопроцессорные ОС, в свою очередь, могут классифицироваться по способу организации вычислительного процесса в системе с многопроцессорной архитектурой: асимметричные ОС и симметричные ОС. Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричная ОС полностью децентрализована и использует весь набор процессоров, разделяя их между системными и прикладными задачами;

    по ориентации на аппаратные средства - операционные системы персональных компьютеров , серверов , мейнфреймов , кластеров ;

    по зависимости от аппаратных платформ – зависимые и мобильные . В мобильных ОС аппаратно зависимые места локализованы так, что при переносе системы на новую платформу переписываются только они. Средством, облегчающим перенос ОС на другой тип компьютера является написание ее на машинно-независимом языке, например, на С ;

    по особенностям областей использования – ОС пакетной обработки , разделения времени , реального времени . Системы пакетной обработки предназначены для решения задач вычислительного характера, не требующих быстрого получения результатов. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени. В системах с разделением времени каждому пользователю предоставляется терминал, с которого он может вести диалог со своей программой. Каждой задаче выделяется некоторый квант процессорного времени, так что ни одна задача не занимает процессор надолго. Если квант времени выбран небольшим, то у всех пользователей, одновременно работающих на одном компьютере, создается впечатление, что каждый из них единолично использует машину. Системы реального времени применяются для управления различными техническими объектами, когда существует предельно допустимое время, в течение которого должна быть выполнена та или иная программа управления объектом. Невыполнение программы в срок может привести к аварийной ситуации. Таким образом, критерием эффективности систем реального времени является их способность выдерживать заранее заданные интервалы времени между запуском программы и получением результата - управляющего воздействия;

    по структурной организации и концепциям, положенным в основу:

    по способу построения ядра системы - монолитное ядро или микроядерный подход . ОС использующие монолитное ядро, компонуются как одна программа, работающая в привилегированном режиме и использующая быстрые переходы с одной процедуры на другую, не требующие переключения из привилегированного режима в пользовательский и наоборот. При построении ОС на базе микроядра, работающего в привилегированном режиме и выполняющего только минимум функций по управлению аппаратурой, функции более высокого уровня выполняют специализированные компоненты ОС – программные серверы, работающие в пользовательском режиме. При таком построении ОС работает более медленно, так как часто выполняются переходы между привилегированным режимом и пользовательским, но система получается более гибкой и ее функции можно модифицировать, добавляя или исключая серверы пользовательского режима;

    по построению на базе объектно-ориентированного подхода ;

    по наличию нескольких прикладных сред в рамках одной ОС, позволяющих выполнять приложения, разработанные для нескольких операционных систем. Концепция множественных прикладных сред наиболее просто реализуется в ОС на базе микроядра, над которым работают различные серверы, часть которых реализуют прикладную среду той или иной операционной системы;

    по распределению функций операционной системы среди компьютеров сети. В распределенной ОС реализованы механизмы, обеспечивающие пользователя возможностью представлять и воспринимать сеть в виде однопроцессорного компьютера. Признаками распределенной ОС является наличие единой справочной службы разделяемых ресурсов и службы времени, использование механизма вызова удаленных процедур для распределения программных процедур по машинам, многонитевой обработки, позволяющей распараллеливать вычисления в рамках одной задачи и выполнять эту задачу одновременно на нескольких компьютерах сети, а также наличие других распределенных служб.

Структуру ОС составляют следующие модули :

    базовый модуль (ядро ОС) - управляет работой программ и файловой системой, обеспечивает доступ к ней и обмен файлами между периферийными устройствами;

    командный процессор - расшифровывает и исполняет команды пользователя, поступающие прежде всего через клавиатуру;

    драйверы периферийных устройств - программно обеспечивают согласованность работы этих устройств с процессором (каждое периферийное устройство обрабатывает информацию по-разному и в различном темпе);

    дополнительные сервисные программы (утилиты) - делают удобным и многосторонним процесс общения пользователя с компьютером.

В общем случае операционная система выполняет следующие четыре функции:

    предоставляет другим программам определенный вид обслуживания (посредством программ-утилит), например выделение и назначение памяти, синхронизацию процесса вычислений и организацию взаимосвязи между различными процессами в вычислительной системе;

    обеспечивает защиту (в определенной мере) других программ от последствий различных особых ситуаций, возникающих при машинной реализации данной программы, таких, как прерывания и машинные сбои;

    реализует с той или иной степенью сложности принцип “виртуальной машины”, что позволяет группе программ использовать общие вычислительные ресурсы, например процессор (процессоры) и основную память;

    организует и следит за выполнением принципов управления при решении таких задач, как обеспечение защиты данных от несанкционированного доступа и реализация системы приоритетов доступа программ к вычислительным ресурсам.

    Обеспечивает работу с устройствами долговременной памяти, такими как магнитные диски, ленты, оптические диски и т.д

    Предоставляет стандартный доступ к различным устройствам ввода/вывода, таким как терминалы, модемы, печатающие устройства.

    Предоставляет некоторый пользовательский интерфейс. Часть систем ограничивается командной строкой, в то время как другие на 90% состоят из средств интерфейса пользователя.

Более развитые ОС предоставляют также следующие возможности:

    Параллельное (точнее, псевдопараллельное, если машина имеет только 1 процессор) исполнение нескольких задач.

    Распределение ресурсов компьютера между задачами.

    Организация взаимодействия задач друг с другом.

    Взаимодействие пользовательских программ с нестандартными внешними устройствами.

    Организация межмашинного взаимодействия и разделения ресурсов.

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

Операционная система предназначена для управления выполнением пользовательских программ, планирования и управления вычислительными ресурсами ЭВМ.

Операционная система, с одной стороны, выступает как интерфейс между аппаратурой компьютера и пользователем с его задачами, с другой стороны, предназначена для эффективного использования ресурсов вычислительной системы и организации надежных вычислений.

Системы управления файлами предназначены для организации более удобного доступа к данным, организованным как файлы.

Вместо низкоуровневого доступа к данным с указанием конкретных физических адресов система управления файлами позволяет использовать логический доступ с указанием имени файла.

Любая система управления файлами не существует сама по себе - она разработана для работы в конкретной ОС и с конкретной файловой системой. То есть можно было бы систему управления файлами отнести к ОС.

Но в связи с тем, что:

  • 1) ряд ОС позволяет работать с несколькими файловыми системами (либо с одной из нескольких, либо сразу с несколькими одновременно); а дополнительную файловую систему можно установить (т.е. они самостоятельны);
  • 2) простейшие ОС могут работать и без файловых систем; системы управления файлами выделяются в отдельную группу системных программ.

Заметим, что часто в специальной литературе системы управления файлами относят все-таки к операционным системам.

Операционные системы различаются особенностями реализации алгоритмов управления ресурсами компьютера, областями использования.

Так, в зависимости от алгоритма управления процессором, операционные системы делятся на:

  • · Однозадачные и многозадачные.
  • · Однопользовательские и многопользовательские.
  • · Однопроцессорные и многопроцессорные системы.
  • · Локальные и сетевые.

По числу одновременно выполняемых задач операционные системы делятся на два класса:

  • · Однозадачные (MS DOS).
  • · Многозадачные (OS/2, Unix, Windows).

В однозадачных системах используются средства управления периферийными устройствами, средства управления файлами, средства общения с пользователями. Многозадачные ОС используют все средства, которые характерны для однозадачных, и, кроме того, управляют разделением совместно используемых ресурсов: процессор, ОЗУ, файлы и внешние устройства.

В зависимости от областей использования многозадачные ОС подразделяются на три типа:

  • · Системы пакетной обработки (ОС ЕС).
  • · Системы с разделением времени (Unix, Linux, Windows).
  • · Системы реального времени (RT11).

Системы пакетной обработки предназначены для решения задач, которые не требуют быстрого получения результатов. Главной целью ОС пакетной обработки является максимальная пропускная способность или решение максимального числа задач в единицу времени.

Эти системы обеспечивают высокую производительность при обработке больших объемов информации, но снижают эффективность работы пользователя в интерактивном режиме.

В системах с разделением времени для выполнения каждой задачи выделяется небольшой промежуток времени, и ни одна задача не занимает процессор надолго. Если этот промежуток времени выбран минимальным, то создается видимость одновременного выполнения нескольких задач. Эти системы обладают меньшей пропускной способностью, но обеспечивают высокую эффективность работы пользователя в интерактивном режиме.

Системы реального времени применяются для управления технологическим процессом или техническим объектом, например, летательным объектом, станком и т.д.

По числу одновременно работающих пользователей на ЭВМ ОС разделяются на однопользовательские (MS DOS) и многопользовательские (Unix, Linux, Windows 95 - XP).

В многопользовательских ОС каждый пользователь настраивает для себя интерфейс пользователя, т.е. может создать собственные наборы ярлыков, группы программ, задать индивидуальную цветовую схему, переместить в удобное место панель задач и добавить в меню Пуск новые пункты.

В многопользовательских ОС существуют средства защиты информации каждого пользователя от несанкционированного доступа других пользователей.

Многопроцессорные и однопроцессорные операционные системы. Одним из важных свойств ОС является наличие в ней средств поддержки многопроцессорной обработки данных. Такие средства существуют в OS/2, Net Ware, Widows NT. По способу организации вычислительного процесса эти ОС могут быть разделены на асимметричные и симметричные.

Одним из важнейших признаков классификации ЭВМ является разделение их на локальные и сетевые. Локальные ОС применяются на автономных ПК или ПК, которые используются в компьютерных сетях в качестве клиента.

В состав локальных ОС входит клиентская часть ПО для доступа к удаленным ресурсам и услугам. Сетевые ОС предназначены для управления ресурсами ПК включенных в сеть с целью совместного использования ресурсов. Они представляют мощные средства разграничения доступа к информации, ее целостности и другие возможности использования сетевых ресурсов.

программный антивирусный системный файловый

Определение 1 :Операционная система – это комплекс специальных программных средств, предназначенных для управления загрузкой, запуском и выполнением других (пользовательских) программ, а также для планирования и управления вычислительными ресурсами ЭВМ.

Операционная система образует автономную среду, не связанную ни с одним из языков программирования. Любая прикладная программа связана с операционной системой и может эксплуатироваться только на тех компьютерах, где имеется аналогичная системная среда (или должна быть обеспечена возможность конвертации - преобразования программ).

Существует два подхода к рассмотрению понятия ОС.

Операционная система как расширенная машина : использование большинства компьютеров на уровне машинного языка затруднительно, особенно это касается ввода/вывода. Например, для организации чтения блока данных с гибкого диска программист может использовать 16 различных команд, каждая из которых требует 13 параметров, таких как номер блока на диске, номер сектора на дорожке и т. п. Когда выполнение операции с диском завершается, контроллер возвращает 23 значения, отражающих наличие и типы ошибок, которые, очевидно, надо анализировать. Даже если не входить в курс реальных проблем программирования ввода/вывода, ясно, что среди программистов нашлось бы не много желающих непосредственно заниматься программированием этих операций. При работе с диском программисту-пользователю достаточно представлять его в виде некоторого набора файлов, каждый из которых имеет имя.

С этой точки зрения функцией ОС является предоставление пользователю некоторой расширенной или виртуальной машины, которую легче программировать и с которой легче работать, чем непосредственно с аппаратурой, составляющей реальную машину.

Операционная система как система управленияресурсами: в соответствии со вторым подходом функцией ОС является распределение процессоров, памяти, устройств и данных между процессами, конкурирующими за эти ресурсы. ОС должна управлять всеми ресурсами вычислительной машины таким образом, чтобы обеспечить максимальную эффективность ее функционирования.

Управление ресурсами включает решение двух общих, не зависящих от типа ресурса задач:

    планирование ресурса - то есть определение, кому, когда, а для делимых ресурсов - и в каком количестве необходимо выделить данный ресурс;

    отслеживание состояния ресурса - то есть поддержание оперативной информации о том, занят или не занят ресурс, а для делимых ресурсов - какое количество ресурса уже распределено, а какое свободно.

Классификация операционных систем

Рассмотрим основные функций ОС по управлению процессорами, памятью, внешними устройствами автономного компьютера.

1. Поддержка многозадачности . По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:

    однозадачные (например, MSDOS, MSX);

    многозадачные (ОС ЕС, OS/2, UNIX, Windows 95).

Однозадачные ОС в основном выполняют функцию предоставления пользователю виртуальной машины, делая более простым и удобным процесс взаимодействия пользователя с компьютером. Однозадачные ОС включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.

Многозадачные ОС, кроме выполнения вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства.

2. Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся:

    на однопользовательские (MSDOS, Windows 3.x,);

    многопользовательские (UNIX, WindowsNT).

    Вытесняющая и невытесняющая многозадачность. Важнейшим разделяемым ресурсом является процессорное время. Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами (или нитями) во многом определяет специфику ОС. Среди множества существующих вариантов реализации многозадачности можно выделить две группы алгоритмов:

    невытесняющая многозадачность;

    вытесняющая многозадачность

    Поддержка многонитевости. Важным свойством ОС является возможность распараллеливания вычислений в рамках одной задачи. Многонитевая ОС разделяет процессорное время не между задачами, а между их отдельными ветвями (нитями).

    Многопроцессорная обработка. Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мулътипроцессирование. Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами.