рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Сегментно-страничное распределение.

Сегментно-страничное распределение. - раздел История, Определение ОС. Функции ОС. Процессы и потоки. Классификация ОС. История развития Данный Метод Представляет Собой Комбинацию Страничного И Сегментного Распреде...

Данный метод представляет собой комбинацию страничного и сегментного распределения памяти и, вследствие этого, сочетает в себе достоинства обоих подходов.

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

Оперативная память делится на физические страницы.

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

 

 

 

Общие выводы:

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

Сегментная виртуальная память предусматривает перемещение данных сегментами – частями ВАП произвольного размера, полученными с учетом смыслового значения данных (достоинства – «осмысленность» сегментов упрощает их защиту; недостатки – медленное преобразование адреса, высокий уровень фрагментации);

Сегментно-страничная виртуальная память сочетает достоинства обоих предыдущих подходов.

 

9.2 Стратегии управления виртуальной памятью (свопинг).

Стратегии управления виртуальной памятью:

ü Стратегия выборки (fetch policy) .

ü Стратегия размещения (placement policy).

ü Стратегия замещения (replacement policy).

 

Выборка:

Определяет, в какой момент следует переписать отсутствующую в ОП страницу (сегмент) из внешней памяти в ОП.

Выборка бывает по запросу и с упреждением.

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

 

Размещение:

Определяет, в какое место первичной памяти следует поместить поступающую страницу (сегмент).

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

В системах с сегментной организацией требуется стратегия, аналогичная стратегии с переменными разделами.

 

 

Замещение:

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

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

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

1’st page fault : страница 1 была вытеснена и заменена страницей 5, т.к. страница 1 в будущем больше не будет вызываться.

2’nd page fault: страница 2 была вытеснена и заменена страницей 4, т.к. страница 2 будет вызвана позже чем остальные две страницы (страницы 5 и 3).

3’rd page fault: страница 4 была вытеснена и заменена страницей 2, т.к. страница 4 в будущем больше не будет вызываться.

 

Алгоритмы замещения страниц (свопинга):

Глобальные – оперируют всей совокупностью страниц оперативной памяти.

Локальные – оперируют множеством страниц оперативной памяти, принадлежащих конкретному процессу.

 

Алгоритмы замещения страниц (свопинга):

FIFO(First In First Out) – замещение первой использованной страницы

FIFO 2nd Chance(похож на clock)

LRU (Least Recently Used) – замещение дольше всех неиспользовавшихся страниц

NRU (Not Recently Used) или clock – замещение не использовавшихся в последнее время страницы

NFU (Not Frequently Used) – замещение наименее часто используемых страниц

 

Пример действия FIFO:

 

FIFO 2nd Chance:

Модификация алгоритма FIFO, которая использовалась в ранних версиях UNIX.

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

Если признак установлен (R = 1), то страница, в отличие от FIFO, не выталкивается, а очищается бит (R = 0) и страница становится в конец очереди.

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

 

 

Алгоритм LRU:

Для замещения выбирается дольше всего неиспользовавшаяся страница.

Часто используется и считается хорошим.

Основная проблема – реализация (требуется аппаратная поддержка).

Реализация LRU №1:

Основана на использовании специального признака обращения (reference bit) к странице (требуется аппаратная поддержка).

Каждой странице назначается свой счетчик обращений.

С некоторым постоянным временным интервалом для каждой страницы выполняется:

- если признак обращения = 0 (страница не использовалась), увеличить счетчик на 1;

- если признак обращения = 1 (страница использовалась), обнулить счетчик;

- сбросить признак обращения.

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

 

Реализация LRU №2:

В некоторых архитектурах (например, Intel) признак обращения отсутствует.

Для эмуляции признака обращения можно использовать признак достоверности (valid bit), сбрасывая его для возникновения «псевдосбоев» страниц – пример ОС Windows 2000-2008.

Недостаток – огромное количество дополнительных страничных прерываний.

 

