Автор: Пользователь скрыл имя, 27 Февраля 2012 в 20:08, реферат
Операционная система — это комплекс программ, обеспечивающий управление аппаратными средствами компьютера, организующий работу с файлами и выполнение прикладных программ, осуществляющий ввод и вывод данных.
Операционные системы. Классификация по различным признакам.
1. Введение.
Операционная система — это комплекс программ, обеспечивающий управление аппаратными средствами компьютера, организующий работу с файлами и выполнение прикладных программ, осуществляющий ввод и вывод данных.
Что же такое ОС? Существует несколько точек зрения.
Операционная система как виртуальная машина. При разработке ОС широко применяется абстрагирование, которое является важным методом упрощения и позволяет сконцентрироваться на взаимодействии высокоуровневых компонентов системы, игнорируя детали их реализации. В этом смысле ОС представляет собой интерфейс между пользователем и компьютером.
Операционная система как менеджер ресурсов. Операционная система предназначена для управления всеми частями весьма сложной архитектуры компьютера. Представим, к примеру, что произойдет, если несколько программ, работающих на одном компьютере, будут пытаться одновременно осуществлять вывод на принтер. Мы получили бы мешанину строчек и страниц, выведенных различными программами. Операционная система предотвращает такого рода хаос за счет буферизации информации, предназначенной для печати, на диске и организации очереди на печать. Для многопользовательских компьютеров необходимость управления ресурсами и их защиты еще более очевидна. Следовательно, операционная система, как менеджер ресурсов, осуществляет упорядоченное и контролируемое распределение процессоров, памяти и других ресурсов между различными программами.
Операционная система как защитник пользователей и программ. Если вычислительная система допускает совместную работу нескольких пользователей, то возникает проблема организации их безопасной деятельности. Необходимо обеспечить сохранность информации на диске, чтобы никто не мог удалить или повредить чужие файлы. Нельзя разрешить программам одних пользователей произвольно вмешиваться в работу программ других пользователей. Нужно пресекать попытки несанкционированного использования вычислительной системы. Всю эту деятельность осуществляет операционная система как организатор безопасной работы пользователей и их программ.
Операционная система как постоянно функционирующее ядро. Наконец, можно дать и такое определение: операционная система – это программа, постоянно работающая на компьютере и взаимодействующая со всеми прикладными программами.
2. Классификация ОС.
Операционные системы можно классифицировать по:
1) Дате появления и продолжению развития:
a) ранние/неразвиваемые;
b) современные/развиваемые.
2) Базовой технологии:
a) Unix-подобные;
b) Windows-подобные.
3) Типу лицензии:
a) проприетарные;
b) открытые;
c) образовательные.
4) Типу использования ресурсов:
a) сетевые;
b) локальные.
5) Количеству одновременно работающих пользователей:
a) однопользовательские (MS-DOS, Windows 3.x);
b) многопользовательские (Windows NT, Unix).
6) Количеству решаемых задач:
a) однозадачные (например, MS-DOS);
b) многозадачные (Unix, OS/2, Windows):
i) с невытесняющей многозадачностью;
ii) с вытесняющей многозадачностью.
7) Количеству поддерживаемых процессоров:
a) однопроцессорные;
b) многопроцессорные:
i) асимметричные;
ii) симметричные.
8) Области применения и типа решаемых задач:
a) с пакетной обработкой;
b) с разделением времени;
c) реального времени.
9) Типу интерфейса:
a) командные (текстовые);
b) объектно-ориентированные (графические).
10) Назначению:
a) системы реального времени:
i) жесткого;
ii) мягкого.
b) встраиваемые системы;
c) операционные системы для супер-компьютеров;
d) операционные системы для серверов;
e) операционные системы для домашних и офисных компьютеров;
f) исследовательские операционные системы.
Рассмотрим некоторые пункты подробнее.
2.1 Unix-подобные ОС.
Unix-подобная операционная система — это система, которая образовалась под влиянием UNIX. Термин включает свободные / открытые операционные системы, образованные от Unix компании Bell Labs или эмулирующие его возможности, коммерческие и запатентованные разработки, а также версии, основанные на исходном коде Unix. Нет стандарта, определяющего термин, и допустимы различные точки зрения о том, считать ли определённый продукт «Unix-подобным» или нет.
Unix системы начали появляться с поздних ’70х и ранних ’80х. Много проприетарных версий, таких как Idris (1978), Coherent (1983), и UniFlex (1985), ставили целью обеспечить нужды бизнеса функциональностью, доступной обученным пользователям UNIX.
Когда AT&T разрешила коммерческое лицензирование UNIX в 1980х, множество разработаных проприетарных систем основывались на этом, включая AIX, HP-UX, IRIX, Solaris, Tru64, Ultrix, и Xenix. Это во многом вытесняло проприетарных клонов. Растущая несовместимость между системами привела к созданию стандартов взаимодействия, в том числе POSIX и Единой Спецификации UNIX.
Между тем, в 1983 году был запущен проект GNU, благодаря которому удалось сделать операционную систему, которую все пользователи компьютера могли свободно использовать, изучать, исправлять, пересобирать. Различные «Unix-подобия» разрабатывались аналогично GNU, часто с теми же основными компонентами. Они прежде всего служили дешевым замещением UNIX, и включали 4.4BSD, Linux и Minix. Некоторые из них послужили основой для коммерческих Unix систем, таких как BSD/OS и Mac OS X. Примечательно, Mac OS X 10.5, Leopard, сертифицирован Единой Спецификацией UNIX.
Большинство производителей открытых Unix систем не добиваются сертификации UNIX для своего продукта даже в качестве компромата: стоимость сертификации считается недопустимой. Для таких систем обычно используют термин Freenix. Примером являются GNU, Linux, Minix, OpenSolaris, Plan 9, и BSD со своими потомками, такими как FreeBSD, NetBSD, и OpenBSD.
Есть множество запатентованных Unix-подобий, таких как AIX; HP-UX; IRIX; Mac OS X; LynxOS; QNX; SCO OpenServer; Solaris; Tru64 UNIX (based on OSF/1); UnixWare; Xenix; и VxWorks.
2.2 Windows-подобные ОС.
ReactOS — международный проект свободной и бесплатной операционной системы с открытым кодом. ReactOS не является точным клоном Windows, но представляет собой операционную систему, совместимую с приложениями и драйверами Microsoft Windows (сейчас это Windows NT версии 5.x и выше — Windows 2000 и далее).
По состоянию на октябрь 2009 года проект всё ещё находится на незавершенной стадии внутреннего тестирования альфа, хотя некоторые цели проекта уже достигнуты и работает целый ряд Windows-приложений. Различные части ReactOS лицензированы под GNU General Public License, GNU Lesser General Public License и BSD License. В 2008 году были начаты работы над портированием ReactOS на другие архитектуры: x86-64 и ARM.
2.3 Многозадачные ОС.
Многозадачность — свойство операционной системы или среды программирования, обеспечивать возможность параллельной (или псевдопараллельной) обработки нескольких процессов. Истинная многозадачность операционной системы возможна только в распределенных вычислительных системах.
Примитивные многозадачные среды обеспечивают чистое «разделение ресурсов», когда за каждой задачей закрепляется определённый участок памяти, и задача активизируется в строго определённые интервалы времени.
Более развитые многозадачные системы проводят распределение ресурсов динамически, когда задача стартует в памяти или покидает память в зависимости от её приоритета и от стратегии системы.
Невытесняющая многозадачность. Тип многозадачности, при котором операционная система одновременно загружает в память два или более приложений, но процессорное время предоставляется только основному приложению. Для выполнения фонового приложения оно должно быть активизировано.
Вытесняющая многозадачность. Вид многозадачности, в котором операционная система сама передает управление от одной выполняемой программы другой в случае завершений операций ввода-вывода, возникновения событий в аппаратуре компьютера, истечений таймеров и квантов времени, или же поступлений тех или иных сигналов от одной программы к другой. В этом виде многозадачности процессор может быть переключен с исполнения одной программы на исполнение другой без всякого пожелания первой программы и буквально между любыми двумя инструкциями в ее коде. Распределение процессорного времени осуществляется планировщиком процессов. К тому же каждой задаче может быть назначен пользователем или самой операционной системой определенный приоритет, что обеспечивает гибкое управление распределением процессорного времени между задачами (например, можно снизить приоритет ресурсоемкой программы, снизив тем самым скорость ее работы, но повысив производительность фоновых процессов). Этот вид многозадачности обеспечивает более быстрый отклик на действия пользователя.
2.4 Многопроцессорные ОС.
Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мультипроцессирование. Оно приводит к усложнению всех алгоритмов управления ресурсами.
В наши дни становится общепринятым введение в ОС функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.
Многопроцессорные ОС могут классифицироваться по способу организации вычислительного процесса в системе с многопроцессорной архитектурой: асимметричные ОС и симметричные ОС. Асимметричная ОС целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам. Симметричная ОС полностью децентрализована и использует весь пул процессоров, разделяя их между системными и прикладными задачами.
2.5 ОС с пакетной обработкой.
Системы пакетной обработки предназначались для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Главной целью и критерием эффективности систем пакетной обработки является максимальная пропускная способность, то есть решение максимального числа задач в единицу времени. Для достижения этой цели в системах пакетной обработки используются следующая схема функционирования: в начале работы формируется пакет заданий, каждое задание содержит требование к системным ресурсам; из этого пакета заданий формируется мультипрограммная смесь, то есть множество одновременно выполняемых задач. Для одновременного выполнения выбираются задачи, предъявляющие отличающиеся требования к ресурсам, так, чтобы обеспечивалась сбалансированная загрузка всех устройств вычислительной машины; так, например, в мультипрограммной смеси желательно одновременное присутствие вычислительных задач и задач с интенсивным вводом-выводом. Таким образом, выбор нового задания из пакета заданий зависит от внутренней ситуации, складывающейся в системе, то есть выбирается "выгодное" задание. Следовательно, в таких ОС невозможно гарантировать выполнение того или иного задания в течение определенного периода времени. В системах пакетной обработки переключение процессора с выполнения одной задачи на выполнение другой происходит только в случае, если активная задача сама отказывается от процессора, например, из-за необходимости выполнить операцию ввода-вывода. Поэтому одна задача может надолго занять процессор, что делает невозможным выполнение интерактивных задач. Таким образом, взаимодействие пользователя с вычислительной машиной, на которой установлена система пакетной обработки, сводится к тому, что он приносит задание, отдает его диспетчеру-оператору, а в конце дня после выполнения всего пакета заданий получает результат. Очевидно, что такой порядок снижает эффективность работы пользователя.
2.6 ОС с системой разделения времени.
Системы разделения времени призваны исправить основной недостаток систем пакетной обработки - изоляцию пользователя-программиста от процесса выполнения его задач. Каждому пользователю системы разделения времени предоставляется терминал, с которого он может вести диалог со своей программой. Так как в системах разделения времени каждой задаче выделяется только квант процессорного времени, ни одна задача не занимает процессор надолго, и время ответа оказывается приемлемым. Если квант выбран достаточно небольшим, то у всех пользователей, одновременно работающих на одной и той же машине, складывается впечатление, что каждый из них единолично использует машину. Ясно, что системы разделения времени обладают меньшей пропускной способностью, чем системы пакетной обработки, так как на выполнение принимается каждая запущенная пользователем задача, а не та, которая "выгодна" системе, и, кроме того, имеются накладные расходы вычислительной мощности на более частое переключение процессора с задачи на задачу. Критерием эффективности систем разделения времени является не максимальная пропускная способность, а удобство и эффективность работы пользователя.
2.7 Интерфейс командной строки.
Интерфейс командной строки — программа, работающая в текстовом режиме, которой человек передаёт команды (текстовые строки) для выполнения определенных действий, путём ввода с клавиатуры. В UNIX-системах также возможно применение мыши. Интерпретатор командной строки также известен под названием консоль.
Интерфейс командной строки противопоставляется системам управления программой на основе меню, а также различным реализациям графического интерфейса.
Формат вывода информации в интерфейсе командной строки не регламентируется; обычно это также простой текстовый вывод, но может быть и графическим, звуковым и т. д.
Основное применение интерфейса командной строки — интерфейс операционной системы. В Windows язык командной строки не имеет чёткой стандартизации, однако существует стандарт командной строки POSIX и его модификация в рамках.
2.8 Графический интерфейс.
Графический интерфейс пользователя — разновидность пользовательского интерфейса, в котором элементы интерфейса (меню, кнопки, значки, списки и т.п.), представленные пользователю на дисплее, исполнены в виде графических изображений.
В отличие от интерфейса командной строки, в ГИП пользователь имеет произвольный доступ, с помощью устройств ввода (клавиатуры, мыши и т.п.), ко всем видимым экранным объектам (элементам интерфейса) и осуществляется непосредственное манипулирование ими. Чаще всего элементы интерфейса в ГИП реализованы на основе метафор и отображают их назначение и свойства, что облегчает понимание и освоение программ пользователями.
Информация о работе Операционные системы. Классификация по различным признакам