Навигация
Главная
Поиск
Форум
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
Реклама
Сейчас на сайте
Гостей: 47
На сайте нет зарегистрированных пользователей

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

Меры близости на векторах в Delphi + Блок схемы
База данных студентов на Delphi + Microsoft SQL Server
Моделирование автомойки на GPSS + Отчет + Блок схемы

Программный интерфейс
Операционная система 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 18:31:02 · 0 Комментариев · 1712 Прочтений · Для печати

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


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



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

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

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

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

Пароль



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

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

Случайные загрузки
Карта сайта
Tag Игра "Пятнашк...
MxProtector
Как программирова...
Rotolabel
C++ : библиотека ...
Flash MP3 Player ...
PHP глазами хакера
Программа рисует ...
Последнее загруж...
Программа "AutoRu...
Borland Delphi 6....
CwstatusBar
Программирование ...
Аватары в комме...
Visual Basic for ...
SendSMS для PHP-F...
Система баннеро...
База данных фильм...
XPATComponents

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97833
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14191
Borland Delphi ... 10291
Turbo Pascal fo... 7373
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
1.3. Схема алгорит...
Что делать?
Система после упло...
Локальные сети с ш...
Будущее хавбека Ми...
Найти список изоли...
Стандартные матема...
Представление симв...
Числоформы (этот т...
РЕШЕНИЕ: УПРОЩЕНИЕ...
Начать играть в кл...
Виртуальное наслед...
Процедура Getlmage...
Задачи 2
Типы онлайновой ин...
Все типы в С++ дел...
Частные клиники Ка...
Программисту нужно...
Структура объекта ...
данных зоны DNS (т...
Создание нового са...
Программа выбора н...
Это и есть ПАР
Фреш казино
Механизм условных ...
Статистика



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


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