NRU или clock:

Реализация:

- все страничные кадры ОП выстраиваются в один большой круг (часы) реализуемый обычным кольцевым списком;

- “стрелка часов” указывает следующего кандидата на вытеснение движется по списку страниц как стрелка часов;

- если признак обращения сброшен, значит, страница давно не использовалась, и она – подходящая жертва;

- если признак обращения установлен, он сбрасывается, и стрелка переводится на следующую страницу.

Особенности:

- чем чаще требуются страницы, тем быстрее движется стрелка;

- при достаточно большом объеме памяти дополнительные расходы невелики;

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

NFU (Not Frequently Used):

Программная реализация алгоритма, близкого к LRU, - алгоритм NFU.

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

Таким образом, кандидатом на освобождение оказывается страница с наименьшим значением счетчика, как страница, к которой реже всего обращались.

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

Возможна небольшая модификация алгоритма, которая позволяет ему "забывать". Достаточно, чтобы при каждом прерывании по времени содержимое счетчика сдвигалось вправо на 1 бит, а уже затем производилось бы его увеличение для страниц с установленным флагом обращения.

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

 

Понятие «trashing».

Высокая частота страничных прерываний называется трешинг (thrashing).

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

Критическая ситуация такого рода возникает вне зависимости от конкретных алгоритмов замещения.

В результате все процессы попадают в очередь запросов на свопинг, а очередь процессов в состоянии готовности пустеет.

ОС видит это и постепенно увеличивает степень мультипрограммирования.

Таким образом, пропускная способность системы падает из-за трешинга.

 

Решение проблемы trashing:

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

В этом случае если даже один из процессов попадает в трешинг, это напрямую не сказывается на других процессах.

Однако этот процесс много времени проводит в очереди на свопинг своих страниц, затрудняя подкачку страниц остальных процессов.

 

 

– Конец работы –

Эта тема принадлежит разделу:

Определение ОС. Функции ОС. Процессы и потоки. Классификация ОС. История развития

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

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

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Машинный язык.
Микропрограмма действует просто как интерпретатор, который получает машинные команды, такие как MOVE, JUMP или ADD, и выполняет их в несколько маленьких шагов. Набор интерпретируемых инструкций опр

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

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

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

Состояния процессов и потоков.
Выделяют 3 основных дискретных состояния процесса (потока): - Готов к выполнению – ждет ЦП; - Выполняется – выделен ЦП; - Приостановлен (блокирован) – ждет некоторого соб

Поддержка многозадачности.
По числу одновременно выполняемых задач ОС могут быть разделены на два класса: - однозадачные (например, MS-DOS, MSX); - многозадачные (OC EC, UNIX, Windows 9х, NT и выше).

Многозадачность.
Способ распределения процессорного времени между несколькими одновременно существующими в системе задачами (процессами или потоками) в режиме мультипрограммирования во многом определяет специфику О

Дисциплины обслуживания.
Бесприоритетные дисциплины – выбор из очереди производится без учета относительной важности задач и времени их обслуживания. Приоритетное обслуживание – отдельным задачам пре

Поддержка многопользовательского режима.
По числу “одновременно” работающих пользователей ОС делятся на: - однопользовательские (MS-DOS, Windows 3.x, Windows 9x); - многопользовательские (UNIX, Windows NT, 2000-2007).

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

Особенности алгоритмов управления ресурсами.
Выше были рассмотрены характеристики ОС, связанные с управлением только одним типом ресурсов – процессором. Важное влияние на облик операционной системы в целом, на возможности ее использования в т

Системы пакетной обработки.
Системы пакетной обработки (batch processing) предназначались для решения задач в основном вычислительного характера, не требующих быстрого получения результатов. Главной целью и критерием

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

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

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

Монолитное ядро.
Наиболее распространенным и классическим вариантом реализации ядерного подхода является моноли́тное ядро́. Монолитность ядер усложняет их отладку, понимание кода

