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

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

Моделирование автомойки на GPSS + Отчет + Блок схемы
Лабораторная работа по динамическим спискам на Turbo Pascal (удаление ду...
Программа тестирования (тест) - вступительные экзамены (математика, физи...

Реклама



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

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



♦ Выделение памяти. Прикладной задаче может быть выделена одна или несколько страниц виртуальной памяти при помощи функций vm_ allocate (для страниц, заполняемых нулями) и vm_map (для страниц, отображающих специфические объекты памяти, например, файлы). Вызов этих процедур не приводит к незамедлительному получению ресурсов, так как в Mach страницы появляются физически только после первого обращения к ним. Для открепления страниц применяется вызов vm_deallocate.
♦ Защита. Система Mach поддерживает ограничения на чтение, запись и выполнение для каждой страницы, однако их практическая реализация зависит от аппаратной части машины. Многие блоки MMU не распознают права на выполнение. В таких системах аппаратура разрешает выполнение любой страницы, доступной для чтения. Каждая страница памяти имеет атрибуты текущей и максимальной степени защиты. После установки максимальный уровень защиты страницы может быть только снижен. Атрибуты текущего уровня защиты не имеют права превышать максимальные значения. Для изменения обоих типов защиты страниц применяется вызов vm_protect.
♦ Наследуемость. Каждая страница обладает собственным признаком наследуемости, который определяет действия системы при создании задачей потомка посредством вызова task_create. Атрибут имеет три возможных значения:
VM_INHERIT_NONE
VM_INHERIT_SHARE
VM INHERIT COPY
Страница не наследуется потомком и не появляется в его адресном пространстве
Страница разделяется между родителем и потомком.
Обе задачи обращаются к единственной копии страницы. Изменения, внесенные одной задачей, сразу же становятся видны другой
Потомок получает собственную копию страницы.
В системе Mach такое разделение реализовано с помощью копирования при записи, таким образом данные будут продублированы только в том случае, если родитель или потомок попытаются модифицировать страницу. Этот атрибут является устанавливаемым по умолчанию для всех впервые создаваемых страниц
Изменение признака наследуемости для набора страниц производится при помощи вызова vmjnherit. Важно упомянуть, что этот атрибут не зависит от текущих установок задачи по разделению страницы. Например, задача А запрашивает страницу и устанавливает ее атрибут наследуемости в значение VM_INНERIT_SHARE. После этого происходит создание задачи-потомка Б. Задача Б изменяет значение атрибута для этой страницы в VM_INHERIT_COPY, а затем создает задачу В. В итоге страница оказывается совместно используемой в режиме «чтение-запись» задачи А и Б, и разделяемой в режиме копирования при записи с задачей

Описанное свойство системы Mach отличает ее от SVR4, где метод наследования определяется текущими установками отображения страницы в процессе (разделяемый или закрытый доступ).
♦ Другие. Вызовы vm_read и vm_write позволяют задаче осуществлять доступ к страницам, относящимся к другим задачам. Эти функции по большей части применяются отладчиками и профилировщиками. Вызов vm_regions возвращает информацию обо всех участках адресного пространства. Вызов vm_statistics собирает статистические данные о подсистеме виртуальной памяти.
Опубликовал katy June 20 2015 21:31:02 · 0 Комментариев · 1116 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
JanButtonsV
AntiRus
Введение в станда...
Trojan [Исходник ...
PDPcheck
FreeSMS v1.3.1
Расширенный загру...
PBEditPack
Мод "register.php...
Xrumer 4 Platinum...
Профессиональное ...
mmmJlabel
Технология .Net в VB
AlnComponents
INSTANT BOOSTER v...
Учебник по создан...
EMS QuickExport S...
Язык программиров...
Х. М. Дейтел, П. ...
Х. М. Дейтел, П. ...

Топ загрузок
Приложение Клие... 100470
Delphi 7 Enterp... 87060
Converter AMR<-... 20078
GPSS World Stud... 12822
Borland C++Buil... 11835
Borland Delphi ... 8604
Turbo Pascal fo... 7039
Visual Studio 2... 4999
Калькулятор [Ис... 4800
FreeSMS v1.3.1 3542
Случайные статьи
Сравнение регулярн...
Модель данных XFor...
ОПИСАНИЕ МОДЕЛЕЙ С...
Фирма Adobe
Использование DTD-...
Другие возможности...
БЛОКИ, ИЗМЕНЯЮЩИЕ ...
СМЕШИВАНИЕ ДАННЫХ ...
Самодельные чпу ст...
Ограничения, связа...
Пишем возраст поль...
Работа в отрыве от...
Архивирование оказ...
Статические элемен...
Задание на моделир...
Constant and саsе ...
Запуск и начало ра...
IP адрес, его опре...
15.1. Слова
Стандарт POSIX
Разобрать список н...
Коды классов
Хакинг стандартных...
Желонка для скважины
Переустановка пров...
Статистика



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


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