Где должна размещаться программа перед выполнением

3. Из скольких этапов с остоит обработка страничной недостаточност и?

4. Куда загружается требуемая страница на 4 этап е обработки страничной недостаточности ?

а) страничну ю рамку

в) внешнюю память

г) основную память

5. Сколько применяется под ходов при внедрении алгоритм а LRV?

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

сравнению с временем счёта?

г) значение не имеет

7. На каких два класса делят мет оды размещени я процессов?

а) смежное и несмежн ое

б) однопрограммные и м ногопрограммные

в) однопользовательские и мног опользовательские

г ) внешние и вну тренние

8. Как называется мето д управления памятью основанный н а том ,что все процессы ,

участвующие в мультипрогр аммной обработке, хранятся во внешней памяти?

а) транспортёр

9. Сколько существует стратегий заполн ения свободного раздела ?

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

Инструкция по выполнению ДЗ и повторному просмотру результатов выполнения ДЗ

в) алгоритм замещения страниц

г) оптимальный алгоритм

Для скачивания поделитесь материалом в соцсетях

После того как вы поделитесь материалом внизу появится ссылка для скачивания.

Получить код —>

Информатика — еще материалы к урокам:

  • Тест «Модификация структуры базы данных»
  • Технологическая карта урока «Формирование сложных запросов к готовой базе данных» 8 класс
  • Презентация «Пространственное разрешение монитора. Растровая и векторная графика» 8 класс
  • Итоговая административная контрольная работа по информатике 8 класс
  • Самостоятельная работа «Циклы» 8 класс
  • Тест «Графический интерфейс операционных систем и приложений»
Предметы
  • /algebra/Алгебра
  • /angliyskiy-yazyk/Английский язык
  • /biologiya/Биология
  • /georgrafiya/География
  • /geometriya/Геометрия
  • /izo/ИЗО
  • /informatika/Информатика
  • /istoriya/История
  • /literatura/Литература
  • /matematika/Математика
  • /music/Музыка
  • /mhk/МХК
  • /nachalnaya-shkola/Начальная школа
  • /obzh/ОБЖ
  • /obschestvoznanie/Обществознание
  • /okruzhayuschiy-mir/Окружающий мир
  • /orkse/ОРКСЭ
  • /pedagogika/Педагогика
  • /russkiy-yazyk/Русский язык
  • /tehnologiya/Технология
  • /fizika/Физика
  • /fizkultura/Физкультура
  • /himiya/Химия
  • /ekologiya/Экология
Похожие материалы
  • 9-06-2018, 23:28 Презентация «Родительское собрание «Как уберечь ребёнка от
  • 14-04-2017, 09:49 Презентация «Управление данными. Язык SQL»
  • 27-12-2016, 23:02 Презентация «Рулевое управление»
  • 1-11-2016, 17:50 Классный час «Вечной памятью живы»
  • 21-08-2015, 17:51 Презентация «И вечной памятью двенадцатого года…» 8 класс
  • 21-08-2015, 17:51 Методическая разработка внеклассного мероприятия по истории в 8
  • 27-07-2015, 02:16 Сценарий внеклассного мероприятия — вечера памяти «Вечной памятью
  • 24-07-2015, 04:13 Экскурсия, посвященная открытию уголка мужества «Они живы памятью

Источник: uchitelya.com

Реальный кЕГЭ-информатика: ТОП-10 советов по выполнению ЕГЭ на 90+ баллов.Апелляция при медленном ПК

Тема 4.3 Управление виртуальной памятью

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

Сегментная организация памяти.

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

Оперативной памяти никогда не бывает достаточно.

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

Ответить на этот вопрос можно просто: остальная часть приложения находится на диске. Другими словами, диск служит своего рода дополнением оперативной памяти; большое хранилище в некотором роде «поддерживает» более быструю память меньшего объёма.

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

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

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

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

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

Есть два принципиально разных ответа на этот вопрос.

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

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

Читайте также:
Программа чтобы телефон видел карту памяти

Рисунок 4.11 – Виртуальная память

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

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

1) Перемещение страниц по запросу (demand paging). Виртуальная память чаще всего реализуется на базе страничной организации памяти, совмещенной со свопингом страниц.

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

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

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

Для учета распределения страниц между внешней и основной памятью каждая строка таблицы страниц дополняется битом местонахождения страницы (valid/invalid bit).

В том случае, если процессор пытается использовать страницу, помеченную значением invalid, возникает событие, называемое страничная недостаточность (paging fault).

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

Основные этапы обработки страничной недостаточности (рис. 4.12):

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

2. Если значение бита invalid, то процесс прерывается и управление передается операционной системе для обработки события страничная недостаточность.