Модульное ядро.
Cовременная, усовершенствованная модификация архитектуры монолитных ядер ОС. В отличие от «классических» монолитных ядер, считающихся ныне устаревшими, модульные ядра, как правило, не треб

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

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

Этап (1940-60).
Середина 40-х XX-века – первые ламповые вычислительные устройства. ОС еще не появились, все задачи организации вычислительного процесса решались программистом вручную с пульта управления.

Этап (1965-75).
1965-1975 годы переход к ИС, новое поколение ЭВМ – IBM/360, многопроцессорная ЭВМ для централизованных вычислений. Реализованы основные концепции, присущие современным ОС: - мульт

Этап (1970-80).
Начало 70-х годов – первые сетевые ОС, которые в отличие от многотерминальных ОС позволяли не только рассредоточить пользователей, но и организовать распределенное хранение и обработку данных между

Этап (1980-90).
Постоянное развитие версий ОС UNIX для ЭВМ различных архитектур. Начало 80-х годов – появление персональных компьютеров (ПК), которые стали мощным катализатором для бурног

Операционная система MS Windows 2000 и выше. Общая характеристика и основные функции. Структура MS Windows 2000-2003. Объекты в MS Windows 2000-2003.
  2.2 Основная характеристика Windows 2000-2008.   Система Windows 2000-2008 не является дальнейшим развитием ранее существовавших пр

