| Server IP : 85.112.90.236 / Your IP : 192.168.1.26 Web Server : Apache System : Linux 85-112-90-236.cprapid.com 6.12.0-211.7.3.el10_2.x86_64 #1 SMP PREEMPT_DYNAMIC Tue May 19 12:46:58 EDT 2026 x86_64 User : ftechme ( 1002) PHP Version : 8.2.32 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /usr/share/help/zh_CN/gnome-system-monitor/ |
Upload File : |
<?xml version="1.0" encoding="utf-8"?>
<page xmlns="http://projectmallard.org/1.0/" xmlns:ui="http://projectmallard.org/ui/1.0/" type="topic" style="task" id="memory-map-use" xml:lang="zh_CN">
<info>
<revision pkgversion="3.11" date="2014-01-28" status="candidate"/>
<link type="guide" xref="index#memory" group="memory"/>
<include xmlns="http://www.w3.org/2001/XInclude" href="legal.xml"/>
<credit type="author copyright">
<name>Phil Bull</name>
<email>philbull@gmail.com</email>
<years>2011</years>
</credit>
<credit type="author copyright">
<name>Michael Hill</name>
<email>mdhillca@gmail.com</email>
<years>2011, 2014</years>
</credit>
<desc>查看进程的内存映射。</desc>
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
<mal:name>Victor_Trista</mal:name>
<mal:email>ljlzjzm@hotmail.com</mal:email>
<mal:years>2023</mal:years>
</mal:credit>
</info>
<title>使用内存映射</title>
<p><gui>虚拟内存</gui> 代表系统中 <gui>物理内存</gui> 和 <link xref="mem-swap">交换空间</link> 的组合。通过将物理内存中的位置 <gui>映射</gui> 到磁盘中的文件,它使正在运行的进程能够访问现有物理内存以外的<em>更多</em>内存。当系统需要的内存页面多于可用内存页面时,一些现有页面将被 <em>调出</em> 或写入 <gui>交换空间</gui>。</p>
<p><gui>内存映射</gui> 显示进程的总虚拟内存使用量,并可用于确定运行单个或多个程序实例的内存开销,确保使用正确的共享库,查看调整程序可能具有的各种性能调优参数的结果,或诊断内存泄漏等问题。</p>
<p>要显示进程的 <link xref="memory-map-what">内存映射</link>:</p>
<steps>
<item><p>点击 <gui>进程</gui> 选项卡。</p></item>
<item><p>在<gui>进程列表</gui>中右键单击进程。</p></item>
<item><p>点击 <gui>内存映射</gui>。</p></item>
</steps>
<section id="read">
<title>查看内存映射</title>
<list>
<item>
<p>地址以十六进制(基数为 16)显示。</p>
</item>
<item>
<p>大小以 <link xref="units">IEC 二进制词头</link> 显示。</p>
</item>
<item>
<p>在运行时,进程可以将更多内存动态分配到被称为 <em>堆</em> 的区域,并将参数和变量存储到另一个被称为 <em>堆栈</em> 的区域。</p>
</item>
<item>
<p>程序本身和每个共享库各有三个入口,分别是读/执行代码段、读/写数据段和只读数据段。所有的数据段都需要在交换时调出。</p>
</item>
</list>
<table shade="rows" ui:expanded="false">
<title>属性</title>
<tr>
<td><p>文件名</p></td>
<td><p>当前进程使用的共享库的位置。如果这个字段是空的,这一行的内存信息描述的是由进程拥有的内存,其名字显示在内存映射表的上方。</p></td>
</tr>
<tr>
<td><p>VM 开始于</p></td>
<td><p>内存段开始的地址。VM 开始、VM 终止和 VM 偏移量共同指定共享库映射到磁盘的位置。</p></td>
</tr>
<tr>
<td><p>VM 终止于</p></td>
<td><p>内存段结束的地址。</p></td>
</tr>
<tr>
<td><p>VM 大小</p></td>
<td><p>内存段的大小。</p></td>
</tr>
<tr>
<td><p>标志</p></td>
<td><p>以下标志描述了进程可以拥有的内存段访问的不同类型:</p>
<terms>
<item>
<title><gui>p</gui></title>
<p>内存段是该进程私有的,其他进程无法访问。</p>
</item>
<item>
<title><gui>r</gui></title>
<p>该进程有权从内存段读取。</p>
</item>
<item>
<title><gui>s</gui></title>
<p>内存段与其他进程共享。</p>
</item>
<item>
<title><gui>w</gui></title>
<p>该进程有权写入内存段。</p>
</item>
<item>
<title><gui>x</gui></title>
<p>该进程有权执行内存段中的指令。</p>
</item>
</terms>
</td>
</tr>
<tr>
<td><p>VM 偏移</p></td>
<td><p>内存段中地址的位置,以 VM 开始位置为基准。</p></td>
</tr>
<tr>
<td><p>私有的,共享的,未被修改的,已被修改的</p></td>
<!-- <td><p>Text pages are flagged read-execute in memory and don't need to
be written to swap since they can be re-loaded from their original location
on disk. Data pages have read-write permissions, and if modified when in
memory, they are labeled <em>dirty</em>, and when designated for swapping,
must be paged out.</p></td>
-->
<td><list><item><p><em>私有的</em> 页面仅被一个进程访问</p></item>
<item><p><em>共享的</em> 页面可以被多个进程访问</p></item>
<item><p><em>未被修改的</em> 页面在内存中还没有被修改,可以在指定交换出内存时丢弃</p></item>
<item><p><em>已被修改的</em> 页面在内存中已被修改,必须在指定交换出内存时写入磁盘</p></item></list></td>
</tr>
<tr>
<td><p>设备</p></td>
<td><p>共享库文件名所在设备的主要和次要编号。它们对应着系统的磁盘分区。</p></td>
</tr>
<tr>
<td><p>Inode</p></td>
<td><p>Inode 是文件系统用来存储文件的结构,其编号是唯一的。共享库的位置通过它加载到内存中。</p></td>
</tr>
</table>
</section>
</page>