Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы построения операционных систем.doc
Скачиваний:
50
Добавлен:
07.11.2018
Размер:
5.07 Mб
Скачать

1.3. Функции операционных систем

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

- упрощения доступа: операционная система упрощает доступ к компьютеру для пользователя;

- повышения эффективности: операционная система позволяет использовать ресурсы компьютера наиболее эффективным образом;

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

1.3.1. Упрощение доступа к компьютеру

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

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

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

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

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

Рис.1.2. Интерфейсы ОС

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

Рис. 1.3. Роль сервисных систем

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

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

1.3.2. Повышение эффективности использования ресурсов

Распределение ресурсов вычислительной системы необходимо для:

- длительного хранения данных и управления ими (внешняя память);

- выполнения программ пользователей (процессор и оперативная память);

- использования устройств ввода-вывода, включая устройства для дальней передачи данных.

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

- допустимых пользователях и их правах (управление пользователями или обеспечение безопасности информации);

- выполняемых в данное время программах (управление процессами);

- так и информацию о фактическом внутреннем распределении ресурсов системы, такую как:

- состояние процессора (управление процессором);

- распределение оперативной памяти (управление оперативной памятью) и внешней памяти (управление внешней памятью);

- конкретизация устройств ввода-вывода (управление устройствами).

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

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

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

Функция распределения ресурсов присуща не всем операционным системам, а только тем, которые обеспечивают одновременное выполнение (или по крайней мере хранение в ОЗУ) нескольких программ. Если компьютер имеет один процессор, то одновременное выполнение нескольких программ сводится по сути к поочередной реализации их фрагментов. Это не имеет ничего общего с параллелизмом, но в ряде случаев позволяет повысить производительность компьютера в результате совмещения выполнения операций в различных устройствах во времени. Если такой режим работы компьютера недоступен, то одновременное выполнение нескольких программ сводится к их простому переключению без какого-либо выигрыша по производительности. Однако возможность переключения программ повышает гибкость вычислительной системы и позволяет им взаимодействовать между собой, например, обмениваться информацией.