Архитектура операционной системы

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

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

3. Система программирования включает прежде всего такие компоненты, как транслятор с соответствующего языка, библиотеки подпро­грамм, редакторы, компоновщики и отладчики. Не бывает самостоятельных (оторванных от ОС) систем программирования. Любая система программи­рования может работать только в соответствующей ОС, под которую она и создана, однако при этом она может позволять разрабатывать программное обеспечение и под другие ОС. Система программирования – это весь комплекс программных средств, предназначенных для кодирования, тестирования, отладки программного обеспечения. Примеры систем программирования: Borland Delphi, Microsoft Visual Basic, Turbo Pascal и т. д.

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

 

 

 

Большинство современных операционных систем представляют собой хорошо структурированные модульные системы, способные к развитию, расширению и переносу на новые платформы. Какой-либо единой архитектуры ОС не сущест­вует, но существуют универсальные подходы к структурированию ОС.

2.2.1 Ядро и вспомогательные модули ОС

 

Наиболее общим подходом к структуризации операционной системы является разделение всех ее модулей на две группы (см. рис. 2.2):

· ядро — модули, выполняющие основные функции ОС;

·

 
 

модули, выполняющие вспомогательные функции ОС.

 

Рис. 2.2 Структура операционной системы

 

Модули ядра выполняют такие базовые функции ОС, как управление процесса­ми, памятью, устройствами ввода-вывода и т. п.

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

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

Вспомогательные модули ОС обычно подразделяются на следующие группы:

· утилиты — программы, решающие отдельные задачи управления и сопрово­ждения компьютерной системы, такие, например, как программы сжатия дисков, архивирования данных на магнитную ленту;

· системные обрабатывающие программы — текстовые или графические редак­торы, компиляторы, компоновщики, отладчики;

· программы предоставления пользователю дополнительных услуг – специальный вариант пользовательского интерфейса, калькулятор и даже игры;

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

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

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