Phil Bull
philbull@gmail.com 2011
Michael Hill
mdhillca@gmail.com 2011, 2014
Просмотр карты памяти процесса.
Алексей Кабанов
ak099@mail.ru 2016

# Использование карт памяти

Виртуальная память — это сочетание физической памяти и пространства подкачки в системе. Она позволяет запущенным процессам получать доступ к большему объёму памяти, чем существующий физический объем оперативной памяти, посредством отображения мест в оперативной памяти в файлы на диске. Когда системе требуется больше страниц памяти, чем доступно, некоторые из существующих страниц будутвытеснены из ОЗУ и записаны в область подкачки.

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

Чтобы увидеть карту памяти процесса:

Зайдите на вкладку Процессы.

Щёлкните правой кнопкой на нужном процессе в списке процессов.

Выберите Карты памяти.

# Чтение карты памяти

Addresses are displayed in hexadecimal (base 16).

Размеры отображаются с использованием двоичных приставок МЭК.

At runtime the process can allocate more memory dynamically into an area called the heap, and store arguments and variables into another area called the stack.

The program itself and each of the shared libraries has three entries each, one for the read-execute text segment, one for the read-write data segment and one for a read-only data segment. Both data segments need to be paged out at swap time.

## Properties

Имя файла | The location of a shared library that is currently used by the process. If this field is blank, the memory information in this row describes memory that is owned by the process whose name is displayed above the memory-map table.
Начало VM | The address at which the memory segment begins. VM Start, VM End and VM Offset together specify the location on disk to which the shared library is mapped.
Окончание VM | The address at which the memory segment ends.
Размер VM | Размер сегмента памяти.

Флаги

Следующие флаги описывают разные типы доступа к сегменту памяти, которые может иметь процесс:

## p

Сегмент памяти является частным для процесса и недоступным для других процессов.

## r

Процесс имеет право на чтение из сегмента памяти.

## s

Сегмент памяти используется совместно с другими процессами.

## w

Процесс имеет право на запись в сегмент памяти.

## x

Процесс имеет право на исполнение инструкций, содержащихся в сегменте памяти.

Смещение VM | Расположение адреса в сегменте памяти, отсчитывая от Начала VM.

Неразделяемая, разделяемая, чистая, использованная

Неразделяемая — доступ к страницам имеет один процесс

Разделяемая — доступ к страницам может осуществляться более чем одним процессом

clean pages have not yet been modified while in memory and can be discarded when designated to be swapped out

dirty pages have been modified while in memory and must be written to disk when designated to be swapped out

Носитель | The major and minor numbers of the device on which the shared library filename is located. Together these specify a partition on the system.
Inode | The inode on the device from which the shared library location is loaded into memory. An inode is the structure the filesystem uses to store a file, and the number assigned to it is unique.