3. Отыскивается необходимая страница во вторичной памяти и свободная страничная рамка в основной.

4. Требуемая страница загружается в выбранную страничную рамку.

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

6. Управление передается прерванному процессу.

Рисунок 4.12 — Обработка страничной недостаточности

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

Вторичная память, используемая при обмене страниц по запросу, — это высокоскоростное дисковое устройство, часто называемое оборудованием свопинга (swap device), а часть используемого дискового пространства — пространство свопинга (swap space).

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

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

Обработка страничной недостаточности с учетом замещения осуществляется по следующему алгоритму:

• определяется местонахождение страницы путем анализа бита местонахождения;

• если значение бита invalid, то разыскивается свободная страничная рамка;

• если имеется свободная страничная рамка, то она используется;

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

• страница-жертва перемещается в пространство свопинга и таблица страниц редактируется;

• требуемая страница загружается на место страницы-жертвы и соответствующим образом редактируется таблица страниц.

Управление передается прерванному процессу.

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

• алгоритм распределения страничных рамок (frame allocation algorithm);

• алгоритм замещения страниц (page replacement algorithm).

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

FIFO (first-in-first-out). Наиболее простым алгоритмом замещения страниц является алгоритм FIFO. Этот алгоритм ассоциирует с каждой страницей время, когда эта страница была помещена в память. Для замещения выбирается наиболее старая страница.

Учет времени необязателен, когда все страницы в памяти связаны в FIFO-очередь, а каждая помещаемая в память страница добавляется в хвост очереди.

Алгоритм LRU (least recently used). Алгоритм выбирает для замещения ту страницу, на которую не было ссылки на протяжении наиболее длинного периода времени. Для замещения выбирается та страница, которая дольше всех не использовалась.

Источник: studopedia.su

Лекция6 (Лекции по микропроцессорной технике), страница 2

Файл «Лекция6» внутри архива находится в папке «Лекции по микропроцессорной технике». Документ из архива «Лекции по микропроцессорной технике», который расположен в категории » «. Всё это находится в предмете «микропроцессорная техника» из 5 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе «лекции и семинары», в предмете «микропроцессорная техника» в общих файлах.

Онлайн просмотр документа «Лекция6»

Текст 2 страницы из документа «Лекция6»

Все флаги младшего байта регистра устанавливаются арифметическими или логическими операциями МП. Все флаги старших байтов, за исключением флага переполнения, устанавливаются программным путем. Для этого в МП имеются команды установки флагов (STC, STD, STI), сброса (CLC, CLD, CLI), инвертирования (CMC). 2.

Читайте также:
Программы для нужные для Xbox

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

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

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

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

После выполнения команды в один из этих адресов засылается результат, а находившийся там операнд теряется. В трехадресных командах два адреса указывают, где находятся исходные операнды, а третий — куда необходимо поместить результат.

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

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

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

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

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

Поскольку при этом команды (с точки зрения процессора) ничем не отличаются от данных, в процессе выполнения программы ее команды можно изменять (модифицировать), что повышает гибкость программирования и универсальность ЭВМ. Семейство микропроцессоров фирмы Intel, начиная от 8086 и вплоть до Pentium, имеет базовую систему команд, в состав которой входят следующие группы: • команды пересылки данных: команды пересылки данных внутри МП (MOV, PUSH, POP, XCHNG и т.д.); команды ввода-вывода (IN, OUT); • арифметические команды: основные (сложение, вычитание, умножение, деление); дополнительные (INS, DEC и др.); • логические команды (сдвиг, дизъюнкция, конъюнкция, отрицание равнозначности и др.); • команды обработки строковых данных (пересылка, сравнение, сканирование, слияние/разделение и др.); • команды передачи управления (безусловный переход, условный переход, прерывания, переход с возвратом); • команды управления («нет операции», «внешняя синхронизация» и т.д.).

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

Причем числа могут быть представлены в различных системах счисления. Различаются они по последней букве, сопровождающей число: «b» — двоичное, «q» — восьмеричное, «d» — десятичное, «h» — шестнадцатеричное. «Операнды в памяти» могут указываться с помощью регистров, символическими именами, константами.

Различные комбинации этих элементов в команде называются способами адресации. Так, команда MOV (переслать число) может иметь следующие способы адресации: mov r,r mov sr,m mov r,m mov sr,r mov m,r mov m,sr mov r.imed mov r,sr mov m,imed где: г — регистр общего назначения микропроцессора; m — адрес в памяти; imed — число; sr — сегментный регистр.

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

