Операционные системы

Основные функции ОС

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

Модульная структура операционных систем

Структура ОС носит модульный характер. Программный модуль - программа, рассматриваемая как целое в контекстах хранения в наборе данных, трансляции, объединения с другими программными модулями, загрузки в оперативную память для выполнения или разработки в составе программного комплекса. При разработке программного обеспечения его разделение на модули происходит по функциональному признаку, что способствует минимизации числа межмодульных связей и, следовательно, уменьшению сложности разрабатываемого программного комплекса. Размеры модулей при этом обычно составляют несколько десятков, реже несколько сотен операторов алгоритмического языка. При исполнении программ различают исходный модуль - программу, выраженную на принятом при разработке комплекса языке программирования, объектный модуль - программу, полученную в результате трансляции на машинный язык, и загрузочный модуль - программу, прошедшую редактирование и готовую к помещению в оперативную память и после настройки адресных констант по месту загрузки - к исполнению. Загрузочный модуль может включать в себя несколько объектных и ранее отредактированных загрузочных модулей. Рассмотрим последовательность обработки задания на ЭВМ. Решение любой задачи на ЭВМ начинается с написания ее алгоритма на языке программирования. Текст алгоритма называется исходной программой или исходным модулем. Первый этап обработки - трансляция, т.е. перевод текста исходного модуля с какого либо языка программирования на язык машинных команд конкретной ЭВМ. Трансляция осуществляется с помощью специальных, сложных программ - трансляторов, которые входят в состав комплекта системных обрабатывающих программ ОС. Транслятор загружается в оперативную память (RAM) ЭВМ, ему передается управление центральным процессором, входной информацией для него служит транслируемый исходный модуль, результатом работы является текст программы на машинном языке - объектный модуль. Сложные программные комплексы состоят из многих модулей, поэтому, перед этапом выполнения программы необходимо объединение всех модулей и определение связей между ними. В современных ОС такое объединение модулей осуществляется после этапа трансляции перед загрузкой программы в RAM ЭВМ для выполнения. Процесс установления межмодульных связей в различных ОС называют редактированием связей (компоновкой задач, построением задач), и выполняется он с помощью специальной программы редактора связей. Программа редактора связей осуществляет первичное разрешение межмодульных ссылок. Предположим, что в модуле А существует команда обращения к модулю В - call В. Редактор связей после объединения обоих модулей в единый загрузочный модуль в соответствующей машинной команде должен проставить адрес модуля В, определенный относительно начала всего загрузочного модуля. Чтобы программа могла выполняться, единый загрузочный модуль должен быть помещен в RAM ЭВМ. Эту операцию называют этапом загрузки , а программу, которая осуществляет загрузку, - загрузчиком или программой выборки.

Операционные системы общего назначения

