Файл: Функции операционных систем персональных компьютеров (изучение функций операционных систем персональных компьютеров).pdf
Добавлен: 23.04.2023
Просмотров: 274
Скачиваний: 1
Верхний уровень – пользователи – люди и другие компьютеры. Отнесение пользователя–человека к компонентам компьютерной системы – вовсе не шут–ка, а реальность: любой пользователь фактически становится частью вычисли–тельной системы в процессе своей работы на компьютере, так как должен подчиняться определенным строгим правилам, нарушение которых приведет к ошибкам или невозможности использования компьютера, и выполнять большой объем типовых рутинных действий – почти как сам компьютер.
Существуют две группы определений операционной системы: «набор программ, управляющих оборудованием» и «набор программ, управляющих другими программами». Обе они имеют свой точный технический смысл, который связан с вопросом, в каких случаях требуется операционная система.
Есть приложения вычислительной техники, для которых операционные системы излишни. Например, встроенные микрокомпьютеры, содержащиеся во многих бытовых приборах, автомобилях (иногда по десятку в каждом), простейших сотовых телефонах, постоянно исполняют лишь одну программу, запускающуюся по включении. Многие простые игровые приставки – также представляющие собой специализированные микрокомпьютеры – могут обходиться без операционной системы, запуская при включении программу, записанную на вставленном в устройство «картридже» или компакт–диске. Основные компоненты компьютера, управляемые операционной системой, представлены на рисунке 3
Рисунок 3. Компоненты персонального компьютера
Операционные системы нужны, если:
- вычислительная система используется для различных задач, причём программы, решающие эти задачи, нуждаются в сохранении данных и обмене ими. Из этого следует необходимость универсального механизма сохранения данных; в подавляющем большинстве случаев операционная система отвечает на неё реализацией файловой системы. Современные системы, кроме того, предоставляют возможность непосредственно «связать» вывод одной программы со вводом другой, минуя относительно медленные дисковые операции;
- различные программы нуждаются в выполнении одних и тех же рутинных действий. Например, простой ввод символа с клавиатуры и отображение его на экране может потребовать исполнения сотен машинных команд, а дисковая операция – тысяч. Чтобы не программировать их каждый раз заново, операционные системы предоставляют системные библиотеки часто используемых подпрограмм (функций);
- между программами и пользователями системы необходимо распределять полномочия, чтобы пользователи могли защищать свои данные от несанкционированного доступа, а возможная ошибка в программе не вызывала тотальных неприятностей;
- необходима возможность имитации «одновременного» исполнения нескольких программ на одном компьютере (даже содержащем лишь один процессор), осуществляемой с помощью приёма, известного как «разделение времени». При этом специальный компонент, называемый планировщиком, делит процессорное время на короткие отрезки и предоставляет их поочерёдно различным исполняющимся программам (процессам);
- оператор должен иметь возможность так или иначе управлять процессами выполнения отдельных программ. Для этого служат операционные среды – оболочка и наборы утилит – они могут являться частью операционной системы
Таким образом, современные универсальные операционные системы можно охарактеризовать, прежде всего, как:
- использующие файловые системы (с универсальным механизмом доступа к данным),
- многопользовательские (с разделением полномочий),
- многозадачные (с разделением времени).
Многозадачность и распределение полномочий требуют определённой иерархии привилегий компонентов самой операционной системе. В составе операционной системы различают три группы компонентов:
- ядро, содержащее планировщик; драйверы устройств, непосредственно управляющие оборудованием; сетевая подсистема, файловая система;
- системные библиотеки;
- оболочка с утилитами.
Большинство программ, как системных (входящих в операционную систему), так и прикладных, исполняются в непривилегированном («пользовательском») режиме работы процессора и получают доступ к оборудованию (и, при необходимости, к другим ресурсам ядра, а также ресурсам иных программ) только посредством системных вызовов. Ядро исполняется в привилегированном режиме: именно в этом смысле говорят, что система (точнее, её ядро) управляет оборудованием.
В определении состава операционной системы значение имеет критерий операциональной целостности (замкнутости): система должна позволять полноценно использовать (включая модификацию) свои компоненты. Поэтому в полный состав операционной системы включают и набор инструментальных средств (от текстовых редакторов до компиляторов, отладчиков и компоновщиков)
Классификация и функции операционных систем
Классификация операционных систем
Существует несколько схем классификации операционных систем. В данном исследовании сообразно рассмотреть несколько классификаций, основанных на принципах работы с пользователем.
По количеству одновременно работающих пользователей:
-
-
-
- Однопользовательские ОС позволяют работать на компьютере только одному человеку.
- Многопользовательские ОС поддерживают одновременную работу на ЭМВ нескольких пользователей за различными терминалами.
-
-
По числу процессов, одновременно выполняемых под управлением системы:
- Однозадачные ОС поддерживают выполнение только одной программы в отдельный момент времени, то есть позволяют запустить одну программу в основном режиме.
- Многозадачные ОС (мультизадачные) поддерживают параллельное выполнение нескольких программ, существующих в рамках одной вычислительной системы на некотором отрезке времени, то есть позволяют запустить одновременно несколько программ, которые будут работать параллельно, не мешая друг другу.
При многозадачном режиме, в оперативной памяти находится несколько заданий пользователей, время работы процессора разделяется между программами, находящимися в оперативной памяти и готовыми к обслуживанию процессором, Параллельно с работой процессора происходит обмен информацией с различными внешними устройствами.
Современные ОС поддерживают многозадачность, создавая иллюзию одновременной работы нескольких программ на одном процессоре. На самом деле за фиксированный период времени процессор обрабатывает только один процесс, а процессорное время делится между программами, организуя тем самым параллельную работу. Это замечание не относится к многопроцессорным системам, в которых в действительности в один момент времени могут выполняться несколько задач.
Многозадачная ОС, решая проблемы распределения ресурсов и конкуренции, полностью реализует мультипрограммный (многозадачный) режим. Многозадачный режим, который воплощает в себе идею разделения времени, называется вытесняющим (preemptive). Каждой программе выделяется квант процессорного времени, по истечении которого управление передается другой программе. Говорят, что первая программа будет вытеснена. В вытесняющем режиме работают пользовательские программы большинства ОС.
По количеству поддерживаемых процессоров (однопроцессорные, многопроцессорные):
- Однопроцессорные ОС
- Многопроцессорные ОС поддерживают режим распределения ресурсов нескольких процессоров для решения той или иной задачи. При многопроцессорном режиме работы два или несколько соединенных и примерно равных по характеристикам процессора совместно выполняют один или несколько процессов (программ или наборов команд). Цель такого режима – увеличение быстродействия или вычислительных возможностей. Многопроцессорные ОС разделяют на симметричные и асимметричные. В симметричных ОС на каждом процессоре функционирует одно и то же ядро, и задача может быть выполнена на любом процессоре, то есть обработка полностью децентрализована. При этом каждому из процессоров доступна вся память.В асимметричных ОС процессоры неравноправны. Обычно существует главный процессор (master) и подчиненные (slave), загрузку и характер работы которых определяет главный процессор.
По типу доступа пользователя к ЭВМ (с пакетной обработкой, с разделением времени, реального времени):
- ОС пакетной обработки: в них из программ, подлежащих выполнению, формируется пакет (набор) заданий, вводимых в ЭВМ и выполняемых в порядке очередности с возможным учетом приоритетности.
- ОС разделения времени обеспечивают одновременный диалоговый (интерактивный) режим доступа к ЭВМ нескольких пользователей на разных терминалах, которым по очереди выделяются ресурсы машины, что координируется операционной системой в соответствии с заданной дисциплиной обслуживания. Каждой программе, находящейся в оперативной памяти и готовой к исполнению, выделяется для исполнения фиксированный, задаваемый в соответствии с приоритетом пользователя интервал времени (интервал мультиплексирования). Если программа не выполнена до конца за этот интервал, ее исполнение принудительно прерывается, и программа переводится в конец очереди. Из начала очереди извлекается следующая программа, которая исполняется в течение соответствующего интервала мультиплексирования, затем поступает в конец очереди и т.д. в соответствии с циклическим алгоритмом.
- ОС реального времени обеспечивают определенное гарантированное время ответа машины на запрос пользователя с управлением им какими–либо внешними по отношению к ЭВМ событиями, процессами или объектами. При таком режиме ЭВМ управляет некоторым внешним процессом, обрабатывая данные и информацию, непосредственно поступающую от объекта управления.
По разрядности кода операционной системы: восьмиразрядные, шестнадцатиразрядные, тридцатидвухразрядные, шестидесяти четырехразрядные
Разрядность кода – это разрядность используемых аппаратных средств (например, использование 32–разрядных регистров для процессоров). Подразумевается, что разрядность ОС не может превышать разрядности процессора.
По типу интерфейса (командные (текстовые), объектно–ориентированные (как, правило, графические):
- Пользовательский интерфейс – это программные и аппаратные средства взаимодействия пользователя с программой или ЭВМ. Пользовательский интерфейс бывает командным и объектно–ориентированным.
- Командный интерфейс предполагает ввод пользователем команд с клавиатуры при выполнении действий по управлению ресурсами компьютера. При этой технологии в качестве единственного способа ввода информации от человека к компьютеру служит клавиатура, а компьютер выводит информацию человеку с помощью монитора. Эту комбинацию (монитор + клавиатура) стали называть консолью.
Команды набираются в командной строке. Командная строка представляет собой строку приглашения. Команда заканчивается нажатием клавиши Enter. После этого осуществляется переход в начало следующей строки. Именно с этой позиции компьютер выдает на монитор результаты своей работы. Затем процесс повторяется.
- Объектно–ориентированный интерфейс – это управление ресурсами вычислительной системы посредством осуществления операций над объектами, представляющими файлы, каталоги (папки), дисководы, программы, документы и т.д.
Разновидностью объектно–ориентированного интерфейса является графический WIMP – интерфейс (Window – окно, Image – образ, Menu – меню, Pointer – указатель). Характерной особенностью этого вида интерфейса является то, что диалог с пользователем ведется не с помощью команд, а с помощью графических образов – меню, окон, других элементов. Хотя и в этом интерфейсе подаются команды машине, но это делается «опосредованно», через графические образы. Этот вид интерфейса реализован на двух уровнях технологий: простой графический интерфейс и «чистый» WIMP–интерфейс, пример графический WIMP–интерфейс ОС Windows.
- Кроме названных основных видов интерфейса можно выделить еще один – SILK – интерфейс (Speech – речь, Image – образ, Language – язык, Knowlege – знание). Этот вид интерфейса наиболее приближен к обычной, человеческой форме общения. В рамках этого интерфейса идет обычный «разговор» человека и компьютера. При этом компьютер находит для себя команды, анализируя человеческую речь и находя в ней ключевые фразы. Результат выполнения команд он также преобразует в понятную человеку форму.
По типу использования ресурсов (сетевые, не сетевые): Сетевые ОС: Novell NetWare, Windows 2008 Server.
- Сетевые ОС предназначены для управления ресурсами компьютеров, объединенных в сеть с целью совместного использования данных, и предоставляют мощные средства разграничения доступа к данным в рамках обеспечения их целостности и сохранности, а также множество сервисных возможностей по использованию сетевых ресурсов.
По особенностям методов построения: монолитное ядро или микроядерный подход.
При описании операционной системы часто указываются особенности ее структурной организации и основные концепции, положенные в ее основу.
Способы построения ядра системы – монолитное ядро или микроядерный подход. Большинство ОС использует монолитное ядро, которое компонуется как одна программа, работающая в привилегированном режиме и использующая быстрые переходы с одной процедуры на другую, не требующие переключения из привилегированного режима в пользовательский и наоборот. Альтернативой является построение ОС на базе микроядра, работающего также в привилегированном режиме и выполняющего только минимум функций по управлению аппаратурой, в то время как функции ОС более высокого уровня выполняют специализированные компоненты ОС – серверы, работающие в пользовательском режиме. При таком построении ОС работает более медленно, так как часто выполняются переходы между привилегированным режимом и пользовательским, зато система получается более гибкой – ее функции можно наращивать, модифицировать или сужать, добавляя, модифицируя или исключая серверы пользовательского режима. Кроме того, серверы хорошо защищены друг от друга, как и любые пользовательские процессы