Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Содержание сайт... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Invision Power ... 65308
Организация зап... 63966
Модуль Forms 60864
Создание отчето... 60740
ТЕХНОЛОГИИ ДОСТ... 57065
Создание потоко... 56436
Пример работы с... 54322
Имитационное мо... 52516
Реклама
Сейчас на сайте
Гостей: 14
На сайте нет зарегистрированных пользователей

Пользователей: 13,065
новичок: railval
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Обучающая и тестирующая программа по здаче экзамена ПДД на Turbo Pascal ...
Моделирование процесса обеспечивающего надежность функционирования АСУ Т...
Информационная система - продуктовый магазин на Turbo Pascal (База данны...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Алгоритм перезагрузки TLB системы Mach
Алгоритм перезагрузки TLB системы Mach предлагал решение общей проблемы синхронизации буферов TLB. Разработчики попытались добиться максимальной эффективности его функционирования, которую можно достичь без изменения аппаратных характеристик систем (единственным требованием методики является поддержка межпроцессорных прерываний) или причин наступления события, следствием которого является необходимость перезагрузки TLB.


Также вам может показаться, что такая тема как http://filmograd.net/melodramy/ никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт filmograd.net. Тема лучшие мелодрамы о любви там представлена весьма широко. На том сайте можно узнать много интересного на тему лучшие мелодрамы о любви. Что означает вообще тема лучшие мелодрамы о любви, где найти лучшие мелодрамы о любви - про это написано на сайте filmograd.net. Это очень важная для многих людей тема - лучшие мелодрамы о любви. Спасибо сайту filmograd.net за информацию на тему лучшие мелодрамы о любви.



В системе SVR4/MP применяется несколько другой подход к решению проблемы. Система пытается анализировать событие, обусловившее недействительность TLB, и найти наиболее удачный метод его обработки. В этой ОС существуют четыре типа событий, требующих синхронизации буферов TLB:



♦ процесс изменяет размер своего адресного пространства путем вызова brk (или sbrk), либо при освобождении области памяти;
♦ демон pagedaemon сбрасывает корректность страницы или с целью ее освобождения, или для имитации битов ссылки;
♦ ядро отображает системный виртуальный адрес в другую физическую страницу;
♦ процесс пытается произвести запись в страницу, разделяемую по методу копирования при записи.
В системе SVR4/MP аппаратура машины автоматически сбрасывает TLB при каждом переключении контекста [15]. Следовательно, случай первого типа событий не представляет никакой проблемы, поскольку система не поддерживает многонитевые процессы. Операционная система SVR4/MP обладает средствами оптимизации случаев 2 и 3.
Для уменьшения числа одиночных сбросов вхождений TLB во втором случае демон pagedaemon накапливает несколько таких заданий и производит их одной операцией. Это позволяет уменьшить затраты, связанные со сбросом каждого элемента в отдельности.
Основным «поставщиком» операций сброса корректности TLB в SVR4 является драйвер seg_map, используемый при вызовах read или write. Ядро реализует эти вызовы при помощи создания отображения файла в собственном адресном пространстве и последующего копирования данных прикладному процессу. Ядро управляет сегментом seg_map, позволяющим динамически подключать и отключать страницы файлов в адресном пространстве. Это приводит к частому изменению физических отображений виртуальных адресов сегмента. Так как ядро разделяется между всеми процессами системы, именно оно ответственно за корректность отображений. Процессы не должны обращаться к уже устаревшим отображениям, хранящимся в TLB других процессоров системы.
Для отслеживания устаревших вхождений TLB ядро системы SVR4/MP поддерживает глобальный счетчик (generation count), а также набор локальных счетчиков (по одному на каждый процессор). После сброса процессором информации буфера TLB происходит увеличение глобального счетчика и копирование его нового значения в локальный счетчик. При освобождении отображения страницы драйвером seg_map ядро передает адресу значение глобального счетчика. Если драйвер отображает по этому адресу новую физическую страницу, ядро сравнивает сохраненное содержимое счетчика со значением локального счетчика каждого процессора. Если величина локального счетчика окажется ниже по сравнению с сохраненным значением, можно сделать вывод, что буфер TLB содержит устаревшие данные. В этом случае ядро объявляет недействительным весь буфер TLB. В противоположном случае можно сделать вывод о том, что все процессоры обновили информацию TLB после сброса корректности адреса, таким образом, для рассматриваемой страницы не осталось устаревших отображений.
Разработчики SVR4/MP в целях оптимального решения проблемы исходили из того, что после сброса корректности seg_map ядро не сможет обратиться к соответствующему адресу до тех пор, пока по нему не будет создано отображение нового физического адреса. С целью минимизации операций сброса корректности TLB страницы, освобождаемые seg_map повторно используются в порядке FIFO. Это позволяет удлинить промежуток времени между освобождением адреса и созданием нового отображения, что также увеличивает и вероятность сброса буферов TLB другими процессами за этот период.
Операционная система SVR4.2/MP представляет собой многонитевую версию SVR4.2, поддерживающую многопроцессорную обработку. Правила перезагрузки TLB и их реализация в системе обладают определенными сходствами со средствами SVR4/MP, описанными в разделе 15.11.1, однако они отличаются от предыдущей версии и некоторыми важными дополнениями. Все взаимодействия с буфером TLB перенесены в системе на аппаратно-зависимый уровень НАТ (см. раздел 14.4). При разработке SVR4.2/MP основной задачей был перенос ОС на архитектуру Intel 386/486, однако алгоритмы поддержания корректности TLB и интерфейсы взаимодействия с ними легко портируются и на другие аппаратные платформы.
Опубликовал katy June 23 2015 09:14:06 · 0 Комментариев · 1555 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
SynEdit
Delphi 2005 Учимс...
Программирование ...
Язык программиров...
Отключение и вклю...
Java в примерах -...
RAS
Sztransppanel
Экранная лупа
Программирование ...
DiskInfo
Программа рисует ...
Анимированное поя...
Error mod
Мод "проверочный ...
MiniTetris [Исход...
Нестандартные при...
Сапёр
Converter AMR<->W...
Динамические за...

Топ загрузок
Приложение Клие... 100376
Delphi 7 Enterp... 83122
Converter AMR<-... 20046
Borland C++Buil... 11183
GPSS World Stud... 10948
Borland Delphi ... 8130
Turbo Pascal fo... 6973
Visual Studio 2... 4963
Калькулятор [Ис... 4373
FreeSMS v1.3.1 3510
Случайные статьи
Фотоаппарат и всп...
Перечислим основны...
Играть в игровые а...
Содержание
Сайты для бесплатн...
Подсистема VM
Работа с MySql...
Методы проверки со...
SQL Azure
чтобы определить, ...
вычисления значени...
MissingMappingActi...
Принципы реализаци...
Внедрение в эксплу...
ЭТАП 1. ИДЕНТИФИКА...
Листинг 11.4. Быст...
Спил деревьев
внутри указанного
Просмотр данных ни...
Игры для программиста
Наконец-то казино ...
Режим с обострением
Но может ли квадра...
ЧТО такое XSL
Statement part too...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?