Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС М1 2011.docx
Скачиваний:
9
Добавлен:
12.11.2019
Размер:
162.32 Кб
Скачать

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

Рассмотрим классификацию современных операционных систем в зависимости от области их применения.

Прежде всего, отметим ОС больших ЭВМ (мейнфреймов). Основной характеристикой аппаратного обеспечения, для которого их разрабатывают, это производительность ввода-вывода: большие ЭВМ оснащивают значительным количеством периферийных устройств (дисков, терминалов, принтеров и т.п.). Такие компьютерные системы используют для надежной обработки значительных объемов данных, при этом ОС должны эффективно поддерживать эту обработку (в пакетном режиме или в режиме распределения времени). Примером ОС такого класса может быть OS/390 фирмы ІВМ.

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

Самая большая категория — персональные ОС. Некоторые ОС этой категории разрабатывали с расчетом на непрофессионального пользователя (линия Windows 95/98/Ме фирмы Microsoft, которую дальше будем называть Consumer Windows), другие являются упрощенными версиями универсальных ОС. Особое внимание в персональных ОС отводится поддержке графического интерфейса пользователя и мультимедиа-технологий.

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

Еще одной категорией есть встроенные ОС. К ним принадлежат управляющие программы для разнообразных микропроцессорных систем, которые используют в военной технике, системах бытовой электроники, смарт-картах и других устройствах. К таким системам ставят особые требования: размещение в малом объеме памяти, поддержка специализированных средств ввода-вывода, возможность прошивания в постоянном запоминающем устройстве (ПЗУ). Часто встроенные ОС разрабатываются под конкретное устройство; к универсальным системам принадлежат Embedded Linux и Windows CE.

1.4 Основные функции типовых ос

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

1.4.1. Управление процессами и потоками

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

Можно дать такое определение: процесс - это программа во время ее выполнения.

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

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

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

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