Требования к современной операционной системе. Тема 2б

Содержание

Слайд 2

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

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

Слайд 3

Требования функциональной полноты Главным требованием, предъявляемым к операционной системе, является выполнение

Требования функциональной полноты

Главным требованием, предъявляемым к операционной системе, является выполнение ею

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

Функциональные компоненты операционной системы Для этого в состав ОС должны входить функциональные компоненты:

Функциональные компоненты операционной системы

Для этого в состав ОС должны входить

функциональные компоненты:
Слайд 5

Эксплуатационные требования к ОС расширяемость переносимость совместимость Надежность и отказоустойчивость безопасность производительность

Эксплуатационные требования к ОС

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

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

совместимость

Надежность и отказоустойчивость

безопасность

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

Слайд 6

Расширяемость В то время как аппаратная часть компьютера устаревает за несколько

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

В то время как аппаратная часть компьютера устаревает за несколько лет,


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

Переносимость Если код операционной системы может быть сравнительно легко перенесен с

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

Если код операционной системы может быть сравнительно легко перенесен с процессора

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

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

Правила, обеспечивающие успешную переносимость ОС

1. Большая часть кода операционной системы должна

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

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

Правила, обеспечивающие успешную переносимость ОС

Большая часть кода операционной системы должна быть

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

Совместимость Иногда по тем или иным причинам пользователю приходится переходить с

Совместимость

Иногда по тем или иным причинам пользователю приходится переходить с одной

ОС на другую…

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

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

Слайд 11

Совместимость Совместимость на уровне двоичных кодов достигается в том случае, когда

Совместимость

Совместимость на уровне двоичных кодов достигается в том случае, когда можно

взять исполняемую программу и запустить его на исполнение в среде другой ОС и получить один и тот же результат.

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

Слайд 12

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

Совместимость

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

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

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

Приложение А для ОС1

Приложение А для ОС2

Исходный текст приложения А для ОС2

Исходный текст приложения А для ОС1

Системные библиотеки

Система программирования (компилятор)

Слайд 13

Совместимость Обладает ли новая ОС двоичной совместимостью или совместимостью исходных текстов

Совместимость

Обладает ли новая ОС двоичной совместимостью или совместимостью исходных текстов с

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

процессор использует тот же набор команд и тот же диапазон адресов

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

процессоры имеют совершенно различную архитектуру

Необходима эмуляция

Слайд 14

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

Совместимость. Эмуляция.

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

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

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

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

Слайд 15

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

Надежность и отказоустойчивость

Система должна быть защищена как от внутренних, так и

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

Безопасность Современная ОС должна защищать данные и другие ресурсы вычислительной системы

Безопасность

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

доступа.
Чтобы ОС обладала свойством безопасности, она должна как минимум иметь в своем составе средства:
аутентификации — определения легальности пользователей,
авторизации — предоставления легальным пользователям дифференцированных прав доступа к ресурсам,
аудита — фиксации всех «подозрительных» для безопас­ности системы событий.

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