Автор: Пользователь скрыл имя, 22 Апреля 2014 в 16:11, реферат
Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является назначением операционной системы. Например, мультипрограммная операционная система организует одновременное выполнение сразу нескольких процессов на одном компьютере, поочередно переключая процессор с одного процесса на другой, исключая простои, вызываемые обращениями процессов к вводу-выводу. Операционная система также отслеживает и разрешает конфликты, возникающие при обращении нескольких процессов к одному и тому же устройству ввода-вывода или к одним и тем же данным.
Введение....................................................................................................................................................3
Управление ресурсами .............................................................................................................................5
Особенности алгоритмов управления ресурсами. .................................................................................8
Поддержка многозадачности...............................................................................................................8
Поддержка многопользовательского режима....................................................................................9
Вытесняющая и не вытесняющая многозадачность...........................................................................9
Поддержка многонитевости...............................................................................................................10
Многопроцессорная обработка .........................................................................................................10
Распределение ресурсов согласно алгоритму банкира .......................................................................12
Недостатки алгоритма банкира..........................................................................................................12
Приложение.................................................................
Федеральное агентство по образованию
ГОУ ВПО «Уральский государственный горный университет»
Кафедра информатики
РЕФЕРАТ
на тему «ОС как система управления»
по дисциплине «Операционные системы»
Выполнила
Группа
Проверил
Оглавление
Операционная система не только предоставляет пользователям и программистам удобный интерфейс к аппаратным средствам компьютера, но и является механизмом, распределяющим ресурсы компьютера.
К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы данных, принтеры, диски, накопителя на магнитных лентах, сетевые устройства и некоторые другие. Ресурсы распределяются между процессами. Процесс (задача) представляет собой базовое понятие большинства современных операционных систем и часто кратко определяется как программа в стадии выполнения. Программа - статический объект, представляющий собой файл с кодами и данными. Процесс – это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает «запустить программу на выполнение», то есть создать новую единицу вычислительной работы. Например, операционную систему может создать процесс в ответ на команду пользователя run prg1.exe, где prg1.exe – это имя файла, в котором хранится код программы.
Управление ресурсами вычислительной системы с целью наиболее эффективного их использования является назначением операционной системы. Например, мультипрограммная операционная система организует одновременное выполнение сразу нескольких процессов на одном компьютере, поочередно переключая процессор с одного процесса на другой, исключая простои, вызываемые обращениями процессов к вводу-выводу. Операционная система также отслеживает и разрешает конфликты, возникающие при обращении нескольких процессов к одному и тому же устройству ввода-вывода или к одним и тем же данным. Мультипроцессирование приводит к усложнению всех алгоритмов управления ресурсами. В наши дни становится общепринятым введение в операционную систему функций поддержки многопроцессорной обработки данных. Такие функции имеются в операционных системах Solaris 2.x фирмы Sun, Open Server 3.x компании Santa Crus Operations, OS/2 фирмы IBM, Windows NT фирмы Microsoft и NetWare 4.1 фирмы Novell.
Критерий эффективности, в соответствии с которым ОС организует управление ресурсами компьютера, может быть различным. Например, в одних системах важен такой критерий , как пропускная способность вычислительной системы, в других – время её реакции. Соответственно выбранному критерию эффективности Операционные Системы по-разному организуют вычислительный процесс. Для решения этих общих задач управления ресурсами разные операционные системы используют различные алгоритмы, что в конечном счете и определяет их облик в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс.
Ресурсом называется всякий объект, который может распределяться внутри системы. Ресурсы могут быть разделяемыми, когда несколько процессов используют их одновременно (в один и тот же момент времени) или параллельно (попеременно в течение некоторого интервала времени), а могут быть и неделимыми.
Управление ресурсами включает решение следующих общих, независящих от типа ресурса задач:
Для решения этих общих задач управление ресурсами разные ОС используют различные алгоритмы, особенности которых, в конечном счете, и определяют облик операционной системы в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс. Например, применяемый алгоритм управления процессом значительной степени определяет, может ли операционная система использоваться как система разделения времени, система пакетной обработки или система реального времени.
В первых вычислительных системах любая программа могла выполняться только после полного завершения предыдущей. Поскольку эти первые вычислительные системы были построены в соответствии с принципами, изложенными в известной работе Яноша Джона фон Неймана, все подсистемы и устройства компьютера управлялись исключительно центральным процессором. Центральный процессор осуществлял и выполнение вычислений, и управление операциями ввода-вывода данных. Соответственно, пока осуществлялся обмен данными между оперативной памятью и внешними устройствами, процессор не мог выполнять вычисления.
Введение в состав вычислительной машины специальных контроллеров позволило совместить во времени (распараллелить) операции вывода полученных данных и последующие вычисления на центральном процессоре. Однако все равно процессор продолжал часто и долго простаивать, дожидаясь завершения очередной операции ввода-вывода. Поэтому было предложено организовать так называемый мультипрограммный, или мультизадачный, режим работы вычислительной системы.
Задача организации эффективного совместного использования ресурсов несколькими процессами является весьма сложной и сложность это порождается в основном случайным характером возникновения запросов на потребление ресурсов. В мультипрограммной системе образуются очереди заявок от одновременно выполняемых программ к разделяемым ресурсам компьютера: процессору, страницы памяти, к принтеру, к диску. Операционная система организует обслуживание этих очередей по разным алгоритмам: в порядке поступления, на основе приоритетов, кругового обслуживания и т.д. Анализ и определение оптимальных дисциплин ОБСЛУЖИВАНИЯ ЗАЯВОК является предметом специальной области прикладной математики – теории массового обслуживания. Эта теория иногда используется для оценки эффективности тех или иных алгоритмов управления очередями в операционных системах. Очень часто в операционных системах реализуются и эмпирические алгоритмы обслуживания очередей, прошедшие проверку практикой.
Таки образом, управление ресурсами составляет важную функцию любой операционной системы, в особенности мультипрограммной. В отличии от функции расширенной машины большинство функций управления ресурсами выполняются операционной системой автоматически и прикладному программисту не доступны.
От эффективности алгоритмов
управления локальными
По числу одновременно
однозадачные (например, MS-DOS, MSX)
многозадачные (OC EC, OS/2, UNIX, Windows 95).
Однозадачные операционные системы в основном выполняют функцию предоставления пользователю виртуальной машины, делая более простым и удобным процесс взаимодействия пользователя с компьютером. Однозадачные операционные системы включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.
Многозадачные операционные системы, кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства.
По числу одновременно
однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
многопользовательские (UNIX, Windows NT).
Главным отличием
Важнейшим разделяемым
Не вытесняющая многозадачность (NetWare, Windows 3.x);
вытесняющая многозадачность (Windows NT, OS/2, UNIX).
Основным различием между вытесняющим и не вытесняющим вариантом многозадачности является степень централизации механизма планирования процессов. В первом случае механизм планирования процессов целиком сосредоточен в операционной системе, а во втором - распределен между системой и прикладными программами. При не вытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление операционной системе для того, чтобы та выбрала из очереди другой готовый к выполнению процесс. При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом.
Важным свойством операционных систем является возможность распараллеливания вычислений в рамках одной задачи. Многонитевая операционная система разделяет процессорное время не между задачами, а между их отдельными ветвями (нитями).
Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мультипроцессирование.
Многопроцессорные операционны
Симметричная операционная система полностью децентрализована и использует весь пул процессоров, разделяя их между системными и прикладными задачами.
Выше были рассмотрены
Специфика операционной системы проявляется и в том, каким образом она реализует сетевые функции: распознавание и перенаправление в сеть запросов к удаленным ресурсам, передача сообщений по сети, выполнение удаленных запросов. При реализации сетевых функций возникает комплекс задач, связанных с распределенным характером хранения и обработки данных в сети: ведение справочной информации о всех доступных в сети ресурсах и серверах, адресация взаимодействующих процессов, обеспечение прозрачности доступа, тиражирование данных, согласование копий, поддержка безопасности данных.
Сейчас уже должно быть ясно, каким образом осуществляется распределение ресурсов согласно алгоритму банкира, который предложил Дейкстра. Условия «взаимоисключения», «ожидания дополнительных ресурсов» и «неперераспределяемости» выполняются. Процессы могут претендовать на монопольное использование ресурсов, которые им требуются. Процессам реально разрешается удерживать за собой ресурсы, запрашивая и ожидая выделения дополнительных ресурсов, причем ресурсы нельзя отбирать у процесса, которому они выделены. Пользователи не ставят перед системой особенно сложных задач, запрашивая в каждый момент времени только один ресурс. Система может либо удовлетворить, либо отклонить каждый запрос. Если запрос отклоняется, пользователь удерживает за собой уже выделенные ему ресурсы и ждет определенный конечный период времени, пока этот запрос в конце концов не будет удовлетворен. Система удовлетворяет только те запросы, при которых ее состояние остается надежным. Запрос пользователя, приводящий к переходу системы в ненадежное состояние, откладывается до момента, когда его все же можно будет выполнить. Таким образом, поскольку система всегда поддерживается в надежном состоянии, рано или поздно (т. е. в течение конечного времени) все запросы можно будет удовлетворить и все пользователи смогут завершить свою работу.
Алгоритм банкира представляет для нас интерес потому, что он дает возможность распределять ресурсы таким образом, чтобы обходить тупиковые ситуации. Он позволяет продолжать выполнение таких процессов, которым в случае системы с предотвращением тупиков пришлось бы ждать. Однако у этого алгоритма имеется ряд серьезных недостатков, из-за которых разработчик системы может оказаться вынужденным выбрать другой подход к решению проблемы тупиков.