Если адресуется ячейка текущего сегмента, то имя сегмента в адресной части команды не указывается (это связано с режимом умолчания: текущим по умолчанию для адреса команды является регистр CS, для адресации ячейки в стековом сегменте — SS, для адресации данных — DS). Это значит, что в команде безусловного перехода внутри того же сегмента нет необходимости указывать: cs: исполнительный адрес, а при адресации данных — ds: исполнительный адрес.

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

Читайте также:
Когда программа stand up

Например: mov [si],12. Косвенная адресация имеет несколько разновидностей, в зависимости от используемых регистров и от способа их использования. По способу использования различаются базовая, индексная и базово-индексная адресации.

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

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

Этот адрес называется «базовым». Абсолютные адреса определяются по сложению с базовым адресом. Такая система реализована в мультипрограммных вычислительных машинах с динамическим распределением ресурсов.) В IBM PC базовая адресация реализована с использованием регистров ВХ или ВР.

Индексная адресация имеет смысл, когда надо осуществить перебор элементов какого-то набора данных. Если элемент данных имеет длину 1 байт, то при переходе от одного элемента к другому адрес должен меняться на 1. Если длина равна 3 байтам — на 3. Начальный же адрес массива (НА) желательно не менять, так как одновременно может быть несколько обращений к одному и тому же массиву.

НА является как бы константой этого массива. Индекс (i) указывает на конкретный элемент массива, адрес которого может быть вычислен как сумма: HA+i. Для хранения индексов в IBM PC предусмотрено два индексных регистра: EI и DI. Могут встретиться комбинированные системы адресации, например базовая (или индексная) со смещением, базово-индексная и т.д.

Базово-индексная адресация в команде выглядит в виде такого адреса: [BP+SI]. 3. Взаимодействие элементов при работе микропроцессора Работой МП управляет программа, записанная в ОП ЭВМ. Адрес очередной команды хранится в счетчике команд IP (Instruction Pointer) и в одном из сегментных регистров (чаще всего в CS).

Каждый из них в реальном режиме имеет длину 16 бит, тогда как физический адрес ОП должен иметь длину 20 бит. Несогласованность длины машинного слова (16 бит) и длины физического адреса ОП (20 бит) приводит к тому, что в командах невозможно указать физический адрес ОП — его приходится формировать, собирать из разных регистров МП в процессе работы.

В реальном режиме вся ОП делится на сегменты (длина сегмента — 64 Кбайта). Адрес ОП состоит из двух частей: номер сегмента в ОП (база сегмента) и номер ячейки внутри данного сегмента (смещение относительно начала сегмента). Базовый адрес сегмента образуется добавлением к номеру сегмента справа четырех нулей.

Поскольку последние четыре разряда абсолютного (физического) адреса сегмента всегда нулевые, сегмент может начинаться не с любой ячейки ОП, а только с «параграфа» — начала 16-байтового блока ОП. В структуре микропроцессора имеется несколько регистров сегментов, например в i8086 — четыре: CS — программный сегмент; DS — сегмент данных (информационный сегмент); SS — стековый сегмент; ES — расширенный сегмент (дополнительный сегмент данных).

Номер ячейки внутри сегмента (смещение) называется также исполнительным адресом. В большинстве случаев в адресной части команды указывается именно исполнительный адрес — номер сегмента чаще всего подразумевается по умолчанию. Однако допускается указание и полного адреса ОП в виде префиксной структуры: «сегмент смещение».

Если сегмент в команде не указывается, значит работа ведется внутри текущего сегмента (характер выполняемой работы н сегментный регистр, определяющий текущую базу сегмента, завися! от вида выполняемой команды). Номер сегмента так же, как и смещение, имеет длину 2 байта.

При вычислении физического адреса ОП сегмент и смещение суммируются, но сегмент перед суммированием сдвигается влево на 4 бита. В результате суммирования образуется физический адрес ОП длиной 20 бит. В защищенном режиме базовые адреса сегментов хранятся в дескрипторных таблицах и имеют длину 24 или 32 бита (в зависимости от типа МП).

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

Одновременно из устройства управления (УУ) исполнительного блока на шину управления выдается команда (управляющий сигнал) в ОП, предписывающая выбрать число, находящееся по адресу, указанному в системной магистрали. Выбранное число, являющееся очередной командой, поступает из ОП через шину данных системной магистрали, интерфейс памяти, внутреннюю магистраль МП на регистр команд (INST). Рис. 6.2 Из команды в регистре команд выделяется код операции, который поступает в УУ исполнительного блока для выработки управляющих сигналов, настраивающих микропроцессор на выполнение требуемой операции. В зависимости от используемого в команде режима адресации организуется выборка необходимых исходных данных.

Источник: studizba.com

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru