Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Принцип независимости программ от внешних устройств




СРЕДЫ И ОБОЛОЧКИ»

ТЕМА № 1. ВВЕДЕНИЕ В ОПЕРАЦИОННЫЕ СИСТЕМЫ

ЛЕКЦИЯ № 2: ПРИНЦИПЫ ПОСТРОЕНИЯ ОПЕРАЦИОННЫХ СИСТЕМ

 

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

 

 

УЧЕБНЫЕ ВОПРОСЫ:

 

1. Основные принципы построения операционных систем.

 

2. Микроядерные и монолитные операционные системы.

 

3. Принципы построения интерфейсов операционных систем.

 

4. Требования к операционным системам реального времени.

 

УЧЕБНАЯ ЛИТЕРАТУРА:

 

Основная:

1. Кондратьев В.К., Головина О.С. ОПЕРАЦИОННЫЕ СИСТЕМЫ И ОБОЛОЧКИ. – С. 34…42.

2. Олифер В.Г., Олифер Н.А. СЕТЕВЫЕ ОПЕРАЦИОННЫЕ СИСТЕМЫ. – С.57…78.

Дополнительная:

1.

 

1. Основные принципы построения операционных систем.

 

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

Итак, в н.в. разработка операционных систем осуществляется в соответствии со следующими принципами:

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

Принцип функциональной избирательности

Принцип генерируемости ОС

Принцип функциональной избыточности

Принцип виртуализации

Принцип независимости программ от внешних устройств

Принцип совместимости

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

Принцип модульности (переносимости)

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

 

Рассмотрим их несколько подробнее.

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

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

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

· привилегированные;

· повторно входимые;

· реентерабельные.

В некоторых ОС реентерабельность достигается автоматически:

· при неизменяемости кодовых частей программы при исполнении;

· при автоматическом распределении регистров;

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

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

 

Принцип функциональной избирательности

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

1. в состав ядра должны войти наиболее часто используемые системные модули;

2. количество модулей должно быть таковым, чтобы объем памяти, занимаемый ядром, не был слишком большим.

В состав ядра входят, как правило, следующие модули:

· модули по управлению системой прерываний;

· средства по переводу программ из состояния выполнения в состояние ожидания, готовности и обратно;

· средства по распределению основных ресурсов: оперативной памяти и процессорного времени.

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

 

Принцип генерируемости ОС

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

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

 

Принцип функциональной избыточности

Этот принцип дает возможность проведения одной и той же работы различными способами. В состав ОС может входить:

· несколько типов планировщиков (модулей супервизора, управляющих тем или иным видом ресурсов);

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

Это дает возможность пользователям:

· быстро и наиболее адекватно адаптировать ОС к определенной конфигурации вычислительной системы;

· обеспечить максимально эффективную загрузку технических средств при решении конкретного класса задач;

· получить максимальную производительность при решении заданного класса задач.

 

Принцип виртуализации

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

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

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

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

· произвольное количество (виртуальных) процессоров, способных работать параллельно и взаимодействовать во время работы. Способы управления процессорами (синхронизация и информационные взаимодействия) реализованы и доступны пользователям на уровне используемого языка в терминах управления процессами;

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

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

 

Принцип независимости программ от внешних устройств

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

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

 

Принцип совместимости

Одним из аспектов совместимости является способность ОС выполнять программы, написанные:

· для других ОС;

· для более ранних версий данной операционной системы;

· для другой аппаратной платформы.

Совместимость подразделяется на два аспекта:

· двоичная совместимость;

· совместимость на уровне исходных текстов приложений.

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

· совместимость на уровне команд процессора;

· совместимость на уровне системных вызовов;

· совместимость на уровне библиотечных вызовов, если они являются динамически связываемыми.

Совместимость на уровне исходных текстов требует:

· наличия соответствующего транслятора в составе системного программного обеспечения;

· совместимости на уровне библиотек и системных вызовов.

Необходимо перекомпилировать имеющиеся исходные тексты в новый выполняемый модуль.

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

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...