Домой / Faq / Архитектура, назначение и функции операционных систем. Классификация операционных систем. Так, в зависимости от алгоритма управления процессором, операционные системы делятся на

Архитектура, назначение и функции операционных систем. Классификация операционных систем. Так, в зависимости от алгоритма управления процессором, операционные системы делятся на

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

1. Однозадачные и многозадачные

2. Однопользовательские и многопользовательские

3. Однопроцессорные и многопроцессорные системы

4. Локальные и сетевые.

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

1. Однозадачные (MS DOS)

2. Многозадачные (OS/2, Unix, Windows)

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

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

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

2. Системы с разделением времени (Unix, Linux, Windows)

3. Системы реального времени (RT11)

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

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

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

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

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

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

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

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


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

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

26. Модуль операционной системы

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

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

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

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

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

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

Первый этап загрузки ОС. В системном блоке компьютера находится постоянное запоминающее устройство (ПЗУ, постоянная память, ROM-Read Only Memory - память с доступом только для чтения), в котором содержатся программы тестирования блоков компьютера и первого этапа загрузки ОС. Они начинают выполнятся с первым импульсом тока при включении компьютера. На этом этапе процессор обращаются к диску и проверяет наличие на определенном месте (в начале диска) очень небольшой программы - загрузчика. Если эта программа обнаружена, то она считывается в ОЗУ и ей передается управление.

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

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

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

27. Состав операционной системы .

Операционная система MS-DOS состоит из множества различных файлов. Они включают собственно файлы операционной системы IO.SYS, MSDOS.SYS и командный процессор COMMAND.COM. Кроме этих трех файлов, представляющих собой работоспособное ядро MS-DOS, в дистрибутив операционной системы включены файлы так называемых внешних команд, например FORMAT, FDISK, SYS, драйверы различных устройств и некоторые другие файлы.

Файл IO.SYS содержит расширение базовой системы ввода/вывода и используется операционной системой для взаимодействия с аппаратурой компьютера и BIOS.

Файл MSDOS.SYS в некотором смысле является набором программ обработки прерываний, в частности прерывания INT 21H.

Командный процессор COMMAND.COM предназначен для организации диалога с пользователем компьютера. Он анализирует вводимые пользователем команды и организует их выполнение. Так называемые внутренние команды - DIR, COPY и т. д. обрабатываются именно командным процессором.

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

Драйверы (обычно это файлы, имеющие расширение имени SYS или EXE) представляют собой программы, обслуживающие различную аппаратуру. Применение драйверов легко решает проблемы использования новой аппаратуры - достаточно подключить соответствующий драйвер к операционной системе.

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

Файлы операционной системы IO.SYS, MSDOS.SYS и COMMAND.COM должны быть записаны на диске в определенном месте. Вы не должны копировать их в другие каталоги диска.

Если вам необходимо изготовить загрузочную дискету, с помощью которой вы можете загрузить на компьютере MS-DOS, недостаточно просто скопировать на дискету основные файлы операционной системы - IO.SYS, MSDOS.SYS и COMMAND.COM.

Для изготовления системной дискеты необходимо воспользоваться либо командами FORMAT или SYS, либо специальными программами, например программой Safe Format из пакета Norton Utilities.

Самым простым способом сделать чистую дискету загрузочной, является использование внешней команды MS-DOS - SYS. Для ее использования вставьте чистую дискету в дисковод и из корневого каталога диска C: выдайте команду:

После выполнения команды SYS, дискета будет содержать файлы IO.SYS, MSDOS.SYS и COMMAND.COM, записанные в определенных местах дискеты. Вы можете загрузить MS-DOS с этой дискеты, если перед включением питания вставите системную дискету в дисковод A:.

28. Процесс загрузки операционной системы

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

Загрузка начинается с того, что BIOS делает попытку прочитать самый первый сектор дискеты, вставленной в дисковод А: (на загрузочной дискете этот сектор содержит загрузчик операционной системы). Если в дисковод вставлена системная дискета, с нее считывается загрузчик и ему передается управление.

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

Если же дискеты в дисководе А: вообще нет, то BIOS читает основную загрузочную запись диска С: (Master Boot Record). Обычно это самый первый сектор на диске. Управление передается загрузчику, который находится в этом секторе. Загрузчик анализирует содержимое таблицы разделов (она также находится в этом секторе), выбирает активный раздел и читает загрузочную запись этого раздела. Загрузочная запись активного раздела (Boot Record) аналогична загрузочной записи, находящейся в первом секторе системной дискеты.

