Меню

Операционная система как средство управления ресурсами компьютера

ОС как система управления ресурсами

Операционная система не только предоставляет пользователям и программистам удобный интерфейс к аппаратным средствам компьютера, но и является меха­низмом, распределяющим ресурсы компьютера.

К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы дан­ных, диски, накопители на магнитных лентах, принтеры, сетевые устройства и некоторые другие. Ресурсы распределяются между процессами. Процесс (задача) представляет собой базовое понятие большинства современных ОС и часто кратко определяется как программа в стадии выполнения. Программа — это ста­тический объект, представляющий собой файл с кодами и данными. Процесс — это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает «запустить программу на выполнение», то есть создать новую единицу вычислительной работы. На­пример, ОС может создать процесс в ответ на команду пользователя run prgi.exe, где prgi.exe — это имя файла, в котором хранится код программы.

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

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

Управление ресурсами включает решение следующих общих, не зависящих от типа ресурса задач:

1. планирование ресурса — то есть определение, какому процессу, когда и в ка­ком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;

2. удовлетворение запросов на ресурсы;

3. отслеживание состояния и учет использования ресурса — то есть поддержа­ние оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;

4. разрешение конфликтов между процессами.

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

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

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

Функциональные компоненты операционной системы

Автономного компьютера

Функции операционной системы автономного компьютера обычно группируют­ся либо в соответствии с типами локальных ресурсов, которыми управляет ОС, либо в соответствии со специфическими задачами, применимыми ко всем ресур­сам. Иногда такие группы функций называют подсистемами. Наиболее важными подсистемами управления ресурсами являются подсистемы управления процес­сами, памятью, файлами и внешними устройствами, а подсистемами, общими для всех ресурсов, являются подсистемы пользовательского интерфейса, защиты данных и администрирования.

Управление процессами

Важнейшей частью операционной системы, непосредственно влияющей на функ­ционирование вычислительной машины, является подсистема управления про­цессами.

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

Читайте также:  Самый эффективное средство от морщин в домашних условиях

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

В информационные структуры процесса часто включаются вспомогательные данные, характеризующие историю пребывания процесса в системе (например, какую долю времени процесс потратил на операции ввода-вывода, а какую на вычисления), его текущее состояние (активное или заблокированное), степень привилегированности процесса (значение приоритета). Данные такого рода мо­гут учитываться операционной системой при принятии решения о предоставле­нии ресурсов процессу.

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

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

Важной задачей операционной системы является защита ресурсов, выделенных данному процессу, от остальных процессов. Одним из наиболее тщательно защи­щаемых ресурсов процесса являются области оперативной памяти, в которой хранятся коды и данные процесса. Совокупность всех областей оперативной па­мяти, выделенных операционной системой процессу, называется его адресным пространством. Говорят, что каждый процесс работает в своем адресном про­странстве, имея в виду защиту адресных пространств, осуществляемую ОС. За­щищаются и другие типы ресурсов, такие как файлы, внешние устройства и т. д. Операционная система может не только защищать ресурсы, выделенные одному процессу, но и организовывать их совместное использование, например, разре­шать доступ к некоторой области памяти нескольким процессам.

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

Управление памятью

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

Существует большое разнообразие алгоритмов распределения памяти. Они мо­гут отличаться, например, количеством выделяемых процессу областей памяти (в одних случаях память выделяется процессу в виде одной непрерывной облас­ти, а в других — в виде нескольких несмежных областей), степенью свободы гра­ницы областей (она может быть жестко зафиксирована на все время существова­ния процесса или же динамически перемещаться при выделении процессу дополнительных объемов памяти).

Одним из наиболее популярных способов управления памятью в современных операционных системах является так называемая виртуальная память. Наличие в ОС механизма виртуальной памяти позволяет программисту писать програм­му так, как будто в его распоряжении имеется однородная оперативная память большого объема, часто существенно превышающего объем имеющейся физиче­ской памяти. В действительности все данные, используемые программой, хра­нятся на диске и при необходимости частями ото­бражаются в физическую память. При перемещении кодов и данных между оперативной памятью и диском подсистема виртуальной памяти выполняет трансляцию виртуальных адресов, полученных в результате компиляции и ком­поновки программы, в физические адреса ячеек оперативной памяти. Очень важно, что все операции по перемещению кодов и данных между оперативной памятью и дисками, а также трансляция адресов выполняются ОС прозрачно для программиста.

Защита памяти — это избирательная способность предохранять выполняемую задачу от записи или чтения памяти, назначенной другой задаче. Правильно на­писанные программы не пытаются обращаться к памяти, назначенной другим. Но реальные программы часто содержат ошибки и та­кие попытки иногда предпринимаются. Средства защиты памяти, реализован­ные в ОС, должны пресекать несанкционированный доступ процессов к чужим областям памяти.

Читайте также:  Нормы пользования моющими средствами

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

Источник

ОС как система управления ресурсами

Дата добавления: 2013-12-23 ; просмотров: 3412 ; Нарушение авторских прав

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

К числу основных ресурсов современных вычислительных систем могут быть отнесены такие ресурсы, как процессоры, основная память, таймеры, наборы данных, диски, накопители на магнитных лентах, принтеры, сетевые устройства и некоторые другие. Ресурсы распределяются между процессами. Процесс (задача) представляет собой базовое понятие большинства современных ОС и часто кратко определяется как программа в стадии выполнения. Программа — это статический объект, представляющий собой файл с кодами и данными. Процесс — это динамический объект, который возникает в операционной системе после того, как пользователь или сама операционная система решает «запустить программу на выполнение», то есть создать новую единицу вычислительной работы. Например, ОС может создать процесс в ответ на команду пользователя run prg1.exe, где рrg1.ехе — это имя файла, в котором хранится код программы.

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

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

· планирование ресурса — то есть определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;

· удовлетворение запросов на ресурсы;

· отслеживание состояния и учет использования ресурса — то есть поддержание оперативной информации о том, занят или свободен ресурс и какая доля ресурса уже распределена;

· разрешение конфликтов между процессами.

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

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

Читайте также:  Что такое удаление средств отслеживание

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

Источник



Операционная система как средство управления ресурсами компьютера

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

К числу основных ресурсов, управляемых средствами операционной системы, можно следующие:

иные (накопители на магнитных дисках и лентах, другие внешние накопители, принтеры, сетевые устройства и др.).

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

Программа – это статический объект, представляющий собой файл с кодами и данными.

Процесс – это динамический объект, который возникает в оперативной памяти после того, как пользователь или операционная система запустит программу на выполнение. В этом случае создается новая единица вычислительной работы. Это, конечно, очень грубое представление, но оно достаточно для решения задачи распределения ресурсов.

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

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

В задачу управления любыми ресурсами входит четыре типа подзадач:

· планирование ресурса – определение, какому процессу, когда и в каком количестве (если ресурс может выделяться частями) следует выделить данный ресурс;

· удовлетворение запроса на ресурс;

· отслеживание состояния и учет использования ресурса – поддержание оперативной информации о том, занят или свободен ресурс, и какая доля ресурса уже распределена;

· разрешение конфликтов между запросами ресурсов.

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

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

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

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

Функции операционной системы обычно группируются либо в соответствии с типами ресурсов, которыми управляет операционная система, либо в соответствии со специфическими задачами, применимыми ко всем ресурсам. Иногда такие группы функций называют подсистемами.

Наиболее важными подсистемами являются подсистемы управления:

Функционирование этих подсистем управления будет рассмотрено в следующих лекциях.

Источник