Реализация алгоритма для MIPS также учитывает случай записи процессом страницы, имеющей атрибут копирования при записи. Ядро создает новую копию страницы и передает ее процессу, осуществляющему запись. Это также сбрасывает данные о странице из локального буфера TLB.
Также вам может показаться, что такая тема как http://clevereco.ru/news/pravo никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт clevereco.ru. Тема правоприменение там представлена весьма широко. На том сайте можно узнать много интересного на тему правоприменение. Что означает вообще тема правоприменение, где найти правоприменение - про это написано на сайте clevereco.ru. Это очень важная для многих людей тема - правоприменение. Спасибо сайту clevereco.ru за информацию на тему правоприменение.
Если процесс ранее выполнялся на другом процессоре, вхождение TLB этого CPU может содержать устаревшую информацию о странице. Ядро поддерживает ведение записи процессоров, на которых выполняется процесс. Если после записи страницы, имеющей атрибут копирования при записи, процесс продолжит выполнение на одном из таких процессоров, после переключения контекста ядро произведет сброс буфера TLB процессора.
Оптимизации, описанные в этом разделе, способствуют минимизации операций глобальной синхронизации TLB и могут положительно повлиять на производительность системы. В частности, усовершенствования драйвера seg_map являются весьма полезными, так как отображения ядра разделяются между всеми процессами системы и вследствие этого seg_map используется практически постоянно. С другой стороны, представленные решения довольно специфичны и зависят как от особенностей аппаратных средств, так и функционирования системы, принимающей решение о синхронизации. Не существует какого-либо единого универсального алгоритма (кроме реализованного в ОС Mach), который являлся бы аппаратно-независимым и подходил для решения всех потенциально возможных ситуаций.
Виртуально адресуемый кэш
Буфер TLB представляет собой кэш преобразований адресов. Как правило, компьютеры оборудованы также высокоскоростными кэшами для физической памяти. В большинстве машин имеются либо отдельные кэши для данных и инструкций, либо единый кэш для обоих типов данных. Размер аппаратного кэша равен 64-512 Кбайт, скорость доступа к нему намного выше по сравнению со скоростью обращения к основной памяти. В большинстве случаев применяется технология кэширования с отложенной записью. Это означает, что операции записи данных изменяют только ту информацию, которая хранится в кэше. Данные сбрасываются в основную память непосредственно при необходимости проведения изменения внутри кэша, например, при удалении информации с целью освобождения пространства для новых данных.
Традиционные аппаратные архитектуры имеют физически адресуемый кэш (см. рис. 15.15). Диспетчер MMU производит преобразование виртуального адреса и лишь после этого обращается к физической памяти. Все операции с физической памятью осуществляются через кэш. Если необходимые данные найдены в кэше, блок MMU не обращается к физической памяти.
Такой подход имеет главное преимущество — простоту. Гарантом целостности кэша выступает аппаратная часть системы. Операционная система не выполняет эту задачу и не отвечает за информацию, размещаемую в кэше. Недостатком физически адресуемых кэшей является тот факт, что просмотр кэшированных данных можно осуществить только после преобразования адреса, что уменьшает преимущества применения кэширования. Более того, если буфер TLB не обладает корректным преобразованием, диспетчеру MMU приходится передавать элемент таблицы страниц из физической памяти. Это требует дополнительных обращений к кэшу и основной памяти машины.
Виртуально адресуемый кэш 721
Во многих современных архитектурах применяется виртуально адресуемое кэширование, что в некоторых случаях позволяет отказаться от буферов TLB (см. рис. 15.16). Диспетчер MMU производит поиск виртуального адреса в кэше. Если адрес будет найден, то на этом операция завершается. Если данные отсутствуют в кэше, устройство MMU продолжает работу с преобразованием адреса и получает необходимые данные из физической памяти.
Однако в системах могут использоваться одновременно и буфер TLB, и виртуально адресуемый кэш. В таких архитектурах (примерами которых являются MIPS R4000 [14] и Hewlett-Packard RA-RISC [11]) устройство MMU производит одновременный поиск информации в кэше и TLB. Этот подход дает высокую производительность работы за счет усложнения архитектуры.
Опубликовал katy
June 23 2015 06:30:53 ·
0 Комментариев ·
2802 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.