Навигация
Главная
Поиск
Форум
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
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Модуль Forms 65535
Имитационное мо... 61252
Реклама
Сейчас на сайте
Гостей: 7
На сайте нет зарегистрированных пользователей

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

Моделирование процесса обработки заданий на вычислительном центре на GP...
База данных электронного документооборота на Delphi + бд Intebase
База данных междугородних телефонных разговоров на Delphi

Реклама



Подписывайся на 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 Июнь 23 2015 09:14:06 · 0 Комментариев · 2141 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Измерение тактово...
Delphi7 Для профе...
CarGame [Исходник...
Fig [Исходник на ...
Программа предназ...
Delphi 6. Учебный...
XPcontrol
Самоучитель PHP 5...
Assistant
База предприятий ...
База Allsubmitter...
База данных: Книж...
Открытие Cd-ROM'a...
Архив значков
Нестандартные при...
BDEPack
Меню проводника в...
Atb
С. Г. Горнаков - ...
Pirc

Топ загрузок
Приложение Клие... 100541
Delphi 7 Enterp... 92571
Converter AMR<-... 20109
GPSS World Stud... 15743
Borland C++Buil... 13282
Borland Delphi ... 9288
Turbo Pascal fo... 7124
Калькулятор [Ис... 5262
Visual Studio 2... 5042
FreeSMS v1.3.1 3564
Случайные статьи
Модуль Image
• Framed Protocol
Друзья на высоких ...
клиент/сервер с кл...
Циклические очереди
Конструктор
«Бегун» про контек...
Из главного меню с...
Анимация в компьют...
Закрытое наследова...
Семантические сети...
Изменение направле...
Misplaced conditio...
Аналитические реш...
Поиск и замена текста
Отделение интерфей...
Адаптер для источн...
Поиск подстроки в ...
Процедура Arc - че...
Циклический код по...
Сигналы RTS и CTS ...
Псевдонимы адресов
Программы-генераторы
Получение индексны...
Абстрактные типы д...
Статистика



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


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