Содержание
Содержание
1. Выделение памяти динамическими разделами
1.1. Типы адресов
1.2. Распределение памяти фиксированными разделами
1.3. Распределение памяти динамическими разделами
1.4. Перемещаемые разделы
2. Выделение динамической памяти
и дефрагментация свободных участков памяти
3.Листинг программы
4.Список литературы
Выдержка из текста
1. Выделение памяти динамическими разделами
Память является важнейшим ресурсом, требующим тщательного управления со сто¬роны мультипрограммной операционной системы. Распределению подлежит вся оперативная память, не занятая операционной системой. Обычно ОС располагается в самых младших адресах, однако может занимать и самые старшие адреса. Функциями ОС по управлению памятью являются [8]: отслеживание свободной и занятой памяти, выделение па¬мяти процессам и освобождение памяти при завершении процессов, вытеснение процессов из оперативной памяти на диск, когда размеры основной памяти не достаточны для рамещения в ней всех процессов, и возвращение их в оперативную память, когда в ней освобождается место, а также настройка адресов программы на конкретную область физической памяти.
1.1. Типы адресов
Для идентификации переменных и команд используются [1] символьные имена (мет¬ки), виртуальные адреса и физические адреса (рисунок 1).
Символьные имена присваивает пользователь при написании программы на алгоритмическом языке или ассемблере.
Рис. 1. Типы адресов
Физические адреса соответствуют [1] номерам ячеек оперативной памяти, где в действительности расположены или будут расположены переменные и команды. Переход от виртуальных адресов к физическим может осуществляться двумя способами. В первом случае замену виртуальных адресов на физические делает специальная системная программа перемещающий загрузчик [7]. Перемещающий загрузчик на основании имеющихся у него исходных данных о начальном адресе физической памяти, в которую предстоит загружать программу, и информации, предоставленной транслятором об адресно-зависимых константах программы, выполняет загрузку программы, совмещая ее с заменой виртуальных адресов физическими.
Список использованной литературы
Список литературы
1.Н. А. Олифер, В. Г. Олифер. Центр Информационных Технологий.
http://citforum.univ.kiev.ua/operating_systems/sos/glava_7.shtml
2.Дональд Э. Кнут Искусство программирования. В 3-х томах. М.: Вильямс, 2007. 832 с.
3.Сайт «Учебные пособия для студентов университетов и абитуриентов»
http://dvoika.net/infor/teor/Glava%204/Index3.htm
4.Сайт «COD:NET Все для программиста. Физические основы программирования»
http://www.codenet.ru/cat/Other/low-level/
5.Свободная энциклопедия «Википедия»
http://ru.wikipedia.org/
6.Роберт Седжвик. Фундаментальные алгоритмы на С++. Анализ/Структуры данных/ Сортировка/Поиск. К.: Издательство «Диасофт», 2001. 688 с.
7.А.П. Побегайло Системное программирование в Windows. СПб.: BHV-Петербург, 2006. 1056 с.
8.Джеффри Рихтер Создание эффективных WIN32-приложений с учетом специфики 64-разрядной версии Windows. СПб.: Питер, 2004. 749 с.
9.Герб Сеттер Решение сложных задач на C++. М.: Вильямс, 2008. 400 с.
10.А. Л. Марченко C++. Бархатный путь. М.: Горячая Линия Телеком, 2005. 400 с.
11.У.Савич Программирование на C++. СПБ.: Питер; Киев: Издательская группа BHV, 2004. 781 с.
12.С. Дьюхерст Священные знания. СПб.: Символ-Плюс, 2007. 240 с.