Краткая характеристика.
  l Многоуровневая ОС. l Ядро работает в защищенном режиме. l Присутствует микроядро, но оно дополнительно не защищено от остальных фрагментов ядра (т.е. по сути при

Структура ядра.
l Исполняющая система, которая включает управление памятью, процессами, потоками, безопасностью, вводом/выводом, межпроцессорными обменами; Важные для производительности О

Типы объектов Windows 2000-2008.
Объекты исполнительной системы (executive object) представляются различными компонентами исполнительной системы. Они доступны программам пользовательского режима (защищенным

Структура объектов Windows 2000-2003.
Имя объекта Делает объект видимым другим процессам для совместного использования Каталог объектов Обеспечивает иерархичес

Защита объектов.
ОС Windows 2000 поддерживает два вида контроля доступа к объектам: - управление избирательным доступом (discretionary access control) – основной механизм контроля д

Избирательный доступ.
Основан на списках контроля доступа (access control list, ACL), которые описывают каким пользователям можно выполнять какие операции. При отсутствии ACL объект является незащищенным, и сис

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

RAID - 0.
Представляет собой дисковый массив, в котором данные разбиваются на блоки, и каждый блок записываются (или же считывается) на отдельный диск. Таким образом, можно осуществлять несколько оп

RAID - 1.
Зеркалирование - традиционный способ для повышения надежности дискового массива небольшого объема. В простейшем варианте используется два диска, на которые записываетс

RAID - 4.
Данные разбиваются на блочном уровне. Каждый блок данных записывается на отдельный диск и может быть прочитан отдельно. Четность для группы блоков генерируется при записи и проверяется при чтении.

Сравнение RAID-систем.
  Составные RAID системы: l RAID 0+1 / RAID 1+0 l RAI

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

Long File Names.
FAT32 преодолела ограничение прежней системы наименования файлов "8.3". В VFAT имя файла может содержать до 255 символов. К счастью, FAT32 воспринимает файлы, которые уже существовали на

Перечень метафайлов
$MFT список содержимого тома NTFS $MFTmirr копия первых 4 записей таблицы MFT $LogFile

Заголовок атрибута
Смещение, байт Размер, байт Описание 0x00 Тип атрибута 0x04

Атрибуты файлов NTFS - 1
Standard Information (стандартная информация) Стандартный атрибут. Дата и время создания и последнего изменения файла, дата и время последнего доступа к файлу

Атрибуты файлов NTFS - 2
Volume Version версия тома, используется только в системных файлах тома Volume Information (информация о томе) Использует

Страничное распределение.
Виртуальное адресное пространство (ВАП) каждого процесса делится на части одинакового, фиксированного для данной ОС размера, называемые виртуальными страницами. Размер страницы кратен степени двойк

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

Архитектура API управления памятью.
    Адресное пространство процесса:

Проецируемые файлы.
“Как и виртуальная память, проецируемые файлы позволяют резервировать регион адресного пространства и передавать ему физическую память. Различие между этими механизмами состоит в том, что в последн

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

Объекты Windows .
Основные понятия: Задание – набор процессов, управляемых как единое целое, с общими квотами и лимитами Процесс – контейнер для ресурс

Процессы.
Процесс – это совокупность системных ресурсов, задействованная для выполнения определенной работы. Понятие "процесс" включает следующее: - исполняемый код;

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

Волокна (fibers).
Введены в Windows 2000 для переноса существующих серверных приложений из UNIX. Реализованы на уровне кода пользовательского режима. В потоке может быть одно или несколько волокон. Для ядра

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

Граф состояний потоков в MS Windows 2000-2003. Поток простоя. Принципы адаптивного планирования.
16.1 Граф состояний потоков в MS Windows 2000.

Граф состояний потоков в MS Windows 2000-2003. Особенности планирования в многопроцессорных системах.
17.2 Особенности планирования в многопроцессорных системах.   Управление потоками в МПС: Операционные системы Wind

Граф состояний потоков в MS Windows 2000-2003. Особенности планирования в ОС MS Windows Vista и Server 2008.
18.2 Особенности планирования в ОС MS Windows Vista и Server 2008.   Проблема неравномерного распределения ресурсов процессора:

Планирование загрузки процессорного времени в MS WINDOWS 2000-2003. Функции WIN 32 API создания и завершение процессов и потоков, управление потоками
  Планирование загрузки процессорного времени: В Windows реализована вытесняющая многозадачность, при которой ОС не ждет, когда поток сам захочет освободить

Параметры создания потока
Параметр psa является указателем на структуру SECURITY_ATTRIBUTES. Если Вы хотите, чтобы объекту ядра "поток" были присвоены атрибуты за

Функция CreateRemoteThread
Функция CreateRemoteThread создает поток, который запускается в виртуальном адресном пространстве другого процесса.   HANDLE Cre

Приоритеты потоков
Приоритет Назначение THREAD_PRIORITY_ABOVE_NORMAL Приоритет на 1 пункт выше класса приоритета. TH

Функция TerminateThread
Вызов этой функции также завершает поток: BOOL TerminateThread( HANDLE hThread, DWORD dwExitCode); В параметр dwExitCode помещается код завершения потока.

Засыпание и переключение потоков
VOID Sleep ( DWORD dwMilliseconds ); Эта функция приостанавливает поток па dwMilliseconds миллисекунд. Отметим несколько важных моментов, с

BOOL SwitchToThread();
Функция SwitchToThread позволяет подключить к процессору другой поток (если он есть). Вызов SwitchToThread аналогичен вызову Sleep с передачей в dwMilliseconds

DWORD SuspendThread(HANDLE hThread);
Засыпание и переключение потоков VOID Sleep ( DWORD dwMilliseconds ); Эта функция приостанавливает поток па dwMilliseconds миллисекунд. Отметим несколько важных моментов, с

Межпроцессорное взаимодействие. Передача информации в MS Windows 2000-2003. Анонимные каналы. Почтовые ящики. Функции WIN 32 API.
  Анонимные каналы Анонимные каналы не имеют имен. Не пригодны для обмена через сеть. Главная цель – служить каналом между родительским и дочерним процессом

Межпроцессорное взаимодействие. Передача информации в MS Windows 2000-2003. Именованные каналы. Почтовые ящики. Функции WIN 32 API.
  Виды межпроцессорного взаимодействия (IPC) Предотвращение критических ситуаций Синхронизация процессов Передача информации от одного процесса другому

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги