From fb31765cbe33890f325a87015507364156741321 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 19:59:44 +0200 Subject: Adding upstream version 42.0. Signed-off-by: Daniel Baumann --- help/C/memory-map-use.page | 174 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 174 insertions(+) create mode 100644 help/C/memory-map-use.page (limited to 'help/C/memory-map-use.page') diff --git a/help/C/memory-map-use.page b/help/C/memory-map-use.page new file mode 100644 index 0000000..b2f03e4 --- /dev/null +++ b/help/C/memory-map-use.page @@ -0,0 +1,174 @@ + + + + + + + + + + Phil Bull + philbull@gmail.com + 2011 + + + + Michael Hill + mdhillca@gmail.com + 2011, 2014 + + + View the memory map of a process. + + + Using memory maps + + + Phil Bull +

Explain how to use the Memory Map feature.

+
+ +

Virtual memory is a representation of the combined + physical memory and swap space in a + system. It enables running processes to access more than the + existing physical memory by mapping locations in physical memory + to files on disk. When the system needs more pages of memory than are + available, some of the existing pages will be paged out or written + to the swap space.

+ +

The memory map displays the total virtual memory use of the + process, and can be used to determine the memory cost of running a single or + multiple instances of the program, to ensure the use of the correct shared + libraries, to see the results of adjusting various performance tuning + parameters the program may have, or to diagnose issues such as memory + leaks.

+ +

To display the memory map of a + process:

+ + +

Click the Processes tab.

+

Right click the desired process in the process list.

+

Click Memory Maps.

+
+ +
+ Reading the memory map + + + +

Addresses are displayed in hexadecimal (base 16).

+
+ +

Sizes are displayed in IEC binary + prefixes.

+
+ +

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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Filename

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 Start

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 End

The address at which the memory segment ends.

VM Size

The size of the memory segment.

Flags

The following flags describe the different types of memory-segment + access that the process can have:

+ + + <gui>p</gui> +

The memory segment is private to the process, and is not accessible + to other processes.

+
+ + <gui>r</gui> +

The process has permission to read from the memory segment.

+
+ + <gui>s</gui> +

The memory segment is shared with other processes.

+
+ + <gui>w</gui> +

The process has permission to write into the memory segment.

+
+ + <gui>x</gui> +

The process has permission to execute instructions that are + contained within the memory segment.

+
+
+

VM Offset

The location of the address within the memory segment, + measured from VM Start.

Private, Shared, Clean, Dirty

private pages are accessed by one + process

+

shared pages can be accessed by more than + one process

+

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

Device

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.

+ +
+
-- cgit v1.2.3