
Мультипрограммные режимы.
Мультипрограммирование это способ организации вычислительного процесса, при котором на одном процессоре попеременно выполняются несколько различных программ. Реализация мультипрограммирования потребовала внесения изменений в аппаратуре компьютера. В процессорах появились два режима работы: привелигированные и пользовательский. В составе микропроцессоров появились специальные регистры предназначение для переключения процессоров с одной задачи на другую. Были созданы специальные средства защиты областей памяти, а так же развито система прерывания. Для повышения эффективности ОС используют такие средства как мультипрограммирование, многозадачность, которые дают возможность вычислительной системы обеспечить выполнение нескольких программ на одном процессоре. Мультипрограммирование позволяет повысить общую пропускную способность системы, обеспечивает возможность интерактивной работы, для нескольких пользователей или предоставляет возможность одному пользователю одновременно работать с несколькими приложениями. По режиму обработки задач различают ОС обеспечивающие однопрограммный и мультипрограммный режимы. Под мультипрограммными режимами понимают способ организации вычислений, когда на однопроцессорной машине создается видимость выполнения нескольких программ, различия между мультипрограммным и мультизадачным режимом заключается в том, что в мультипрограммном режиме обеспечиваются параллельное выполнение нескольких приложений и при этом программист прикладных программ или решающий прикладные задачи не должен заботиться об организации их параллельной работе. Эти функции берёт на себя ОС. Она распределяет между выполняющимися приложениями ресурсы вычислительной системы. Мультизадачный режим предполагает, что забота о параллельном выполнение приложений ложиться непосредственно на прикладных программистов. Современные ОС реализуют как мультипрограммный, так и мультизадачный режим.
У ОС поддерживающих мультипрограммирование необходимо наличие специальных программ ввода-вывода, управления памятью, т.е. система должна распределить память для нескольких различных прикладных заданий, ОС должна иметь в наличие специальные алгоритмы процесса планирования загрузки процесса. ОС должна управлять функции спулинга, т.е. обеспечивать буферизацию устройств ввода вывода.
Многозадачный режим.
По числу одновременно выполняющихся задач ОС подразделяются на одно задачные и много задачные, однозадачные ОС выполняют функции предоставления пользователю виртуальной машины делая процесс взаимодействия между пользователем и компьютером комфортным для решения разнообразных задач. Однозадачные операционные системы (МС ДОС) включает в себя средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем. Многозадачные операционные системы (Юникс, Линукс, Виндоус) включают средства управления периферийными устройствами и оборудования, средства управления файлами, обеспечивает интерфейс пользователя, содержит средства управления внешними устройствами, управляют современным использованием ресурсов, таких как процессорное время, оперативная память. По числу одновременно работающих пользователей ОС делятся на однопользовательские и многопользовательские. Однопользовательские системы (МС ДОС, Винда в детстве), многопользовательские (Виндуус в зрелости, Линукс). Основным отличием ОС от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Многозадачные операционные системы необязательно должны быть многопользовательскими. Однопользовательские ОС могут быть много задачными, важнейшим ресурсом, которым управляют ОС, является процессорное время, способ распределения процессорного времени между несколькими одновременно существующими системами процессоров или нитями во многом определяют специфику ОС. Среди различных вариантов реализации многозадачных функций, как правило, можно выделить две группы алгоритмов: невытесняющая многозадачных и вытесняющая многозадачных. Основным различием между вытесняющим и невытесняющим алгоритмом многозадачных функций является степень централизации механизма планирования процесса. В случае вытесняющего алгоритма механизм планирования процесса целиком сосредоточен в ОС. В случае не вытесняющего алгоритма механизм распределён между системой и прикладными программами. При невытесняющей многозадачности активный процесс не выполняется до тех пор пока он сам способствует инициативе и не отдаёт управление операционной систем для того что бы та выбрала из очереди другой готовый к выполнению процесс.
При вытесняющей многозадачности решение о переключение процессора с одного процесса на другой принимаются ОС, а не самим активным процессом.
30.09.2009
По типу аппаратуры различают:
Операционные системы ПК
ОС мини ЭВМ
ОС меин Фреймов
ОС кластеров
ОС сетей ЭВМ
Под кластерами понимаются вычислительные системы, состоящие из группы компьютеров ориентированных на решение общих задач. Специфика аппаратных средств, как правило, всегда отражается в особенностях ОС, например ОС меид Фреймов являються более функциональными и сложными чем ОС ПК. В ОС больших ЭВМ функции по планированию потоков выполняемых задач реализуются путём сложных приоритетных которые требуют большей вычислительной мощности, чем ОС ПК. Сетевые операционных системы для поддержки функций передачи сообщений содержит специальные программные компоненты, реализующие коммуникационные протоколы и обеспечивающие много уровневую организацию среды передачи данных. Многопроцессорные системы требуют от ОС специальной организации с помощью, которой сама ОС, а так же приложения которые поддерживаются ОС могли выполняться параллельно отдельными процессорами системы. Параллельная работа отдельных компонентов ОС создаёт дополнительные проблемы т.к. сложно обеспечить доступ отдельных выполняемых процессов в системных таблицах, сложно ислюбчить эффект гона и другие не желательные последствия асинхронного выполнения работы. Особенно сложно обеспечить функционирование ОС кластеров. Кластер – слабо связанная совокупность нескольких вычислительных систем работающих совместно для выполнения общих приложений и представляющейся пользователю единой вычислительной системой. Для функционирования кластерных систем на ряду со специальной аппаратурой необходимо программная поддержка со стороны ОС, которая сводиться к синхронизации доступа к разделяемым ресурсам обнаружению отказов и динамической реконфигурации системы. Несмотря на зависимость ОС от аппаратных платформ существуют ОС разработанные таким образом, что они могут быть легко перенесены с одного типа компьютера на другой, такие ОС называются мобильными. Ярким представителем таких систем является операционная система ЮНИКС. В мобильных операционных система аппаратно зависимые места тщательно локализуют таким образом, что бы при переносе ОС на новую аппаратную платформу переписывать только локализованные модули. Много задачные ОС в соответствие с использованием при их разработке критериев эффективности, подразделяются на 3-и группы:
Система пакетной обработки
Система разделения времени
Система реального времени
Система пакетной обработки предназначена для решения задач в основном вычислительного характера не требующих немедленного получения результатов. Главной целью критериев эффективности систем пакетной обработки являются максимальная ... мспособность, т.е. решение максимального числа задач в единицу времени. Для достижения этой цели в программах пакетной обработки в начале работы формируется пакет заданий при этом в каждом задание содержаться требования к системным ресурсам. Из этого пакета заданий формируется мультипрограммная смесь, т.е. множество одновременно выполняемых задач. Для одновременного выполнения выбираются такие задачи, которые предъявляют различные требования к ресурсам, это делается для того что бы обеспечить сбалансированность нагрузки всех устройств вычислительной системы. В системах пакетной обработки переключение процессора с выполнением одной задачи на другую происходит лишь в тои случае если вычислительная система освобождает процесс выполнения от выполнения конкретной задачи, например, с операциями ввода-вывода. Таким образом, выбор нового задания из пакета зависит от внутренней ситуации, складывающей в системе, и таким образом выбирается выгодное задание. С другой стороны в ОС с пакетной обработкой невозможно гарантировать выполнение того или иного задания в определённое время. В системах пакетной обработки переключение процессов с выполнения одной задачи на выполнение другой происходит только в том случае если вычислительная система освобождает процессор от выполнения активной задачи, например в связи, с проведением операции ввода вывода. Таким образом одна задача может долго занимать процессор что делает невозможным выполнение интерактивных задач. ОС разделения времени призваны устранить такой недостаток в работе систем пакетной обработки как изоляция программиста от выполнения его конкретных прикладных задач. Каждому пользователю вычислительной системы оснащенной ОС предоставляется терминал или рабочая станция с которого он может вести диалог с ЭВМ для решения его прикладной задачи. В системах разделения времени каждой задачи выделяется только один квант процессорного времени при этом не одна из задач не занимает процессор на долго и поэтому время ответа от вычислительной системы становиться приемлемой. Как правило, квант времени выбирается небольшим обычно это доли секунды у всех пользователей, работающих на одной ЭВМ создаться впечатление, что каждый из них единолично использует машину. Системы разделения времени обладают меньшей пропускной способностью, чем системы пакетной обработки. В этих системах последовательно выполняются все задачи, а не только те которые выгоны системе. Недостатком систем разделения времени является наличие дополнительных потерь времени необходимых на частое переключение процессора с решения одной задачи на другую. ОС реального времени применяются для управления различными техническими объектами или сложными технологическими процессами. Во всех случаях использования ОС реального времени существует предельно допустимое время в течение, которого должны быть выполнена та или иная программа направления объектом т.к. в противном случае может произойти оборывание. Критерием эффективности для систем реального времени является способность выдерживать заданные интервалы времени между запуском программы и получением результата. Это время называется временем реакции системы, а соответствующее свойство системы называется реактивность. Различают ОС общего и специального назначения. специального назначения подразделяются на следующие: на операционные системы решения задач реального времени, на операционные системы для различных встроенных систем, на операционные системы организации и ведения баз и банков данных. По режиму обработки задач выделяют ОС однопрограммные и мультипрограммные. По организации работы с вычислительной системой выделяют ОС однопользовательские и многопользовательские. В мультитерминальных ОС с одной ЭВМ одновременно могут работать несколько пользователей, причём каждый пользователь работает непосредственно со своей рабочей станцией, при этом у каждого пользователя возникает элизия, что он является единоличным пользователем вычислительной системы. По архитектурному признаку выделяют монолитные ОС и микроядерные ОС.
7.10.2009
Основные принципы построения систем:
При описании ОС указывают особенность ее структурной организации, и основные концепции, положенные в ее основу. К таким базовым концепциям относятся: способы построения ядра ОС (монолитное ядро, микроядро). Большинство современных ОС используют монолитное ядро, которое компонуется, как одна программа, работающая в привилегированном режиме, использующая быстрые переходы с одной процедуры на другую, не требующей переключения из привилегированного режима в пользовательский и наоборот. Альтернативой является построение ОС на базе микроядра , работающего так же в привилегированном режиме, выполняющего минимум функция по управлению аппаратурой, в то время как функции ОС более высокого уровня, выполняют специализированные компоненты ОС, серверы работающее в пользовательском режиме. При такой архитектуре ОС, она работает более медленно, так как часто выполняется переход из привилегированного режима в пользовательский, зато система получается более гибкой, её функции можно модифицировать или добавлять, модифицируя или исключая серверы пользовательского режима. Кроме того при такой архитектуре серверы хорошо защищены друг от друга, как и любые другие пользовательские процессы. Построение ОС на базе объектно-ориентированного подхода, дает возможность использовать все его достоинства, хорошо зарекомендовавшие себя на уровне приложений внутри ОС. А именно аккумуляцию удачных решений в форме стандартных объектов , возможность создания новых объектов на базе имеющихся с помощью механизма наследования, позволяет обеспечить хорошую защиту данных, за счет их внедрения во внутренние структуры объекта, что делает данные недоступными для несанкционированного использования извне. Наличие нескольких прикладных сред дает возможность в рамках одной ОС одновременно выполнять приложения разработанные для нескольких ОС. Многие современные ОС поддерживают одновременно прикладные среды различных ОС ( МС ДОС, Виндоус, Юникс) или могут поддерживать некоторые подмножеств из этого набора. Концепция множественных прикладных средств наиболее просто реализуется в ОС на базе микроядра с которым работают различные серверы и часть из которых реализует прикладную среду той или иной ОС. Распределенная организация ОС, позволяет упростить работу пользователей и программистов в сетевых средах. В распределенной ОС реализованные механизмы, которые дают возможность пользователю представлять и воспринимать сети, в виде традиционного однопроцессорного компьютера. Характерными признаками распределенной организации ОС является: наличие единой справочной службы разделяемых ресурсов, единой службы времени, использование механизма вызова отдаленных процедур для распределения программных процедур по машинам, а также наличие многонитевой обработки позволяющей распараллеливать вычисления в рамках одной задачи, или выполнять эту задачу на нескольких компьютерах сети. ОС в настоящее время определяют облик всей вычислительной системы в целом. Современные ОС выполняют в основном две функции: создание программисту максимальных удобств оп средством представления виртуальной ЭВМ и обеспечение удобства повышения эффективности и безопасности использования компьютера путем рационального управления его ресурсами, а так же выполнение пользовательских программ с использованием внешних устройств подключаемых к компьютеру.
14.10.2009