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

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

Движение шарика в эллиптическои параболоиде на Delphi [OpenGL] + Блок схемы
Метод конечных разностей для интерполяции/экстраполяции на Delphi
Игра Sokoban на Delphi + Блок схемы

Система Mach - фундаментальные понятия
Система Mach разрабатывалась на основе объектно-ориентированного подхода. Все ее основные абстракции представлены в виде объектов, доступных при помощи четко определенного интерфейса. На рис. 15.3 схематично показаны наиболее важные объекты подсистемы управления памятью. Объектом наивысшего уровня является карта адресации, описываемая структурой vm_map.


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


В ней находится двунаправленный связанный список вхождений карты адресации и подсказка на последнее вхождение, ставшее причиной возникновения исключения. Каждое вхождение карты адресации (структуры vm_map_entry) описывает непрерывную область виртуальной памяти, имеющую одинаковые установки защиты и наследуемости и управляемую одним и тем же объектом памяти. Объект vm предоставляется задачам интерфейсом доступа к страницам объектов памяти. Объект памяти (memory object) является абстрактным базовым классом — совокупностью байтов данных, определяющей такие операции, как read или write. Эти операции выполняются менеджером данных (data manager или pager) объекта.


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


Более подробно читайте об этом в разделе 15.4.3. Объект памяти также поддерживает связанный список всех своих резидентных страниц, что позволяет увеличить скорость выполнения таких операций, как освобождение объекта, сброс битов корректности страниц или копирование всех страниц объекта на диск.
Каждый объект памяти ассоциируется с уникальным объектом vm. Если две задачи отображают один и тот же объект памяти в свои адресные пространства, они разделяют между собой и объект vm (см. раздел 15.3). Объект vm также содержит счетчик ссылок на себя.
Сходства подсистемы памяти Mach и SVR4 являются просто поразительными. Объект vm_map подобен структуре as, а объект vm_map_entry аналогичен структуре seg. Роль менеджера памяти близка назначению функций, выполняемых драйверами сегментов (расхождения проявляются лишь в том, что менеджер реализован в виде отдельной задачи). Важным отличием подсистем памяти двух ОС является отсутствие в Mach массива элементов защиты страниц. Если задача изменяет защиту некоторого количества страниц области памяти1, то система Mach разделит эту область на два2 отдельных участка, отображаемых на том же объект памяти. Некоторые операции могут привести к обратному эффекту, то есть соединению смежных участков памяти.
В системе Mach имеются еще две важные структуры данных, называемые таблицей резидентных страниц и структурой ртар. Таблица резидентных страниц представляет собой массив (структуру vm_page[]), в котором каждый элемент описывает одну физическую страницу памяти. Размер физической страницы равен размеру аппаратной страницы, умноженному на некоторую степень числа 2. Физическая память интерпретируется системой как кэш содержимого объектов памяти. Пространство имен страниц образуют пары (<объект, смещение>), указывающие на объект памяти, к которому принадлежит данная страница и смещение от начала этого объекта. Информация о каждой странице таблицы хранится также в следующих трех списках:
♦ список объектов памяти. Соединяет все страницы одного объекта, ускоряет операции открепления объекта и копирования при записи;
♦ очереди выделения памяти. Поддерживаются страничным демоном (paging daemon). Страница может находиться в очередях активных, неактивных страниц и свободных страниц;
♦ таблицы хэширования «объекта/смещения». Применяются для быстрой локализации страницы в памяти.
Массив vm_page[] похож на аналогичный массив раде[], имеющийся в SVR4.
Каждая задача Mach располагает машинно-зависимой структурой ртар (аналог уровня НАТ системы SVR4), которая служит для описания определяемой аппаратной частью карты преобразования виртуальных адресов в физические. Эта структура невидима для остальной части системы и доступна при помощи процедурного интерфейса. Ниже перечислены некоторые функции интерфейса:
♦ pmap_create() — вызывается при необходимости в новом адресном пространстве. Создает новую структуру ртар и возвращает указатель на нее;
♦ pmap_reference() и pmap_destroy() — увеличивают или уменьшают на единицу значение счетчиков ссылок ртар;
♦ pmap_enter() и pmap_remove() — применяются для ввода и удаления преобразований адресов;
♦ pmap_remove_all() — удаляет все преобразования адреса физической страницы. Каждая страница может обладать несколькими преобразованиями, поскольку вправе разделяться несколькими задачами (или быть отображенной по нескольким адресам одного адресного пространства);
♦ pmap_copy_on_write() — понижает защиту всех преобразований страницы до «только для чтения»;
♦ pmap_activate() и pmap_deactivate() — вызывается при переключениях контекста с целью изменения активной структуры ртар процессора.
Операционная система Mach поддерживает разделение чтения-записи или копирования при записи между связанными и несвязанными друг с другом задачами. Задачи наследуют области памяти от своих родителей при вызове task_create. Это позволяет
Опубликовал katy June 20 2015 18:33:34 · 0 Комментариев · 2339 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Редактор текста (...
DFileDeleter
Работа с базами д...
PDJPack
PDJ Scrollers
Технология .Net в VB
Ics
Песочные часы
Распознавание иде...
Факториал [Исходн...
Прграммирование в...
DirHTMLReportBuil...
XPcontrol
CwstatusBar
3d Tank [Исходник...
Добавление к ссы...
Профессиональное ...
Профессиональное ...
Report
С. Г. Горнаков - ...

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97839
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14194
Borland Delphi ... 10293
Turbo Pascal fo... 7374
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
Геометрические фигуры
Глава 5. Работа с ...
Определите тип инф...
Vulkan Original
Приведение типов в...
Получение событий ...
Игровые автоматы Дрип
Легальный заработок
Как привлечь 1000 ...
ПЕРЕХВАТ ПАРОЛЕЙ
Как в выбранной яч...
Unit name mismatch
Последний вариант ...
5.3. Ввод предлож...
Драйверы устройств
Приемы проверочных...
Инициализация пере...
Стандартный класс ...
Структуризация сис...
Оболочка независим...
ш - Алфавитный ука...
Приемы безопасного...
Сетевые интерфейсы...
Табулирование функ...
(Terminal Services...
Статистика



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


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