Различают три типа ОС общего назначения: поддерживающие однопрограммный режим работы и диалоговый способ общения, обеспечивающие пакетную обработку задач в режиме мультипрограммирования и операционные системы разделения времени. 1. Операционные системы общего назначения, поддерживающие однопрограммный режим работы и диалоговый способ общения включают в себя средства, обеспечивающие ввод и вывод информации, управляют работой системных обрабатывающих программ - трансляторов, редакторов, предоставляют пользователю сведения о ходе выполнения задач, обеспечивают работу с библиотеками. Обычно такие операционные системы называют мониторными. Они не повышают производительности ЭВМ, но позволяют программисту вмешиваться в ход выполнения задания, что резко повышает производительность его работы, особенно на этапе отладки программ. 2. Операционные системы общего назначения, обеспечивающие пакетную обработку задач в режиме мультипрограммирования применяются в ВС средней и большой производительности. В RAM ЭВМ одновременно находится несколько системных и пользовательских задач, и когда одна из них обрабатывается процессором, то для остальных осуществляются необходимые обмены с внешним устройством (ВУ). Эффективность использования ВС при этом во многом зависит от состава пакета задач, подлежащих выполнению, так как могут возникать ситуации, когда все задачи находятся в состоянии ожидания и процессор простаивает ( в условиях потока отладочных задач, каждая из которых характеризуется многократными обменами и незначительным временем, затрачиваемым собственно на счет). Эффективность работы пользователя при этом невысокая, так как в условиях пакетной обработки задач он не имеет возможности вмешиваться в процесс выполнения своей программы. Рассмотрим основные функции ОС общего назначения, обеспечивающей мультипрограммный режим обработки задач. Операционная система должна выполнять рациональное планирование работ по обработке всех поступающих задач (комплекс мероприятий по вводу задач в ЭВМ, распознаванию их характеристик, размещению всех входных наборов данных на внешних носителях, организации входных и выходных очередей). Как правило, задачи из входного потока данных, прочитанного одним из внешних устройств (ВУ), не сразу попадают в RAM ЭВМ, а размещаются на устройствах внешней памяти. В режимах пакетной обработки задачи выстраиваются в очередь (входную очередь), место задачи в очереди определяется ее приоритетом. Перенос задачи из очереди в RAM ЭВМ происходит автоматически. При реализации комплекса мероприятий, выполняемого ОС непосредственно перед началом решения задачи, главное внимание уделяется предоставлению всех необходимых для решения задачи ресурсов ВС (области RAM, места на диске, требующихся наборов данных и т.п.) Если для решения очередной задачи не хватает ресурсов, ОС должна принять одно из следующих решений: · отобрать часть ресурсов у какой - либо другой задачи, выполнявшейся в данный момент и менее приоритетной; · подождать, пока какая-нибудь из решаемых задач завершится и освободит требуемый ресурс; · пропустить вне очереди ту задачу, чья очередь еще не подошла, но для выполнения которой ресурсов достаточно. 3. Операционные системы разделения времени позволяют реализовать возможность повышения производительности труда пользователя за счет его доступа к своей задаче в процессе ее выполнения и повышения производительности ВС за счет мультипрограммирования. Режим разделения времени создает иллюзию одновременного доступа нескольких пользователей ко всем вычислительным ресурсам ВС. Каждый пользователь общается с системой так, как если бы ему одному принадлежали все вычислительные ресурсы: он может остановить выполнение своей задачи в нужном месте, просмотреть требуемые области RAM, с заданного места выполнить свою программу по командам и т.д. На самом же деле каждый пользователь получает для своей задачи достаточную зону RAM, процессор и прочие вычислительные ресурсы только в течение определенного и достаточно малого интервала времени, как уже говорилось выше - кванта. Пропускная способность ВС в режиме разделения времени ниже, чем при обработке задач в режиме мультипрограммирования, из-за накладных расходов ОС, вызванных частыми переключениями процессора и главным образом многочисленными переносами задач из RAM на жесткий диск и обратно, то есть свопингами. Во многих пользовательских системах режим разделения времени сочетается с пакетной обработкой задач в режиме мультипрограммирования. В этом случае RAM ЭВМ разделяется на зону для пакетной обработки и на зону (или несколько зон в зависимости от емкости RAM) для выполнения задач в режиме разделения времени. Такое сочетание позволяет загружать процессор даже в ситуациях, когда все пользователи режима разделения времени остановят выполнение своих задач. Такие системы используются при решении научно- технических задач. При этом главное назначение таких ОС - обеспечение более высокой эффективности использования всех вычислительных ресурсов ВС и достижение максимальных удобств в работе пользователя. Однако использование операционных систем общего назначения в условиях работы конкретного пользователя часто означает явную избыточность многих системных средств. В таких случаях применяют ОС специального назначения.

Операционные системы специального назначения

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

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

 2. Операционные систиемы, предназначенные для организации работы вычислительных сетей Работа ОС в вычислительной сети характеризуется определенными особенностями. Главной из них является необходимость организации передачи данных внутри вычислительной сети. Любая информация внутри вычислительной сети передается отдельными порциями - блоками данных. Основные требования, предъявляемые к ОС по передаче блоков данных, можно сформулировать следующим образом: · блоки данных должны циркулировать в сети асинхронно и независимо в обоих направлениях между источником сообщения и его адресатом; · ОС должны осуществлять контроль за прохождением блока данных в течение всего периода его пребывания в сети; · необходимы программные и аппаратные средства, предотвращающие потерю или искажения блоков данных при одновременном нахождении их в вычислительной сети; · ОС должны включать в себя механизм обнаружения повторных, потерянных или ошибочных блоков данных в вычислительной сети.

