русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Управление памятью


Дата добавления: 2014-11-28; просмотров: 549; Нарушение авторских прав


Память является для процесса таким же важным ресурсом, как и процессор. Процесс может выполняться, только если его коды и данные (не обязательно все) находятся в оперативной памяти.

Управление памятью заключается в:

- распределении имеющейся физической памяти между всеми существующими в системе процессами,

- загрузке кодов и данных процессов в отведенные им области памяти,

- настройке адресно-зависимых частей кодов процесса на физические адреса выделенной области,

- защите областей памяти каждого процесса.

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

При перемещении кодов и данных между оперативной памятью и диском подсистема виртуальной памяти выполняет преобразование (трансляцию) виртуальных адресов, полученных в результате компиляции и

компоновки программы, в физические адреса ячеек оперативной памяти. Очень важен тот факт, что все операции по перемещению кодов и данных между оперативной памятью и диском, а также трансляцию адресов выполняются операционной системой прозрачно для программиста.

Защита памяти – это избирательная способность предохранять выполняемый процесс от записи или чтения памяти, назначенной другому процессу. В принципе, корректно и правильно написанная программа и не должна пытаться обратиться к чужой памяти. Если подобные попытки все же предпринимаются, это значит, что, либо в программе присутствуют ошибки, либо имеется злой умысел. Подсистема защиты памяти операционной системы должна пресекать попытки несанкционированного доступа процессов к чужим областям памяти. От того, насколько удачно реализована подсистема защиты памяти, во многом зависит стабильность операционной системы.



Итак, подсистема управления памятью операционной системы занимается:

- отслеживанием свободной и занятой памяти,

- выделение памяти процессам и освобождение ее при завершении процессов,

- защита памяти,

- вытеснение процессов из основной памяти на диск, когда размеры оперативной памяти недостаточны для размещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место,

- настройка адресов программы на конкретные области физической памяти.

 



<== предыдущая лекция | следующая лекция ==>
Управление процессами | Управление файлами


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 4.671 сек.