ym104432846
Вставьте ссылку на видео из Youtube, Rutube, VK видео
Задайте вопрос по видео
Что вас интересует?
00:00:16
Значение полей таблицы страниц:
  • 1. В таблице страниц чаще всего размер одной записи составляет 32 бита
  • 2. Наиболее значимым полем таблицы является номер страничного блока, указывающий местоположение страничного блока в памяти
  • 3. Информация об адресе страницы на диске отсутствует в таблице страниц
00:01:35
Бит присутствия/отсутствия страницы:
  • 1. Бит присутствия-отсутствия (бит P) влияет на доступность страницы в оперативной памяти: при значении 1 страница присутствует, при значении 0 отсутствует
  • 2. Установка бита P в значение 0 вызывает ошибку отсутствия страницы при обращении к соответствующей записи
  • 3. Присутствие или отсутствие страницы определяет возможность дальнейшей работы с записью в таблице страниц
00:02:14
Бит защиты страницы:
  • 1. Простое устройство защиты предусматривает разрешение доступа через один бит (0 — разрешено чтение и запись)
  • 2. В усложнённом устройстве используется три бита для управления разрешением операций чтения, записи и исполнения страниц
  • 3. Если бит принимает значение «1», соответствующая операция разрешается, иначе запрещается («0»)
00:03:03
Бит модификации страницы:
  • 1. Бит модификации устанавливается аппаратурой автоматически при записи в страницу
  • 2. Если страница была изменена (модифицирована), операционная система сбрасывает её обратно на диск перед удалением из ОЗУ
  • 3. Неизменённая страница (не подвергавшаяся модификации) может быть удалена из ОЗУ без сброса на диск
00:04:01
Бит обращения страницы:
  • 1. Бит обращения (Beat) устанавливается в значение 1 при чтении и записи страницы
  • 2. Ошибки отсутствия страницы или редко используемых страниц рассматриваются как приоритетные кандидаты на удаление из оперативной памяти
  • 3. Бит обращения автоматически сбрасывается в ноль спустя примерно 20 миллисекунд
00:04:53
Блокировка кеширования страницы:
  • 1. Возможность блокировки кеширования страницы доступна для страниц, отображаемых на регистрах устройств, а не загруженных в оперативную память
  • 2. Актуальность данной возможности связана с необходимостью ожидания отклика устройства ввода-вывода после выдачи команды
  • 3. Кеширование отключается на машинах с отдельным пространством ввода-вывода, не использующих отображение данного пространства в оперативную память
00:05:44
Количество процессов и размер таблицы страниц:
  • 1. Один процесс системы способен содержать значительное число страничных блоков оперативной памяти
  • 2. В системе одновременно функционирует от десятков до сотен процессов
  • 3. Увеличение числа процессов ведет к росту объема используемой оперативной памяти и таблицы страниц
00:06:16
Проблемы поиска нужных страниц:
  • 1. Обсуждаются две проблемы работы с таблицей страниц в оперативной памяти: быстрый поиск нужной страницы и большой объем самой таблицы
  • 2. Проблемы связаны с хранением таблицы страниц непосредственно в оперативной памяти компьютера
00:06:40
Буфер быстрого преобразования адреса:
  • 1. В компьютере установлено устройство быстрого преобразования виртуального адреса в физический (буфер быстрого преобразования адреса)
  • 2. Буфер состоит из небольшого числа записей (до 60), каждая хранит данные одной страницы памяти
  • 3. Записи содержат информацию о номере страницы, коде защиты и физическом адресе расположения страницы
00:08:25
Работа диспетчера памяти с буфером быстрого преобразования:
  • Аппаратура проверяет наличие номера виртуальной страницы в буфере преобразования перед обращением к таблице страниц
  • Если номер виртуальной страницы отсутствует в буфере, диспетчер памяти ищет страницу в таблице страниц оперативной памяти
  • После обнаружения нужной страницы диспетчер помещает её в буфер быстрого преобразования и загружает в центральный процессор