Операционные системы, основанные на графическом интерфейсе

Операционная системы семейства Windows. Оболочка Windows включает в себя множество компонентов и обеспечивает пользователям различной квалификации комфортные условия работы. В течение долгих лет с момента своего появления персональные компьютеры (IBM - совместимые) обходились без специальных "пользовательских оболочек", работая непосредственно под управлением операционной системы (MS-DOS, DR DOS, PC-DOS). Все операции управления компьютером производились путем ввода с клавиатуры некоторых слов - директив. Неудобство такого алфавитно-цифрового интерфейса порождало претензии и к самим компьютерам (возможно и не совсем обоснованные). Работа с персональной ЭВМ мало отличалась от работы, например, на мини-ЭВМ: необходимо было хорошо знать операционную систему. 

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

        Windows представляет собой графическую оболочку. От пользователя не требуется ввод директив с клавиатуры в виде текстовых строк. Необходимо только внимательно смотреть на экран и выбирать из предлагаемого набора требуемую операцию с помощью манипулятора мышь. Курсор мыши следует позиционировать на поле требуемой директивы меню, или на интересующую вас пиктограмму, или на поле переключателя (кнопки). На выбранном объекте необходимо зафиксировать курсор кнопкой мыши - и операция выполняется. С помощью того же манипулятора можно перемещать пиктограммы и окна по экрану, менять их размер, открывать и закрывать их - и все это при минимальном использовании клавиатуры для ввода каких бы то ни было директив. Кроме того, для любителей традиционного интерфейса DOS реализована возможность выхода на этот уровень. При разработке графического интерфейса Windows не последнюю роль играли и эргономические соображения: учтены требования к цветовой гамме, сочетаниям цветов, шрифтам, формам и размерам пиктограмм и окон. По сравнению с некоторыми другими пакетами внешнее оформление оболочки Windows может быть признано "спартанским" вследствие отсутствия излишеств и за деловой стиль. Понятие "графически - ориентированный" включает в себя для Windows также и соответствие изображения на экране последующему изображению на твердой копии (распечатке). В этом плане можно считать, что в оболочке Windows реализован принцип WYSIWYG (What you see is what you get = То, что вы видите, вы и получаете), до сих пор бывший привилегией небольшого числа программ.

Генерация операционной системы

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

Другие записи

10.06.2016. ОПЕРАЦИОННАЯ СИСТЕМА MS-DOS НАЗНАЧЕНИЕ ОПЕРАЦИОННОЙ СИСТЕМЫ
Операционная система представляет собой комплекс программ. В отличие от прикладных программ, ориентированных на решение некоторой конкретной прикладной задачи (например, программ обработки текста),…
10.06.2016. История создания и развития операционной системы DOS
Всего за несколько лет система МS DOS прошла путь от простого загрузчика до универсальной сложившейся операционной системы для персональных компьютеров, построенных на базе микропроцессоров Intel 8086.…
10.06.2016. Структура DOS
Базовая система ввода-вывода (BIOS) Модуль BIOS индивидуален для каждой вычислительной системы и поставляется её изготовителем. В этом модуле содержатся аппаратно-зависимые драйверы следующих устройств:…
10.06.2016. Управление оперативной памятью
Оперативная (или рабочая) память компьютера - ОЗУ (Оперативное Запоминающее Устройство) - собрана на полупроводниковых кристаллах (чипах - chip) и хранит информацию, только пока компьютер включен. При…
10.06.2016. Файловая система DOS
Основные понятия и обозначения · Файлы  Каталоги файлов Маршрут - префикс имени файла Файлы Файл - это именованная область памяти на каком-либо физическом носителе (обычно на диске),…