Свойства и специфика операционных систем
Функции мультипрограммной операционной системы. Критерии эффективности управления ресурсами компьютера. Варианты реализации многозадачности. Средства поддержки многопроцессорной обработки. Преимущества распределения процессов согласно алгоритму банкира.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 28.04.2014 |
Размер файла | 306,4 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://allbest.ru
Федеральное агентство по образованию
ГОУ ВПО «Уральский государственный горный университет»
Кафедра информатики
РЕФЕРАТ
на тему «Свойства и специфика операционных систем»
по дисциплине «Операционные системы»
Выполнила
Группа
Проверил
Оглавление
Введение
1. Управление ресурсами
2. Особенности алгоритмов управления ресурсами
2.1 Поддержка многозадачности
2.2 Поддержка многопользовательского режима
2.3 Вытесняющая и не вытесняющая многозадачность
2.4 Поддержка многонитевости
2.5 Многопроцессорная обработка
3. Распределение ресурсов согласно алгоритму банкира
3.1 Недостатки алгоритма банкира
Источники
Введение
Операционная система не только предоставляет пользователям и программистам удобный интерфейс к аппаратным средствам компьютера, но и является механизмом, распределяющим ресурсы компьютера.
К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы данных, принтеры, диски, накопителя на магнитных лентах, сетевые устройства и некоторые другие. Ресурсы распределяются между процессами.
Процесс (задача) представляет собой базовое понятие большинства современных операционных систем и часто кратко определяется как программа в стадии выполнения.
Программа - статический объект, представляющий собой файл с кодами и данными. Процесс - это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает «запустить программу на выполнение», то есть создать новую единицу вычислительной работы. Например, операционную систему может создать процесс в ответ на команду пользователя 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.
Критерий эффективности, в соответствии с которым ОС организует управление ресурсами компьютера, может быть различным. Например, в одних системах важен такой критерий, как пропускная способность вычислительной системы, в других - время её реакции. Соответственно выбранному критерию эффективности Операционные Системы по-разному организуют вычислительный процесс.
Для решения этих общих задач управления ресурсами разные операционные системы используют различные алгоритмы, что в конечном счете и определяет их облик в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс.
1. Управление ресурсами
Ресурсом называется всякий объект, который может распределяться внутри системы. Ресурсы могут быть разделяемыми, когда несколько процессов используют их одновременно (в один и тот же момент времени) или параллельно (попеременно в течение некоторого интервала времени), а могут быть и неделимыми.
операционный мультипрограммный алгоритм компьютер
Управление ресурсами включает решение следующих общих, независящих от типа ресурса задач:
· планирование ресурса - то есть определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;
· удовлетворение запросов на ресурсы;
· отслеживание состояния и учет использования ресурса - то есть поддержания оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;
· разрешение конфликтов между процессорами;
Для решения этих общих задач управление ресурсами разные ОС используют различные алгоритмы, особенности которых, в конечном счете, и определяют облик операционной системы в целом, включая характеристики производительности, область применения и даже пользовательский интерфейс. Например, применяемый алгоритм управления процессом значительной степени определяет, может ли операционная система использоваться как система разделения времени, система пакетной обработки или система реального времени.
В первых вычислительных системах любая программа могла выполняться только после полного завершения предыдущей. Поскольку эти первые вычислительные системы были построены в соответствии с принципами, изложенными в известной работе Яноша Джона фон Неймана, все подсистемы и устройства компьютера управлялись исключительно центральным процессором. Центральный процессор осуществлял и выполнение вычислений, и управление операциями ввода-вывода данных. Соответственно, пока осуществлялся обмен данными между оперативной памятью и внешними устройствами, процессор не мог выполнять вычисления.
Введение в состав вычислительной машины специальных контроллеров позволило совместить во времени (распараллелить) операции вывода полученных данных и последующие вычисления на центральном процессоре. Однако все равно процессор продолжал часто и долго простаивать, дожидаясь завершения очередной операции ввода-вывода. Поэтому было предложено организовать так называемый мультипрограммный, или мультизадачный, режим работы вычислительной системы.
Задача организации эффективного совместного использования ресурсов несколькими процессами является весьма сложной и сложность это порождается в основном случайным характером возникновения запросов на потребление ресурсов. В мультипрограммной системе образуются очереди заявок от одновременно выполняемых программ к разделяемым ресурсам компьютера: процессору, страницы памяти, к принтеру, к диску.
Операционная система организует обслуживание этих очередей по разным алгоритмам: в порядке поступления, на основе приоритетов, кругового обслуживания и т.д. Анализ и определение оптимальных дисциплин ОБСЛУЖИВАНИЯ ЗАЯВОК является предметом специальной области прикладной математики - теории массового обслуживания. Эта теория иногда используется для оценки эффективности тех или иных алгоритмов управления очередями в операционных системах. Очень часто в операционных системах реализуются и эмпирические алгоритмы обслуживания очередей, прошедшие проверку практикой.
Таки образом, управление ресурсами составляет важную функцию любой операционной системы, в особенности мультипрограммной. В отличии от функции расширенной машины большинство функций управления ресурсами выполняются операционной системой автоматически и прикладному программисту не доступны.
2. Особенности алгоритмов управления ресурсами
От эффективности алгоритмов управления локальными ресурсами компьютера во многом зависит эффективность всей сетевой операционную систему в целом. Поэтому, характеризуя сетевую операционную систему, часто приводят важнейшие особенности реализации функций операционную систему по управлению процессорами, памятью, внешними устройствами автономного компьютера.
Так, например, в зависимости от особенностей использованного алгоритма управления процессором, операционные системы делят на многозадачные и однозадачные, многопользовательские и однопользовательские, на системы, поддерживающие многонитевую обработку и не поддерживающие ее, на многопроцессорные и однопроцессорные системы.
2.1 Поддержка многозадачности
По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:
однозадачные (например, MS-DOS, MSX)
многозадачные (OC EC, OS/2, UNIX, Windows 95).
Однозадачные операционные системы в основном выполняют функцию предоставления пользователю виртуальной машины, делая более простым и удобным процесс взаимодействия пользователя с компьютером. Однозадачные операционные системы включают средства управления периферийными устройствами, средства управления файлами, средства общения с пользователем.
Многозадачные операционные системы, кроме вышеперечисленных функций, управляют разделением совместно используемых ресурсов, таких как процессор, оперативная память, файлы и внешние устройства.
2.2 Поддержка многопользовательского режима
По числу одновременно работающих пользователей ОС делятся на:
однопользовательские (MS-DOS, Windows 3.x, ранние версии OS/2);
многопользовательские (UNIX, Windows NT).
Главным отличием многопользовательских систем от однопользовательских является наличие средств защиты информации каждого пользователя от несанкционированного доступа других пользователей. Следует заметить, что не всякая многозадачная система является многопользовательской, и не всякая однопользовательская операционная система является однозадачной.
2.3 Вытесняющая и не вытесняющая многозадачность
Важнейшим разделяемым ресурсом является процессорное время. Способ распределения процессорного времени между несколькими одновременно существующими в системе процессами (или нитями) во многом определяет специфику ОС. Среди множества существующих вариантов реализации многозадачности можно выделить две группы алгоритмов:
Не вытесняющая многозадачность (NetWare, Windows 3.x);
вытесняющая многозадачность (Windows NT, OS/2, UNIX).
Основным различием между вытесняющим и не вытесняющим вариантом многозадачности является степень централизации механизма планирования процессов. В первом случае механизм планирования процессов целиком сосредоточен в операционной системе, а во втором - распределен между системой и прикладными программами. При не вытесняющей многозадачности активный процесс выполняется до тех пор, пока он сам, по собственной инициативе, не отдаст управление операционной системе для того, чтобы та выбрала из очереди другой готовый к выполнению процесс. При вытесняющей многозадачности решение о переключении процессора с одного процесса на другой принимается операционной системой, а не самим активным процессом.
2.4 Поддержка многонитевости
Важным свойством операционных систем является возможность распараллеливания вычислений в рамках одной задачи. Многонитевая операционная система разделяет процессорное время не между задачами, а между их отдельными ветвями (нитями).
2.5 Многопроцессорная обработка
Другим важным свойством ОС является отсутствие или наличие в ней средств поддержки многопроцессорной обработки - мультипроцессирование.
Многопроцессорные операционные системы могут классифицироваться по способу организации вычислительного процесса в системе с многопроцессорной архитектурой: асимметричные ОС и симметричные ОС. Асимметричная операционная система целиком выполняется только на одном из процессоров системы, распределяя прикладные задачи по остальным процессорам.
Симметричная операционная система полностью децентрализована и использует весь пул процессоров, разделяя их между системными и прикладными задачами.
Выше были рассмотрены характеристики операционной системы, связанные с управлением только одним типом ресурсов - процессором. Важное влияние на облик операционной системы в целом, на возможности ее использования в той или иной области оказывают особенности и других подсистем управления локальными ресурсами - подсистем управления памятью, файлами, устройствами ввода-вывода.
Специфика операционной системы проявляется и в том, каким образом она реализует сетевые функции: распознавание и перенаправление в сеть запросов к удаленным ресурсам, передача сообщений по сети, выполнение удаленных запросов. При реализации сетевых функций возникает комплекс задач, связанных с распределенным характером хранения и обработки данных в сети: ведение справочной информации о всех доступных в сети ресурсах и серверах, адресация взаимодействующих процессов, обеспечение прозрачности доступа, тиражирование данных, согласование копий, поддержка безопасности данных.
3. Распределение ресурсов согласно алгоритму банкира
Сейчас уже должно быть ясно, каким образом осуществляется распределение ресурсов согласно алгоритму банкира, который предложил Дейкстра. Условия «взаимоисключения», «ожидания дополнительных ресурсов» и «неперераспределяемости» выполняются. Процессы могут претендовать на монопольное использование ресурсов, которые им требуются. Процессам реально разрешается удерживать за собой ресурсы, запрашивая и ожидая выделения дополнительных ресурсов, причем ресурсы нельзя отбирать у процесса, которому они выделены. Пользователи не ставят перед системой особенно сложных задач, запрашивая в каждый момент времени только один ресурс. Система может либо удовлетворить, либо отклонить каждый запрос. Если запрос отклоняется, пользователь удерживает за собой уже выделенные ему ресурсы и ждет определенный конечный период времени, пока этот запрос в конце концов не будет удовлетворен.
Система удовлетворяет только те запросы, при которых ее состояние остается надежным. Запрос пользователя, приводящий к переходу системы в ненадежное состояние, откладывается до момента, когда его все же можно будет выполнить. Таким образом, поскольку система всегда поддерживается в надежном состоянии, рано или поздно (т. е. в течение конечного времени) все запросы можно будет удовлетворить и все пользователи смогут завершить свою работу.
3.1 Недостатки алгоритма банкира
Алгоритм банкира представляет для нас интерес потому, что он дает возможность распределять ресурсы таким образом, чтобы обходить тупиковые ситуации. Он позволяет продолжать выполнение таких процессов, которым в случае системы с предотвращением тупиков пришлось бы ждать. Однако у этого алгоритма имеется ряд серьезных недостатков, из-за которых разработчик системы может оказаться вынужденным выбрать другой подход к решению проблемы тупиков.
· Алгоритм банкира исходит из фиксированного количества распределяемых ресурсов. Поскольку устройства, представляющие ресурсы, зачастую требуют технического обслуживания либо из-за возникновения неисправностей, либо в целях профилактики, мы не можем считать, что количество ресурсов всегда остается фиксированным.
· Алгоритм требует, чтобы число работающих пользователей оставалось постоянным. Подобное требование также является нереалистичным. В современных мультипрограммных системах количество работающих пользователей все время меняется. Например, большая система с разделением времени вполне может обслуживать 100 или более пользователей одновременно. Однако текущее число обслуживаемых пользователей непрерывно меняется, быть может, очень часто, каждые несколько секунд.
· Алгоритм требует, чтобы банкир--распределитель ресурсов гарантированно удовлетворял все запросы за некоторый конечный период времени. Очевидно, что для реальных систем необходимы гораздо более конкретные гарантии.
· Аналогично, алгоритм требует, чтобы клиенты (т. е. задания или процессы) гарантированно «платили долги» (т. е. возвращали выделенные им ресурсы) в течение некоторого конечного времени. И опять-таки для реальных систем требуются гораздо более конкретные гарантии.
· Алгоритм требует, чтобы пользователи заранее указывали свои максимальные потребности в ресурсах. По мере того как распределение ресурсов становится все более динамичным, все труднее оценивать максимальные потребности пользователя. Вообще говоря, поскольку компьютеры становятся более «дружественными» по отношению к пользователю, все чаще встречаются пользователи, которые не имеют ни малейшего представления о том, какие ресурсы им потребуются.
Источники
1. В.Г.Олифер, Н.А.Олифер «Сетевые операционные системы»
Размещено на Allbest.ru
...Подобные документы
Функции операционной системы как совокупности программных средств, осуществляющих управление ресурсами электронно-вычислительных машин. Предназначение Windows, Linux и Mac. Особенности реализации алгоритмов управления основными ресурсами компьютера.
реферат [22,5 K], добавлен 16.03.2017Основные понятия операционных систем. Современное оборудование компьютера. Преимущества и недостатки операционной системы Linux. Функциональные возможности операционной системы Knoppix. Сравнительная характеристика операционных систем Linux и Knoppix.
реферат [1,5 M], добавлен 17.12.2014Операционная система - программа, которая загружается при включении компьютера. Способы реализации интерфейса и классификация операционных систем. Организация файловой системы, типы файлов и их наименования. Понятие каталога, атрибуты файловой системы.
реферат [16,6 K], добавлен 25.02.2011Эволюция операционных систем, их классификация в зависимости от особенностей реализации алгоритмов управления ресурсами компьютера и областей использования. Расчет заработной платы организации с помощью Excel, проектирование форм выходных документов.
курсовая работа [2,5 M], добавлен 13.10.2011Основные моменты истории операционных систем, связывающих аппаратное обеспечение и прикладные программы. Характеристика операционной системы Microsoft Windows Seven, анализ операционной системы Linux. Преимущества и недостатки каждой операционной системы.
курсовая работа [63,0 K], добавлен 07.05.2011Возникновение операционных систем, история их эволюционного развития. Совершенствование прикладного программного интерфейса. Создание и функции резидентного монитора. Основное назначение и роль операционной системы. Программная конфигурация компьютера.
презентация [67,6 K], добавлен 24.10.2012Создание средств представления процессов и механизмов управления на уровне диспетчеризации, разработка алгоритма и написание программы, имитирующую работу простейшей операционной системы. Формирование дескриптора, ввод информации, интерфейс программы.
лабораторная работа [1,1 M], добавлен 09.07.2010Определение назначения, характеристика типов операционных систем и анализ многозадачности в системах пакетной обработки. Ознакомление с приемами управления работой печатающих устройств в MS-DOS и формирование новых команд и символов матричного принтера.
курсовая работа [421,0 K], добавлен 22.06.2011Понятие операционной системы как базового комплекса компьютерных программ, обеспечивающего управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, выполнение утилит. История развития операционных систем семейства Windows.
курсовая работа [54,3 K], добавлен 10.01.2012Основные понятия об операционных системах. Виды современных операционных систем. История развития операционных систем семейства Windows. Характеристики операционных систем семейства Windows. Новые функциональные возможности операционной системы Windows 7.
курсовая работа [60,1 K], добавлен 18.02.2012Характеристика сущности, назначения, функций операционных систем. Отличительные черты их эволюции. Особенности алгоритмов управления ресурсами. Современные концепции и технологии проектирования операционных систем, требования, предъявляемые к ОС XXI века.
курсовая работа [36,4 K], добавлен 08.01.2011Понятие операционной системы. История ее создания и развития. Разновидности современных операционных систем. Основные функции ОС общего и специального назначения. Вычислительные и операционные системы, их функции. Генерация операционной системы.
курсовая работа [46,8 K], добавлен 18.06.2009Изучение модели операционной системы. Понятие и общая характеристика тупиков, алгоритм их обработки и предотвращения. Рассмотрение примеры графа распределения ресурсов с тупиком и с циклом без него. Правила восстановления ресурсов на выходе из системы.
презентация [1,3 M], добавлен 24.01.2014Использование операционных систем Microsoft Windows. Разработка операционной системы Windows 1.0. Возможности и характеристика последующих версий. Выпуск пользовательских операционных систем компании, доработки и нововведения, версии Windows XP и Vista.
реферат [23,3 K], добавлен 10.01.2012Назначение и функции операционных систем компьютера. Аппаратные и программные ресурсы ЭВМ. Пакетные ОС. Системы с разделением времени: Multics, Unix. Многозадачные ОС для ПК с графическим интерфейсом: Windows, Linux, Macintosh. ОС для мобильных устройств.
курсовая работа [53,4 K], добавлен 05.12.2014Компьютерные программы, обеспечивающие управление аппаратными средствами компьютера. Операционные системы Microsoft Corporation. Прикладные программы, утилиты. Простейшие функции операционной системы. Линейка Microsoft Windows для домашнего использования.
презентация [947,8 K], добавлен 01.10.2012Общие сведения о SELinux. Понятие защищенной операционной системы. Методы управления доступом, архитектура SELinux. Преимущества использования и сравнительный анализ защищенных операционных систем LINUX. Описание конкретных характеристик систем.
курсовая работа [36,8 K], добавлен 04.03.2016Виды операционных систем. Графический пользовательский интерфейс операционной системы Linux и Mac OS. Функции устройства управления окнами (windows manager). Программа управления файлами, драйвера, модуль управления памятью - основные компоненты ядра.
презентация [1,8 M], добавлен 14.10.2013Безопасное состояние информационной системы. Основные утверждения (факты). Алгоритм построения графа распределения ресурсов для стратегии избежания тупиков. Структуры данных для алгоритма банкира, пример его использования. Алгоритм обнаружения тупиков.
презентация [1,3 M], добавлен 24.01.2014Классификация операционных систем исходя из выполняемых ими функций. Сервисное и прикладное программное обеспечение. Анализ эффективности централизованной и децентрализованной организации системы для различных приложений, автоматизация бизнес-процессов.
реферат [253,3 K], добавлен 28.11.2009