00:12:05
Алгоритм замены страницы:
  • 1. Возникают задержки при обращении к оперативной памяти из-за необходимости поиска номеров страничного блока
  • 2. Процесс загрузки страниц в процессор осуществляется через оперативную память с использованием буфера быстрого преобразования
  • 3. Рассматривается возможность отсутствия нужных страниц даже в оперативной памяти
00:12:53
Ошибка отсутствия страницы:
  • 1. При отсутствии нужной страницы в таблице диспетчер памяти вызывает ошибку отсутствия страницы, прерывая работу центрального процессора
  • 2. Операционная система выбирает редко используемую страницу, сбрасывает её содержимое на диск и заменяет новой страницей
  • 3. После завершения операции диспетчер прерываний уведомляет систему о выполнении задания, диспетчер памяти копирует данные в буфер и загружает страницу центральному процессору
00:16:36
Многоуровневые таблицы страниц:
  • Используются многоуровневые таблицы страниц для управления большими размерами страниц, где хранятся данные и стек программы
  • Таблицы страниц второго уровня содержат записи, указывающие на конкретные страничные блоки, определяющие физические адреса страниц
  • Двухуровневая структура таблиц страниц позволяет эффективно управлять распределением памяти объемом до 4 мегабайт (4 МБ)
0: Лекция 11 таблицы страниц для работы со страничными блоками и виртуальными страницами используется таблица страниц у различных операционных систем, формат записи можт.
1: Различаться. Рассмотрим наиболее общую информацию, которая размещается в таблице страниц. Размер 1 записи также может различаться, но достаточно часто он составляет 32 бита.
2: Рассмотрим значение полей справа налево.
3: Номер страничного блока это наиболее важное поле. Цель страничного отображения состоит в выдаче этого значения. Этот номер указывает на местонахождение страничного блока в оперативной
4: Адрес страницы на диске, где хранится сама страница, в таблице страниц не указывается.
5: Причина в этом случае достаточно простая в таблице страниц содержится только та информация, которая нужна оборудованию, чтобы перевести виртуальный адрес, физический, информация, необходимая операционной системе для обрабо.
6: Ошибок отсутствия страницы содержится в таблицах программного обеспечения внутри операционной системы, оборудование в них не нуждается.
7: Следующим по значимости является бит присутствия отсутствия. Если он установлен в значение 1 to запись имеет смысл и может быть использована, то есть страница находится в оперативной памяти а.
8: Если он установлен в значении 0, то виртуальная страница, которой принадлежит эта запись, в данный момент в оперативной памяти отсутствует обращение к записи таблицы страниц, у которой этот бит.
9: Установлен в 0, вызовет ошибку отсутствия страницы.
10: Биты защиты сообщают о том, какого рода доступ разрешён в простейшей форме это поле состоит из 1 бита со значением 0 для чтения и записи либо значением.
11: Единица только для чтения, при более сложном устройстве имеется 3 бита по 1 для разрешения чтения, записи и исполнения страницы эти 3 бита называ.
12: A double x битами если бит имеет значение единица, то данная операция разрешена если значение 0, то операция запрещена.
13: Beat модификации или изменения отслеживает режим использования страницы. Когда в страницу осуществляется запись аппаратура автоматически устанавливает бит модификации. Этот бит имеет зна,
14: Когда операционная система решает удалить страничный блок из оперативной памяти, если содержащаяся в нём страница подверглась модификации, то есть является изменённой её нуж.
15: Нужно сбросить обратно на диск, если же она не подвергалась модификации, то есть является неизменённой, то от неё можно отказаться, поскольку её дисковая копия не утратила актуаль.
16: Этот бит иногда называется битом изменения, поскольку он отражает состояние страницы.
17: Beat обращения устанавливается в значение 1 при обращении к странице как для чтения, так и для записи. Он призван помочь операционной системе выбрать выселяемую страницу при
18: Возникновение ошибки, отсутствия страницы, страницы, к которым не было обращения последнее время, являются более предпочтительными кандидатами на выселение из оперативной памяти этот бит играет.
19: Важную роль в ряде алгоритмов замещения страниц, которые будут рассмотрены на следующей лекции.
20: Через определённое время бит обращения сбрасывается на 0 как правило, таймер сброса срабатывает через 20 миллисекунд.
21: Оставшийся бит позволяет блокировать кеширование страницы эта возможность актуальна для тех страниц, которые отображаются на регистр устройств, а не на память, если операционная система вошла в цикл.
22: Ожидание отклика какого-нибудь устройства ввода вывода на только что выданную ей команду очень важно, чтобы аппаратура продолжала извлечение слова из устройства, а не использовала старую копию, попавшую в кэш благода.
23: Благодаря этому биту кешированние может быть отключено те машины, у которых есть отдельное пространство ввода, вывода и которые не используют ввод вывод с отображением данного пространства в память в этом бите не нужда.
24: Следует понимать, что подобная строка создаётся для каждого страничного блока, находящегося в оперативной памяти, у 1 процесса может быть очень много страниц и, соответственно, большое количество строк в таблице Коли.
25: Процессов достигает несколько Десятков, а то и более сотни в системе. Таким образом, чем больше в системе процессов, тем больше задействовано оперативной памяти и тем большего размера таблица страниц, кото
26: Также хранится в оперативной памяти и занимает в ней определённое место, поэтому возникают 2 проблемы это быстрый поиск нужной страницы в таблице и 2 проблема.
27: Это обширный размер таблицы страниц.
28: Для ускорения поиска используются буферы быстрого преобразования памяти компьютер оснащается небольшим устройством для отображения виртуальных адресов на физические без просмотра таблицы.
29: Страниц. Устройство называется буфером быстрого преобразования адреса.
30: Синонимом является ассоциативная память зачастую это устройство находится внутри диспетчера памяти и состоит из небольшого количества записей, как правило, не более 60 четы.
31: 3 записей. Каждая запись содержит информацию об 1 странице, включающую номер виртуальной страницы бит, устанавливающийся при модификации страницы. Код защиты, то есть
32: Разрешение на чтение, запись и выполнение и физический страничный блок, в котором расположена страница, эти поля, имеют точное соответствие полям в таблице страниц, за исключением номера вирту.
33: Страница, который в таблице страниц не нужен, ещё 1 beat показывает на задействованность страницы, то есть используется она или нет.
34: Пример подобной таблицы приведён на рисунке.
35: Напоминаю, что размер таблицы составляет, как правило, 64 строки, в данном случае приведено лишь 4 строки.
36: Рассмотрим место размещения буфера быстрого преобразования и общий принцип работы диспетчера памяти.
37: Теперь рассмотрим работу буфера быстрого преобразования адреса когда диспетчеру памяти предоставляется для преобразования виртуальный адрес, аппаратура сначала проверяет, не содержится ли.
38: Номер его виртуальной страницы в буфере преобразования одновременно, то есть параллельно сравнивая его значение со всеми записями в таблице. Для этого потребуется специальное оборудование, име.
39: У всех диспетчеров памяти с буферами быстрого преобразования, если будет найдено соответствие и beta защиты не будут препятствовать доступу номер страничного блока будет взят непосредственно.
40: Из этого буфера без обращения к таблице страниц, если номер виртуальной страницы присутствует в буфере, но команда пытается осуществвить запись страницу, предназначенную только для чтения.
41: Ошибка защиты.
42: Если посмотрим на рисунок, то загрузка страницы будет выглядеть следующим образом, то есть сначала происходит обращение процессора к диспетчеру памяти диспетчер памяти просматривает буфер быстрого преобразования адреса.
43: Находит там нужную страницу и загружает её в центральный процессор.
44: А что же произойдёт, если номер виртуальной страницы не будет найден в буфере быстрого преобразования? В этом случае диспетчер памяти обнаруживает отсутствие необходимой страницы в буфере быстрого преобразования и осуществляет обыч?
45: Поиск в таблице страниц. Далее выбирается страница из буфера, которая будет заменена, при этом бит модификации удаляемой страницы копируется в таблицу страниц, находящийся в
46: Оперативной памяти. Другие значения, за исключением бита ссылки, там уже присутствуют, необходимая страница копируется в буфер быстрого преобразования, поэтому если вскоре эта страница будет
47: Будет востребована снова, то во 2 раз она уже будет найдена в данном буфере. Когда страница загружается в буфер, то все поля этой страницы берутся из памяти, то есть из таблицы страниц.
48: Рассмотрим изложенный принцип работы на схеме. Итак, 1 происходит обращение центрального процессора к диспетчеру памяти.
49: Диспетчер памяти просматривает буфер быстрого преобразования и обнаруживает, что необходимой страницы там нет, поэтому диспетчер памяти обращается к таблице страниц, которая находится уже в
50: Оперативной памяти находит там нужную страницу и размещает её в буфере быстрого преобразования, а уже затем загружает страницу в процессор, то есть если сравнить с 1.
51: Схемой, то здесь уже происходит некоторая задержка, потому что приходится обращаться к оперативной памяти до этого в 1 случае номер страничного блока был взят из буфера быстрого преобразования.
52: Здесь нужно понимать, что сама страница загружается в процессор из оперативной памяти, но при использовании буфера быстрого преобразования происходит более, скажем так, быстрый поиск необхо.
53: Ходимого номера. А что же случится, если и в оперативной памяти не найдётся нужной страницы? Этот вопрос уже рассматривался на предыдущей лекции. Рассмотрим его ещё
54: Если необходимой страницы не окажется в таблице страниц, то происходит системное прерывание, называемое ошибкой отсутствия страницы диспетчер памяти заставляет центральный процесс.
55: Передать управление операционной системе для загрузки необходимой страницы в память процесс на это время блокируется операционная система выбирает редко используемый страничный блок и сбрасывает его.
56: Содержимое на диск, если версия страницы, находящейся в оперативной памяти, отличается от версии, находящейся на жёстком диске, затем операционная система извлекает также с диска страницу.
57: На который была ссылка и помещает её в только что освободившийся страничный блок и вносит изменения в таблицу страницы. Далее информация о странице загружается в буфер быстрого преобразования адреса по уже
58: Смотренному сценарию и заново запускается прерванная команда.
59: Рассмотрим изложенный принцип работы на схеме итак, происходит обращение центрального процессора к диспетчеру памяти. Диспетчер памяти просматривает буфер быстрого преобразования адреса необходи.
60: Страницы там нет, поэтому диспетчер памяти обращается к таблице страниц, находящейся в оперативной памяти в таблице страниц нужной страницы также нет, тогда диспетчер памяти осуществляет.
61: Системный вызов, который называется ошибка отсутствия страницы. Операционная система, используя определённый алгоритм, применяемый алгоритм будет рассмотрен на следующей лекции. Выбирает
62: Страницу в памяти, вместо которой будет размещена страница жёсткого диска и даёт задание контроллеру диска о копировании страницы в оперативную память.
63: После копирования через диспетчер прерываний сообщается о том, что задание выполнено.
64: Далее диспетчер памяти копирует информацию о странице в буфер быстрого преобразования.
65: И загружает необходимую страницу центральный процессор.
66: Нужно понимать, что рассмотрят пример работы только 1 процесса в однопроцессорной одноядерной системе в реальности все значительно сложнее.
67: В оперативной памяти в зависимости от её размера может находиться одновременно несколько Десятков процессов, и когда происходит переключение центрального процессора на другой процесс, то диспетчер памяти работает уже с таблицей страниц другого процесса.
68: Кроме того, если центральный процессор имеет в своём составе более 1 ядра, то каждое ядро может работать с отдельным процессором все это в значительной степени усложняет саму операционную систему, так как ей необходимо в этом слу.
69: Управлять большим количеством функций.
70: Для решения 2 проблемы большие размеры страниц используются многоуровневые таблицы страниц секрет метода использования многоуровневой таблицы страниц заключается в отказе от постоянного хранения всех.
71: Таблиц страниц в памяти в частности вообще не должны храниться те таблицы, в которых нет необходимости. Например, процессу требуется 12 мегабайт, нижние 4 мегабайта памяти для
72: Text программы следующий 4 мегабайта для данных и верхние 4 мегабайта для стека.
73: На данном рисунке показано, как работает двухуровневая таблица страниц.
74: Слева показана таблица страницы верхнего уровня, содержащая 1024 записи, соотносящиеся с 10 битным полем рабочей таблицы номер 1, когда диспетчеру памяти.
75: Ставляется виртуальный адрес, то сначала он извлекает поле рабочей таблицы 1 и использует его значение в качестве индекса для таблицы страниц верхнего уровня каждая из этих тысяч 24 записе.
76: В таблице страниц верхнего уровня предоставляет 4 мегабайта из записи, место которой определяется путём индексирования таблицы страниц верхнего уровня, извлекается адрес или номер.
77: Страничного блока. Таблица страниц 2 уровня. Запись 0 таблицы страниц верхнего уровня указывает на таблицу страниц для текста программы запись 1 на таблицу страниц для данных, а за
78: Запись 1023 на таблицу страниц для стека. Другие закрашенные рисунки записи не используются поле рабочей таблицы номер 2 теперь используется в качестве индекса на выбранную.
79: Таблицу страниц 2 уровня, предназначенную для поиска номера страничного блока, для самой страницы, по смещению же определяется физический адрес страницы.
80: В качестве примера рассмотрим 30 двухразрядный виртуальный адрес, который представлен на рисунке в шестнадцатиричной системе счисления. 1 символ в шестнадцатиричной системе исчисления переводится в 4, бита в 2.
81: Двоичной системе в двоичном коде адрес будет выглядеть следующим образом. Соответственно, будет состоять из 32 бит.
82: Первые 10 бит указывают на номер 1 таблицы, в данном случае он равен единице.
83: Вторые 10 бит на номер 2 таблицы, в данном случае он равен 3.
84: Оставшиеся 12 бит обозначают смещение и это смещение равно 4. Вернёмся к рисунку. 1 таблица указывает на данные.
85: 2 таблица на 3 раздел внутри поля данных.
86: В нашем примере на каждый раздел, то есть на подтекст программы данные и стек, выделяется 4 мегабайта, 4 мегабайта это 4195304 байта.
87: Соответственно, 1 строка в таблице 2 уровня указывает на 4096 байт.
88: В рабочей таблице номер 2 указание идёт на 3 раздел, соответственно, 3 раздел во 2 таблице будет указывать на байты от 12288 до 16300.
89: 83. Смещение равно 4. Поэтому к нижнему показателю 12288 нужно прибавить 4, и получится, что это смещение указывает на
90: 15292 байт в области данных.
91: Соответственно, абсолютный адрес байта будет иметь номер 4206596. Если необходимые страницы не присутствуют в памяти, то
92: Присутствие отсутствия в записи таблицы страниц будет иметь нулевое значение, что вызовет ошибку отсутствия страницы если страница присутствует в памяти, то номер страничного блока, взятый из таблицы страниц 2 уровня объеди.
93: Меняется со смещением для построения физического адреса, и уже этот адрес выставляется на шину и отправляется к блоку памяти система показывает на рисунке, в которой используется двухуровневая таблица страниц.
94: Может быть расширена до 3, 4 и более уровней. Дополнительные уровни придают ещё большую гибкость. Современные операционные системы поддерживают таблицы страниц до 4 уровней. Это
95: Позволяет работать с оперативной памятью объёмом до 256 терабайт.