Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Операционные системы и среды.docx
Скачиваний:
10
Добавлен:
23.09.2019
Размер:
1.4 Mб
Скачать

Принцип открытой и наращиваемой ос

Принцип открытости и наращиваемости

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

Принцип мобильности

Принцип мобильности

Принцип мобильности: операционная система относительно легко должна перено-

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

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

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

Введение стандартов POSIX преследовало цель обеспечить переносимость создаваемого программного обеспечения.

Принцип обеспечения безопасности вычислений

Принцип обеспечения безопасности вычислений

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

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

7)Требования к операционным системам

Производительность

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

Расширяемость

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

Наращиваемость

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

Масштабируемость

Масштабируемость (scalability) это свойство, которое характеризует предсказуемость роста системных характеристик, например, числа поддерживаемых пользователей, быстроты реакции, общей производительности и пр., при добавлении к ней вычислительных ресурсов, например дополнительных процессоров, оперативной памяти, внешних ЗУ.

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

Устойчивость

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

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

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

Модульность

Другой возможный путь развития операционных систем - модульные или объектно-ориентированные ОС. Основная идея такой операционной системы - использовать вместо целых программ небольшие блоки кода, подгружаемые по мере необходимости. Причем совершенно не важно, находятся ли все блоки такой распределенной программы в одном месте или каждый отдельный объект хранится на своем сервере и загружается отдельно по сети. Эти идеи отчетливо прослеживаются в стратегии распределенных переносимых объектов (Portable Distributed Objects - PDO), которую предлагает компания NeXT, или в технологии Java, разработанной Sun Microsystems.

Переносимость

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

Интероперабельность (Межоперабельность)

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

Для ОС оно может означать следующее.

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

Интернационализация

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

Управляемость

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

8) Многозадачность операционных систем

Многозада́чность (англ. multitasking) — свойство операционной системы или среды программирования обеспечивать возможность параллельной (илипсевдопараллельной) обработки нескольких процессов. Истинная многозадачность операционной системы возможна только в распределённых вычислительных системах.

Существует 2 типа многозадачности[1]:

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

  • Поточная многозадачность (основанная на потоках). Наименьший элемент управляемого кода — поток (одна программа может выполнять 2 и более задачи одновременно).