Загрузочная запись активного раздела считывает с диска файлы IO.SYS и MSDOS.SYS (именно в этом порядке). Затем считываются и загружаются резидентные драйверы. Начинается формирование связанного списка драйверов устройств. Анализируется содержимое файла CONFIG.SYS, загружаются описанные в этом файле драйверы. Сначала загружаются драйверы, описанные параметром DEVICE, затем (только в MS-DOS версии 4.х и 5.0) резидентные программы, указанные операторами INSTALL. После этого считывается командный процессор и ему передается управление.

Командный процессор состоит из трех частей - резидентной, инициализирующей и транзитной. Первой загружается резидентная часть. Она обрабатывает прерывания INT 22H, INT 23H, INT 24H, управляет загрузкой транзитной части. Эта часть командного процессора обрабатывает ошибки MS-DOS и выдает запрос пользователю о действиях при обнаружении ошибок.

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

Транзитная часть командного процессора располагается в старших адресах памяти. В этой части находятся обработчики внутренних команд MS-DOS и интерпретатор командных файлов с расширением имени.BAT. Транзитная часть выдает системное приглашение (например, А:>), ожидает ввода команды оператора с клавиатуры или из пакетного файла и организует их выполнение.

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

29. Системные файлы операционной системы

Если в командной строке FORMAT указан параметр /s, то на
форматируемый диск записываются копии системных файлов. В MS-DOS имеется
три системных файла - IO.SYS, MSDOS.SYS и COMMAND.COM. В системе PC-DOS
файл IO.SYS называется IBMBIO.COM, а файл MSDOS.SYS - IBMDOS.COM.
Системные файлы хранятся на диске, с которого загружается операционная
система. Файлы записываются в строго определенном порядке и имеют стpого
определенное месторасположение.
IO.SYS размещается непосредственно после директория диска. Файл
содержит рабочие драйверы операционной системы. Драйвер - это программа
в машинном коде, обеспечивающая интерфейс между операционной системой и
периферийным устройством (см.гл.14). Так как IO.SYS отвечает за связь с
физическими устройствами, то он должен быть идеально подогнан под
конкретную систему и поэтому обычно организуется фирмой-изготовителем.
MSDOS.SYS записывается непосредственно после файла IO.SYS. MSDOS.SYS
- это ядро операционной системы. Файл отбирает все запросы на сервисное
обслуживание (например, открытие или чтение файла) и передает их в файл
IO.SYS. Протокол взаимодействия MSDOS.SYS и IO.SYS идентичен протоколу
взаимодействия двух операционных систем. Поэтому считается, что файл
MSDOS.SYS независим от электронного оборудования (внешних устройств и
самого компьютера).
Файл COMMAND.COM является интерпретатором команд MS-DOS. Он служит
интерфейсом между операционной системой и пользователем. Команды файла
выводят на экран стандартный запрос системы, обрабатывают посланные с
клавиатуры команды (переводят в машинный код) и т.п. COMMAND.COM
состоит из трех компонент: резидентной, переменной и инициализирующей.

30. Команды операционной системы

оманды DOS для работы с каталогами
Смена текущего каталога
Просмотр каталога
Создание каталога
Удаление каталога
Переименование каталога
Установка списка каталогов для поиска выполняемых программ

Смена текущего каталога
Формат команды:
cd [дисковод:][путь]
Примеры:
cd \ - переход в корневой каталог текущего диска;
cd \exe - переход в каталог exe в корневом каталоге;

Просмотр каталога
Формат команды:
dir [дисковод:][путь\][имя-файла] [параметры]
Параметры:
/p - поэкранный вывод;
/w - вывод в широком формате;
/s - оглавление указанного в команде каталога и всех его подкаталогов;
/b - только имена файлов без заголовочных и итоговых сведений;
/aатрибут - сведения о файлах, имеющих указанные атрибуты.
Сортировки:
/on - по имени;
/oe - по расширению;
/od - по времени;
/og - сначала выводить сведения о подкаталогах;
Примеры:
dir - оглавление текущего каталога
dir *.exe - сведения обо всех файлах.exe текущего каталога

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

операционный программа информационный

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

Наиболее важными из них являются:

* Client / Server;

* бесплатные / платные;

* версия оригинальная / локализованная;

* интерфейс Text Mode / Graphic Mode

* архитектура 16-bit / 32-bit / 64-bit;

* объем большой / маленький;

* версия сетевая / псевдо - сетевая & локальная;

* память процесса с защитой / без защиты;

* однозадачные / многозадачные;

* однопользовательские / многопользовательские;

* стабильная / нестабильная;

* virus friendly / no virus friendly.

Классификация ОС по функциональным признакам

Основными функциями ОС является:

* распределение ОЗУ между программами;

* организация очередности исполнения программ и ЦП;

* обеспечение взаимодействия пользователя с компьютером.

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

Поддержка многозадачности

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

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

* многозадачные (OC EC, OS/2, UNIX, Windows 95/NT).

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

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

Поддержка многопользовательского режима

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

* однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);

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

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

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

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

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

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

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

Поддержка много поточности

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

Многопроцессорная обработка

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

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

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

* асимметричные ОС;

* симметричные ОС.

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

Поддержка сети

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

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

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

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

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

­ область использования ОС;

­ типы аппаратной платформы;

­ методы проектирования;

­ реализация внутренних алгоритмов управления ресурсами.

Классификация по области использования:

­ настольные ОС (Desktop Operating System) - ОС, ориентированные на работу отдельного пользователя в различных предметных областях (разработка программ, работа с документами и т.п.). Основными чертами настольных ОС являются универсальность и ориентированность на пользователя; представители – MacOS, Windows;

­ серверные ОС , использующиеся в серверах сетей как центральное звено, а также в качестве элементов систем управления; основной чертой серверных ОС является надежность; представители – семейство UNIX, Windows NT;

­ специализированные ОС , ориентированные на решение узких классов задач с жестким набором требований (высокопроизводительные вычисления, управление в реальном времени); системы такого рода практически неразрывно связаны с аппаратной платформой; представители – QNX, редуцированные и специализированные версии UNIX, системы собственной разработки;

­ мобильные ОС – вариант развития настольных ОС на аппаратной платформе КПК; основные черты – удобство использования и компактность; представители PalmOS, Windows CE.

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

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

­ ОС для платформы х86, однопроцессорные варианты;

­ ОС для платформы х86, многопроцессорные варианты;

­ ОС для RISC платформ;

­ ОС для мобильных устройств;

­ встраиваемые ОС (ОС таких устройств, как принтеры, ЦФК и т.п.).

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

­ многозадачные /однозадачные ОС;

­ многопользовательские /однопользовательские ОС и т.п.

Сетевые и распределенные ОС

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

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

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

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

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

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

­ разделения ресурсов этих компьютеров между пользователями сети;

­ подсистемы, организующие работу по этим протоколам.

В итоге ОС получает возможность предоставления своих ресурсов в общее пользование и/или потребления ресурсов других компьютеров. Под сетевой ОС будем понимать операционную систему отдельного компьютера, включающую средства для работы в сети. ОС Windows, начиная с NT, различные варианты ОС Unix (HP-UX компании Hewlett-Packard, Solaris компании Sun, FreeBSD и др.), различные варианты ОС Linux, ОС MacOS, ОС NetWare компании Novell являются сетевыми. Основные функциональные компоненты сетевой ОС показаны на рисунке 1.1.

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

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

­ серверная часть ОС – средства предоставления локальных ресурсов и услуг в общее пользование;

­ клиентская часть ОС – средства запроса доступа к удаленным (т.е. принадлежащим другим компьютерам сети) ресурсам и услугам;

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

Рис1.1 Основные функциональные компоненты сетевой ОС.

Правила взаимодействия компьютеров при передаче сообщений по сети фиксируются в коммуникационных протоколах (Ethernet, Token Ring, IP, IPX и пр.).

Упрощенная схема работы сетевых ОС иллюстрируется на рисунке 1.2. на примере взаимодействия двух компьютеров.

Рис1.2 Упрощенная схема работы сетевых ОС

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

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

На рисунке в клиентской части ОС1 выделен компонент, названный редиректором (от redirect – перенаправлять). Это – программный модуль, предназначенный для распознавания запросов к удаленным и локальным файлам и перенаправления первых к удаленной машине. В таком случае приложения на клиентской машине не должны заботиться о том, с какими файлами они работают – удаленными или локальными. Если функции перенаправления присутствуют в клиентской части сетевой ОС, то редиректором часто называют всю клиентскую часть.

Требования к современным ОС

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

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

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

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

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

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

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

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

Итак, подведем итоги. Операционные системы классифицируются по:

­ количеству одновременно работающих пользователей: однопользовательские, многопользовательские;

­ числу процессов, одновременно выполняемых под управлением системы: однозадачные, многозадачные;

­ количеству поддерживаемых процессоров: однопроцессорные, многопроцессорные;

­ разрядности кода ОС: 8-разрядные, 16-разрядные, 32-разрядные, 64-разрядные;

­ типу интерфейса: командные (текстовые) и объектно-ориентированные (графические);

­ типу доступа пользователя к ЭВМ: с пакетной обработкой, с разделением времени, реального времени;

­ типу использования ресурсов: сетевые, локальные.

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

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

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

Четвертый признак подразделяет операционные системы на 8-, 16-, 32- и 64-разрядные. При этом подразумевается, что разрядность операционной системы не может превышать разрядности процессора.

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

Согласно шестому признаку ОС подразделяются на системы:

­ пакетной обработки , в которых из программ, подлежащих выполнению, формируется пакет (набор) заданий, вводимых в ЭВМ и выполняемых в порядке очередности с возможным учетом приоритетности;

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

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

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

Контрольные вопросы

1. Какие основания являются наиболее существенными для построения классификации ОС?

2. Перечислите известную Вам классификацию ОС по области использования.

3. Какие существуют классы классификации ОС по типу аппаратной платформы?

4. Какие классификации ОС можно создать по внутренним алгоритмам управления ресурсами?

5. Расшифруйте термин «сетевая ОС».

6. Каково назначение сетевых ОС?

7. Что представляет собой распределенная ОС?

8. Какие средства для работы в сети должны включать сетевые операционные системы?

9. На какие компоненты подразделяются сетевые средства?

10. Какие требования предъявляются к современным ОС?

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

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

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

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

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

Поддержка многозадачности (многопрограммности). По числу одновременно выполняемых задач ОС делятся на 2 класса: однопрограммные (однозадачные) – например, MS-DOS, MSX, и многопрограммные (многозадачные) – например, ОС ЕС ЭВМ, OS/360, OS/2, UNIX, Windows разных версий.

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

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

Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся: на однопользовательские (MS-DOS, Windows 3х, ранние версии OS/2) и многопользовательские (UNIX, Windows NT/2000/2003/XP/Vista).

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


Виды многопрограммной работы. Специфику ОС во многом определяет способ распределения времени между несколькими одновременно существующими в системе процессами (или потоками). По этому признаку можно выделить 2 группы алгоритмов: не вытесняющая многопрограммность (Windows3.x, NetWare) и вытесняющая многопрограммность (Windows 2000/2003/XP, OS/2, Unix).

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

Многопроцессорная обработка. Важное свойство ОС – отсутствие или наличие средств поддержки многопроцессорной обработки. По этому признаку можно выделить ОС без поддержки мультипроцессирования (Windows 3.x, Windows 95) и с поддержкой мультипроцессирования (Solaris, OS/2, UNIX, Windows NT/2000/2003/XP).

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

4. По области использования и форме эксплуатации. Обычно здесь выделяют три типа в соответствии с использованными при их разработке критериями эффективности:

Системы пакетной обработки (OS/360, OC EC);

Системы разделения времени (UNIX, VMS);

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

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

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

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

5. По аппаратной платформе(типу вычислительной техники), для которой они предназначаются, операционные системы делят на следующие группы.

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

Встроенные операционные системы. Управляют карманными компьютерами (lialm OS, Windows CE – Consumer Electronics – бытовая техника), мобильными телефонами, телевизорами, микроволновыми печами и т.п.

Операционные системы для персональных компьютеров, например, Windows 9.x, Windows ХР, Linux, Mac OSX и др.

Операционные системы мини-ЭВМ, например, RT-11 для PDP-11 – OC реального времени, RSX-11 M для PDP-11 – ОС разделения времени, UNIX для PDP-7.

Операционные системы мэйнфреймов (больших машин), например, OS/390, происходящая от OS/360 (IBM). Обычно ОС мэйнфреймов предполагает одновременно три вида обслуживания: пакетную обработку, обработку транзакций (например, работа с БД, бронирование авиабилетов, процесс работы в банках) и разделение времени.

Серверные операционные системы, например, UNIX, Windows 2000, Linux. Область применения – ЛВС, региональные сети, Intranet, Internet.

Кластерные операционные системы. Кластер – слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений и представляющихся пользователю единой системной, например, Windows 2000 Cluster Server, Windows 2008 Server, Sun Cluster (базовая ОС – Solaris).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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