Linux系统用户态根据虚拟地址获取物理地址的方式

之前做项目的时候,也会遇到过根据页表,由虚拟地址翻译物理地址的需求,一般的做法是HACK内核,在内核中加入HACK代码,思路无非就是通过页表进行转换,但是现在有了一种新的方式,这种方式下,不需要HACK内核,也不需要重新编译内核,便能够根据进程的虚拟地址,得到它的物理地址,下面展开介绍。

原理非常简单,依赖于 proc 文件系统的几个节点:

/proc/$pid/pagemap
/proc/kpagecount
/proc/kpageflags

准确的说,只依赖第一个就够了,pagemap每8个字节为一组,描述了一个struct page 对应的结构信息,这里面就包含了它的PNF物理页框号。

测试代码:

#include 
#include 
#include 
#include 
#include 
#include 
#include 

#define PAGEMAP_ENTRY 8
#define GET_BIT(X,Y) (X & ((uint64_t)1<> Y
#define GET_PFN(X) X & 0x7FFFFFFFFFFFFF

const int __endian_bit = 1;
#define is_bigendian() ( (*(char*)&__endian_bit) == 0 )

int i, c, pid, status;
unsigned long virt_addr; 
uint64_t read_val, file_offset, page_size;
char path_buf [0x100] = {};
FILE * f;
char *end;

int read_pagemap(char * path_buf, unsigned long virt_addr);

int main(int argc, char ** argv){
    if(argc!=3){
        printf("Argument number is not correct!\n pagemap PID VIRTUAL_ADDRESS\n");
        return -1;
    }
    if(!memcmp(argv[1],"self",sizeof("self"))){
        sprintf(path_buf, "/proc/self/pagemap");
        pid = -1;
    }
    else{
        pid = strtol(argv[1],&end, 10);
        if (end == argv[1] || *end != '\0' || pid<=0){ 
            printf("PID must be a positive number or 'self'\n");
            return -1;
        }
    }
    virt_addr = strtoll(argv[2], NULL, 16);
    if(pid!=-1)
        sprintf(path_buf, "/proc/%u/pagemap", pid);

    page_size = getpagesize();
    read_pagemap(path_buf, virt_addr);
    return 0;
}

int read_pagemap(char * path_buf, unsigned long virt_addr){
    printf("Big endian? %d\n", is_bigendian());
    f = fopen(path_buf, "rb");
    if(!f){
        printf("Error! Cannot open %s\n", path_buf);
        return -1;
    }

    //Shifting by virt-addr-offset number of bytes
    //and multiplying by the size of an address (the size of an entry in pagemap file)
    file_offset = virt_addr / page_size * PAGEMAP_ENTRY;
    printf("Vaddr: 0x%lx, Page_size: %ld, Entry_size: %d\n", virt_addr, page_size, PAGEMAP_ENTRY);
    printf("Reading %s at 0x%llx\n", path_buf, (unsigned long long) file_offset);
    status = fseek(f, file_offset, SEEK_SET);
    if(status){
        perror("Failed to do fseek!");
        return -1;
    }
    errno = 0;
    read_val = 0;
    unsigned char c_buf[PAGEMAP_ENTRY];
    for(i=0; i < PAGEMAP_ENTRY; i++){
        c = getc(f);
        if(c==EOF){
            printf("\nReached end of the file\n");
            return 0;
        }
        if(is_bigendian())
            c_buf[i] = c;
        else
            c_buf[PAGEMAP_ENTRY - i - 1] = c;
        printf("[%d]0x%x ", i, c);
    }
    for(i=0; i < PAGEMAP_ENTRY; i++){
        //printf("%d ",c_buf[i]);
        read_val = (read_val << 8) + c_buf[i];
    }
    printf("\n");
    printf("Result: 0x%llx\n", (unsigned long long) read_val);
    if(GET_BIT(read_val, 63)) {
        uint64_t pfn = GET_PFN(read_val);
        printf("PFN: 0x%lx (0x%lx)\n", pfn, pfn * page_size + virt_addr % page_size);
    } else
        printf("Page not present\n");
    if(GET_BIT(read_val, 62))
        printf("Page swapped\n");
    fclose(f);
    return 0;
}

编译:

czl@czl-RedmiBook-14:~/Workspace/memory$ gcc page.c -o virt2phy
czl@czl-RedmiBook-14:~/Workspace/memory$ 

验证,思路是找两个用户态进程,根据它们的地址空间,找到libc.so的运行地址,然后用上面的工具得到libc.so的物理地址,之所以选择libc.so是因为libc.so是所有的进程共享,它们应该具有相同的物理地址,即便虚拟地址不同。

选择进程1:

czl@czl-RedmiBook-14:~/Workspace/memory$ sudo cat /proc/1/maps
[sudo] password for czl: 
559ed662f000-559ed677f000 r-xp 00000000 08:08 1181921                    /lib/systemd/systemd
559ed697e000-559ed69b9000 r--p 0014f000 08:08 1181921                    /lib/systemd/systemd
559ed69b9000-559ed69ba000 rw-p 0018a000 08:08 1181921                    /lib/systemd/systemd
559ed74fe000-559ed76e0000 rw-p 00000000 00:00 0                          [heap]
7f18fc000000-7f18fc021000 rw-p 00000000 00:00 0 
7f18fc021000-7f1900000000 ---p 00000000 00:00 0 
7f1904000000-7f1904021000 rw-p 00000000 00:00 0 
7f1904021000-7f1908000000 ---p 00000000 00:00 0 
7f19082dd000-7f19082de000 ---p 00000000 00:00 0 
7f19082de000-7f1908ade000 rw-p 00000000 00:00 0 
7f1908ade000-7f1908adf000 ---p 00000000 00:00 0 
7f1908adf000-7f19092df000 rw-p 00000000 00:00 0 
7f19092df000-7f190947c000 r-xp 00000000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f190947c000-7f190967b000 ---p 0019d000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f190967b000-7f190967c000 r--p 0019c000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f190967c000-7f190967d000 rw-p 0019d000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f190967d000-7f190969a000 r-xp 00000000 08:08 1180247                    /lib/x86_64-linux-gnu/libudev.so.1.6.9
7f190969a000-7f1909899000 ---p 0001d000 08:08 1180247                    /lib/x86_64-linux-gnu/libudev.so.1.6.9
7f1909899000-7f190989a000 r--p 0001c000 08:08 1180247                    /lib/x86_64-linux-gnu/libudev.so.1.6.9
7f190989a000-7f190989b000 rw-p 0001d000 08:08 1180247                    /lib/x86_64-linux-gnu/libudev.so.1.6.9
7f190989b000-7f19098af000 r-xp 00000000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f19098af000-7f1909aae000 ---p 00014000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f1909aae000-7f1909aaf000 r--p 00013000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f1909aaf000-7f1909ab0000 rw-p 00014000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f1909ab0000-7f1909aba000 r-xp 00000000 08:08 1180918                    /lib/x86_64-linux-gnu/libjson-c.so.3.0.1
7f1909aba000-7f1909cb9000 ---p 0000a000 08:08 1180918                    /lib/x86_64-linux-gnu/libjson-c.so.3.0.1
7f1909cb9000-7f1909cba000 r--p 00009000 08:08 1180918                    /lib/x86_64-linux-gnu/libjson-c.so.3.0.1
7f1909cba000-7f1909cbb000 rw-p 0000a000 08:08 1180918                    /lib/x86_64-linux-gnu/libjson-c.so.3.0.1
7f1909cbb000-7f1909cc3000 r-xp 00000000 08:08 794506                     /usr/lib/x86_64-linux-gnu/libargon2.so.0
7f1909cc3000-7f1909ec2000 ---p 00008000 08:08 794506                     /usr/lib/x86_64-linux-gnu/libargon2.so.0
7f1909ec2000-7f1909ec3000 r--p 00007000 08:08 794506                     /usr/lib/x86_64-linux-gnu/libargon2.so.0
7f1909ec3000-7f1909ec4000 rw-p 00008000 08:08 794506                     /usr/lib/x86_64-linux-gnu/libargon2.so.0
7f1909ec4000-7f1909f2a000 r-xp 00000000 08:08 1185112                    /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1
7f1909f2a000-7f190a129000 ---p 00066000 08:08 1185112                    /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1
7f190a129000-7f190a12a000 r--p 00065000 08:08 1185112                    /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1
7f190a12a000-7f190a12e000 rw-p 00066000 08:08 1185112                    /lib/x86_64-linux-gnu/libdevmapper.so.1.02.1
7f190a12e000-7f190a12f000 rw-p 00000000 00:00 0 
7f190a12f000-7f190a133000 r-xp 00000000 08:08 1185078                    /lib/x86_64-linux-gnu/libattr.so.1.1.0
7f190a133000-7f190a332000 ---p 00004000 08:08 1185078                    /lib/x86_64-linux-gnu/libattr.so.1.1.0
7f190a332000-7f190a333000 r--p 00003000 08:08 1185078                    /lib/x86_64-linux-gnu/libattr.so.1.1.0
7f190a333000-7f190a334000 rw-p 00004000 08:08 1185078                    /lib/x86_64-linux-gnu/libattr.so.1.1.0
7f190a334000-7f190a338000 r-xp 00000000 08:08 1185093                    /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0
7f190a338000-7f190a537000 ---p 00004000 08:08 1185093                    /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0
7f190a537000-7f190a538000 r--p 00003000 08:08 1185093                    /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0
7f190a538000-7f190a539000 rw-p 00004000 08:08 1185093                    /lib/x86_64-linux-gnu/libcap-ng.so.0.0.0
7f190a539000-7f190a53f000 r-xp 00000000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f190a53f000-7f190a73e000 ---p 00006000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f190a73e000-7f190a73f000 r--p 00005000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f190a73f000-7f190a740000 rw-p 00006000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f190a740000-7f190a743000 r-xp 00000000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f190a743000-7f190a942000 ---p 00003000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f190a942000-7f190a943000 r--p 00002000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f190a943000-7f190a944000 rw-p 00003000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f190a944000-7f190a9b4000 r-xp 00000000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f190a9b4000-7f190abb4000 ---p 00070000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f190abb4000-7f190abb5000 r--p 00070000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f190abb5000-7f190abb6000 rw-p 00071000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f190abb6000-7f190abd0000 r-xp 00000000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f190abd0000-7f190adcf000 ---p 0001a000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f190adcf000-7f190add0000 r--p 00019000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f190add0000-7f190add1000 rw-p 0001a000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f190add1000-7f190add5000 rw-p 00000000 00:00 0 
7f190add5000-7f190adf0000 r-xp 00000000 08:08 794419                     /usr/lib/x86_64-linux-gnu/liblz4.so.1.7.1
7f190adf0000-7f190afef000 ---p 0001b000 08:08 794419                     /usr/lib/x86_64-linux-gnu/liblz4.so.1.7.1
7f190afef000-7f190aff0000 r--p 0001a000 08:08 794419                     /usr/lib/x86_64-linux-gnu/liblz4.so.1.7.1
7f190aff0000-7f190aff1000 rw-p 0001b000 08:08 794419                     /usr/lib/x86_64-linux-gnu/liblz4.so.1.7.1
7f190aff1000-7f190b015000 r-xp 00000000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f190b015000-7f190b215000 ---p 00024000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f190b215000-7f190b216000 r--p 00024000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f190b216000-7f190b217000 rw-p 00025000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f190b217000-7f190b249000 r-xp 00000000 08:08 1185137                    /lib/x86_64-linux-gnu/libidn.so.11.6.16
7f190b249000-7f190b448000 ---p 00032000 08:08 1185137                    /lib/x86_64-linux-gnu/libidn.so.11.6.16
7f190b448000-7f190b449000 r--p 00031000 08:08 1185137                    /lib/x86_64-linux-gnu/libidn.so.11.6.16
7f190b449000-7f190b44a000 rw-p 00032000 08:08 1185137                    /lib/x86_64-linux-gnu/libidn.so.11.6.16
7f190b44a000-7f190b450000 r-xp 00000000 08:08 795074                     /usr/lib/x86_64-linux-gnu/libip4tc.so.0.1.0
7f190b450000-7f190b64f000 ---p 00006000 08:08 795074                     /usr/lib/x86_64-linux-gnu/libip4tc.so.0.1.0
7f190b64f000-7f190b650000 r--p 00005000 08:08 795074                     /usr/lib/x86_64-linux-gnu/libip4tc.so.0.1.0
7f190b650000-7f190b651000 rw-p 00006000 08:08 795074                     /usr/lib/x86_64-linux-gnu/libip4tc.so.0.1.0
7f190b651000-7f190b765000 r-xp 00000000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f190b765000-7f190b965000 ---p 00114000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f190b965000-7f190b967000 r--p 00114000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f190b967000-7f190b96c000 rw-p 00116000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f190b96c000-7f190b96d000 rw-p 00000000 00:00 0 
7f190b96d000-7f190b971000 r-xp 00000000 08:08 1185095                    /lib/x86_64-linux-gnu/libcap.so.2.25
7f190b971000-7f190bb71000 ---p 00004000 08:08 1185095                    /lib/x86_64-linux-gnu/libcap.so.2.25
7f190bb71000-7f190bb72000 r--p 00004000 08:08 1185095                    /lib/x86_64-linux-gnu/libcap.so.2.25
7f190bb72000-7f190bb73000 rw-p 00005000 08:08 1185095                    /lib/x86_64-linux-gnu/libcap.so.2.25
7f190bb73000-7f190bbbc000 r-xp 00000000 08:08 1185103                    /lib/x86_64-linux-gnu/libcryptsetup.so.12.2.0
7f190bbbc000-7f190bdbc000 ---p 00049000 08:08 1185103                    /lib/x86_64-linux-gnu/libcryptsetup.so.12.2.0
7f190bdbc000-7f190bdbd000 r--p 00049000 08:08 1185103                    /lib/x86_64-linux-gnu/libcryptsetup.so.12.2.0
7f190bdbd000-7f190bdbf000 rw-p 0004a000 08:08 1185103                    /lib/x86_64-linux-gnu/libcryptsetup.so.12.2.0
7f190bdbf000-7f190bdc6000 r-xp 00000000 08:08 1185068                    /lib/x86_64-linux-gnu/libacl.so.1.1.0
7f190bdc6000-7f190bfc5000 ---p 00007000 08:08 1185068                    /lib/x86_64-linux-gnu/libacl.so.1.1.0
7f190bfc5000-7f190bfc6000 r--p 00006000 08:08 1185068                    /lib/x86_64-linux-gnu/libacl.so.1.1.0
7f190bfc6000-7f190bfc7000 rw-p 00007000 08:08 1185068                    /lib/x86_64-linux-gnu/libacl.so.1.1.0
7f190bfc7000-7f190bfd6000 r-xp 00000000 08:08 1185072                    /lib/x86_64-linux-gnu/libapparmor.so.1.4.2
7f190bfd6000-7f190c1d5000 ---p 0000f000 08:08 1185072                    /lib/x86_64-linux-gnu/libapparmor.so.1.4.2
7f190c1d5000-7f190c1d6000 r--p 0000e000 08:08 1185072                    /lib/x86_64-linux-gnu/libapparmor.so.1.4.2
7f190c1d6000-7f190c1d7000 rw-p 0000f000 08:08 1185072                    /lib/x86_64-linux-gnu/libapparmor.so.1.4.2
7f190c1d7000-7f190c1ed000 r-xp 00000000 08:08 1185146                    /lib/x86_64-linux-gnu/libkmod.so.2.3.2
7f190c1ed000-7f190c3ec000 ---p 00016000 08:08 1185146                    /lib/x86_64-linux-gnu/libkmod.so.2.3.2
7f190c3ec000-7f190c3ed000 r--p 00015000 08:08 1185146                    /lib/x86_64-linux-gnu/libkmod.so.2.3.2
7f190c3ed000-7f190c3ee000 rw-p 00016000 08:08 1185146                    /lib/x86_64-linux-gnu/libkmod.so.2.3.2
7f190c3ee000-7f190c40b000 r-xp 00000000 08:08 1185080                    /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f190c40b000-7f190c60b000 ---p 0001d000 08:08 1185080                    /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f190c60b000-7f190c60c000 r--p 0001d000 08:08 1185080                    /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f190c60c000-7f190c60d000 rw-p 0001e000 08:08 1185080                    /lib/x86_64-linux-gnu/libaudit.so.1.0.0
7f190c60d000-7f190c617000 rw-p 00000000 00:00 0 
7f190c617000-7f190c624000 r-xp 00000000 08:08 1185199                    /lib/x86_64-linux-gnu/libpam.so.0.83.1
7f190c624000-7f190c823000 ---p 0000d000 08:08 1185199                    /lib/x86_64-linux-gnu/libpam.so.0.83.1
7f190c823000-7f190c824000 r--p 0000c000 08:08 1185199                    /lib/x86_64-linux-gnu/libpam.so.0.83.1
7f190c824000-7f190c825000 rw-p 0000d000 08:08 1185199                    /lib/x86_64-linux-gnu/libpam.so.0.83.1
7f190c825000-7f190c86c000 r-xp 00000000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f190c86c000-7f190ca6c000 ---p 00047000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f190ca6c000-7f190ca70000 r--p 00047000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f190ca70000-7f190ca71000 rw-p 0004b000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f190ca71000-7f190ca72000 rw-p 00000000 00:00 0 
7f190ca72000-7f190cac3000 r-xp 00000000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f190cac3000-7f190ccc2000 ---p 00051000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f190ccc2000-7f190ccc4000 r--p 00050000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f190ccc4000-7f190ccc5000 rw-p 00052000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f190ccc5000-7f190ccc6000 rw-p 00000000 00:00 0 
7f190ccc6000-7f190cceb000 r-xp 00000000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f190cceb000-7f190ceea000 ---p 00025000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f190ceea000-7f190ceeb000 r--p 00024000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f190ceeb000-7f190ceec000 rw-p 00025000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f190ceec000-7f190ceee000 rw-p 00000000 00:00 0 
7f190ceee000-7f190cf21000 r-xp 00000000 08:08 1180923                    /lib/x86_64-linux-gnu/libseccomp.so.2.4.3
7f190cf21000-7f190d120000 ---p 00033000 08:08 1180923                    /lib/x86_64-linux-gnu/libseccomp.so.2.4.3
7f190d120000-7f190d139000 r--p 00032000 08:08 1180923                    /lib/x86_64-linux-gnu/libseccomp.so.2.4.3
7f190d139000-7f190d13a000 rw-p 0004b000 08:08 1180923                    /lib/x86_64-linux-gnu/libseccomp.so.2.4.3
7f190d13a000-7f190d141000 r-xp 00000000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f190d141000-7f190d340000 ---p 00007000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f190d340000-7f190d341000 r--p 00006000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f190d341000-7f190d342000 rw-p 00007000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f190d342000-7f190d4fa000 r-xp 00000000 08:08 1180295                    /lib/systemd/libsystemd-shared-237.so
7f190d4fa000-7f190d6f9000 ---p 001b8000 08:08 1180295                    /lib/systemd/libsystemd-shared-237.so
7f190d6f9000-7f190d783000 r--p 001b7000 08:08 1180295                    /lib/systemd/libsystemd-shared-237.so
7f190d783000-7f190d784000 rw-p 00241000 08:08 1180295                    /lib/systemd/libsystemd-shared-237.so
7f190d784000-7f190d786000 rw-p 00000000 00:00 0 
7f190d786000-7f190d96d000 r-xp 00000000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190d96d000-7f190db6d000 ---p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190db6d000-7f190db71000 r--p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190db71000-7f190db73000 rw-p 001eb000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190db73000-7f190db77000 rw-p 00000000 00:00 0 
7f190db77000-7f190dba0000 r-xp 00000000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f190dd78000-7f190dd88000 rw-p 00000000 00:00 0 
7f190dda0000-7f190dda1000 r--p 00029000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f190dda1000-7f190dda2000 rw-p 0002a000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f190dda2000-7f190dda3000 rw-p 00000000 00:00 0 
7ffc80c4a000-7ffc80c6b000 rw-p 00000000 00:00 0                          [stack]
7ffc80c87000-7ffc80c8a000 r--p 00000000 00:00 0                          [vvar]
7ffc80c8a000-7ffc80c8b000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0                  [vsyscall]
czl@czl-RedmiBook-14:~/Workspace/memory$ 

选择进程1806:

czl@czl-RedmiBook-14:~/Workspace/linux-compile/linux-5.4.128$ sudo cat /proc/1806/maps
[sudo] password for czl: 
557b0444b000-557b04453000 r-xp 00000000 08:08 789204                     /usr/lib/gnome-shell/gnome-shell-calendar-server
557b04652000-557b04653000 r--p 00007000 08:08 789204                     /usr/lib/gnome-shell/gnome-shell-calendar-server
557b04653000-557b04654000 rw-p 00008000 08:08 789204                     /usr/lib/gnome-shell/gnome-shell-calendar-server
557b063b8000-557b064ab000 rw-p 00000000 00:00 0                          [heap]
7f2044000000-7f2044021000 rw-p 00000000 00:00 0 
7f2044021000-7f2048000000 ---p 00000000 00:00 0 
7f204c000000-7f204c082000 rw-p 00000000 00:00 0 
7f204c082000-7f2050000000 ---p 00000000 00:00 0 
7f2050000000-7f2050021000 rw-p 00000000 00:00 0 
7f2050021000-7f2054000000 ---p 00000000 00:00 0 
7f2055f26000-7f2055f27000 ---p 00000000 00:00 0 
7f2055f27000-7f2056727000 rw-p 00000000 00:00 0 
7f2056727000-7f2056732000 r-xp 00000000 08:08 1185027                    /lib/x86_64-linux-gnu/libnss_files-2.27.so
7f2056732000-7f2056931000 ---p 0000b000 08:08 1185027                    /lib/x86_64-linux-gnu/libnss_files-2.27.so
7f2056931000-7f2056932000 r--p 0000a000 08:08 1185027                    /lib/x86_64-linux-gnu/libnss_files-2.27.so
7f2056932000-7f2056933000 rw-p 0000b000 08:08 1185027                    /lib/x86_64-linux-gnu/libnss_files-2.27.so
7f2056933000-7f2056939000 rw-p 00000000 00:00 0 
7f2056939000-7f2056950000 r-xp 00000000 08:08 1184968                    /lib/x86_64-linux-gnu/libnsl-2.27.so
7f2056950000-7f2056b4f000 ---p 00017000 08:08 1184968                    /lib/x86_64-linux-gnu/libnsl-2.27.so
7f2056b4f000-7f2056b50000 r--p 00016000 08:08 1184968                    /lib/x86_64-linux-gnu/libnsl-2.27.so
7f2056b50000-7f2056b51000 rw-p 00017000 08:08 1184968                    /lib/x86_64-linux-gnu/libnsl-2.27.so
7f2056b51000-7f2056b53000 rw-p 00000000 00:00 0 
7f2056b53000-7f2056b5e000 r-xp 00000000 08:08 1185029                    /lib/x86_64-linux-gnu/libnss_nis-2.27.so
7f2056b5e000-7f2056d5d000 ---p 0000b000 08:08 1185029                    /lib/x86_64-linux-gnu/libnss_nis-2.27.so
7f2056d5d000-7f2056d5e000 r--p 0000a000 08:08 1185029                    /lib/x86_64-linux-gnu/libnss_nis-2.27.so
7f2056d5e000-7f2056d5f000 rw-p 0000b000 08:08 1185029                    /lib/x86_64-linux-gnu/libnss_nis-2.27.so
7f2056d5f000-7f2056d67000 r-xp 00000000 08:08 1185018                    /lib/x86_64-linux-gnu/libnss_compat-2.27.so
7f2056d67000-7f2056f67000 ---p 00008000 08:08 1185018                    /lib/x86_64-linux-gnu/libnss_compat-2.27.so
7f2056f67000-7f2056f68000 r--p 00008000 08:08 1185018                    /lib/x86_64-linux-gnu/libnss_compat-2.27.so
7f2056f68000-7f2056f69000 rw-p 00009000 08:08 1185018                    /lib/x86_64-linux-gnu/libnss_compat-2.27.so
7f2056f69000-7f2056f7a000 r-xp 00000000 08:08 806472                     /usr/lib/evolution-data-server/camel-providers/libcamelpop3.so
7f2056f7a000-7f2057179000 ---p 00011000 08:08 806472                     /usr/lib/evolution-data-server/camel-providers/libcamelpop3.so
7f2057179000-7f205717a000 r--p 00010000 08:08 806472                     /usr/lib/evolution-data-server/camel-providers/libcamelpop3.so
7f205717a000-7f205717b000 rw-p 00011000 08:08 806472                     /usr/lib/evolution-data-server/camel-providers/libcamelpop3.so
7f205717b000-7f2057191000 r-xp 00000000 08:08 806470                     /usr/lib/evolution-data-server/camel-providers/libcamelnntp.so
7f2057191000-7f2057391000 ---p 00016000 08:08 806470                     /usr/lib/evolution-data-server/camel-providers/libcamelnntp.so
7f2057391000-7f2057392000 r--p 00016000 08:08 806470                     /usr/lib/evolution-data-server/camel-providers/libcamelnntp.so
7f2057392000-7f2057393000 rw-p 00017000 08:08 806470                     /usr/lib/evolution-data-server/camel-providers/libcamelnntp.so
7f2057393000-7f2057399000 r-xp 00000000 08:08 806474                     /usr/lib/evolution-data-server/camel-providers/libcamelsendmail.so
7f2057399000-7f2057598000 ---p 00006000 08:08 806474                     /usr/lib/evolution-data-server/camel-providers/libcamelsendmail.so
7f2057598000-7f2057599000 r--p 00005000 08:08 806474                     /usr/lib/evolution-data-server/camel-providers/libcamelsendmail.so
7f2057599000-7f205759a000 rw-p 00006000 08:08 806474                     /usr/lib/evolution-data-server/camel-providers/libcamelsendmail.so
7f205759a000-7f20575fc000 r-xp 00000000 08:08 806466                     /usr/lib/evolution-data-server/camel-providers/libcamelimapx.so
7f20575fc000-7f20577fb000 ---p 00062000 08:08 806466                     /usr/lib/evolution-data-server/camel-providers/libcamelimapx.so
7f20577fb000-7f20577fe000 r--p 00061000 08:08 806466                     /usr/lib/evolution-data-server/camel-providers/libcamelimapx.so
7f20577fe000-7f20577ff000 rw-p 00064000 08:08 806466                     /usr/lib/evolution-data-server/camel-providers/libcamelimapx.so
7f20577ff000-7f2057800000 ---p 00000000 00:00 0 
7f2057800000-7f2058000000 rw-p 00000000 00:00 0 
7f2058000000-7f2058021000 rw-p 00000000 00:00 0 
7f2058021000-7f205c000000 ---p 00000000 00:00 0 
7f205c000000-7f205c031000 rw-p 00000000 00:00 0 
7f205c031000-7f2060000000 ---p 00000000 00:00 0 
7f2060000000-7f2060021000 rw-p 00000000 00:00 0 
7f2060021000-7f2064000000 ---p 00000000 00:00 0 
7f2064035000-7f206403f000 r-xp 00000000 08:08 806476                     /usr/lib/evolution-data-server/camel-providers/libcamelsmtp.so
7f206403f000-7f206423e000 ---p 0000a000 08:08 806476                     /usr/lib/evolution-data-server/camel-providers/libcamelsmtp.so
7f206423e000-7f206423f000 r--p 00009000 08:08 806476                     /usr/lib/evolution-data-server/camel-providers/libcamelsmtp.so
7f206423f000-7f2064240000 rw-p 0000a000 08:08 806476                     /usr/lib/evolution-data-server/camel-providers/libcamelsmtp.so
7f2064240000-7f2064267000 r-xp 00000000 08:08 806468                     /usr/lib/evolution-data-server/camel-providers/libcamellocal.so
7f2064267000-7f2064466000 ---p 00027000 08:08 806468                     /usr/lib/evolution-data-server/camel-providers/libcamellocal.so
7f2064466000-7f2064468000 r--p 00026000 08:08 806468                     /usr/lib/evolution-data-server/camel-providers/libcamellocal.so
7f2064468000-7f2064469000 rw-p 00028000 08:08 806468                     /usr/lib/evolution-data-server/camel-providers/libcamellocal.so
7f2064469000-7f206446a000 ---p 00000000 00:00 0 
7f206446a000-7f2064c6a000 rw-p 00000000 00:00 0 
7f2064c6a000-7f2064c76000 r-xp 00000000 08:08 1051083                    /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
7f2064c76000-7f2064e75000 ---p 0000c000 08:08 1051083                    /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
7f2064e75000-7f2064e76000 r--p 0000b000 08:08 1051083                    /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
7f2064e76000-7f2064e77000 rw-p 0000c000 08:08 1051083                    /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
7f2064e77000-7f2064e78000 ---p 00000000 00:00 0 
7f2064e78000-7f2065678000 rw-p 00000000 00:00 0 
7f2065678000-7f2065679000 ---p 00000000 00:00 0 
7f2065679000-7f2065e79000 rw-p 00000000 00:00 0 
7f2065e79000-7f2065e7a000 ---p 00000000 00:00 0 
7f2065e7a000-7f206667a000 rw-p 00000000 00:00 0 
7f206667a000-7f2066683000 r-xp 00000000 08:08 1179744                    /lib/x86_64-linux-gnu/libcrypt-2.27.so
7f2066683000-7f2066882000 ---p 00009000 08:08 1179744                    /lib/x86_64-linux-gnu/libcrypt-2.27.so
7f2066882000-7f2066883000 r--p 00008000 08:08 1179744                    /lib/x86_64-linux-gnu/libcrypt-2.27.so
7f2066883000-7f2066884000 rw-p 00009000 08:08 1179744                    /lib/x86_64-linux-gnu/libcrypt-2.27.so
7f2066884000-7f20668b2000 rw-p 00000000 00:00 0 
7f20668b2000-7f20668f8000 r-xp 00000000 08:08 795028                     /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0
7f20668f8000-7f2066af7000 ---p 00046000 08:08 795028                     /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0
7f2066af7000-7f2066afa000 r--p 00045000 08:08 795028                     /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0
7f2066afa000-7f2066afb000 rw-p 00048000 08:08 795028                     /usr/lib/x86_64-linux-gnu/libhx509.so.5.0.0
7f2066afb000-7f2066afc000 rw-p 00000000 00:00 0 
7f2066afc000-7f2066b0a000 r-xp 00000000 08:08 795012                     /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0
7f2066b0a000-7f2066d09000 ---p 0000e000 08:08 795012                     /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0
7f2066d09000-7f2066d0a000 r--p 0000d000 08:08 795012                     /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0
7f2066d0a000-7f2066d0b000 rw-p 0000e000 08:08 795012                     /usr/lib/x86_64-linux-gnu/libheimbase.so.1.0.0
7f2066d0b000-7f2066d33000 r-xp 00000000 08:08 795588                     /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0
7f2066d33000-7f2066f32000 ---p 00028000 08:08 795588                     /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0
7f2066f32000-7f2066f33000 r--p 00027000 08:08 795588                     /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0
7f2066f33000-7f2066f34000 rw-p 00028000 08:08 795588                     /usr/lib/x86_64-linux-gnu/libwind.so.0.0.0
7f2066f34000-7f2066f49000 r-xp 00000000 08:08 795375                     /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0
7f2066f49000-7f2067148000 ---p 00015000 08:08 795375                     /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0
7f2067148000-7f2067149000 r--p 00014000 08:08 795375                     /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0
7f2067149000-7f206714a000 rw-p 00015000 08:08 795375                     /usr/lib/x86_64-linux-gnu/libroken.so.18.1.0
7f206714a000-7f206717d000 r-xp 00000000 08:08 795010                     /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0
7f206717d000-7f206737c000 ---p 00033000 08:08 795010                     /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0
7f206737c000-7f206737e000 r--p 00032000 08:08 795010                     /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0
7f206737e000-7f206737f000 rw-p 00034000 08:08 795010                     /usr/lib/x86_64-linux-gnu/libhcrypto.so.4.1.0
7f206737f000-7f2067380000 rw-p 00000000 00:00 0 
7f2067380000-7f206741e000 r-xp 00000000 08:08 794510                     /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0
7f206741e000-7f206761e000 ---p 0009e000 08:08 794510                     /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0
7f206761e000-7f206761f000 r--p 0009e000 08:08 794510                     /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0
7f206761f000-7f2067622000 rw-p 0009f000 08:08 794510                     /usr/lib/x86_64-linux-gnu/libasn1.so.8.0.0
7f2067622000-7f20676a9000 r-xp 00000000 08:08 795113                     /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0
7f20676a9000-7f20678a8000 ---p 00087000 08:08 795113                     /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0
7f20678a8000-7f20678ac000 r--p 00086000 08:08 795113                     /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0
7f20678ac000-7f20678ae000 rw-p 0008a000 08:08 795113                     /usr/lib/x86_64-linux-gnu/libkrb5.so.26.0.0
7f20678ae000-7f20678af000 rw-p 00000000 00:00 0 
7f20678af000-7f20678b7000 r-xp 00000000 08:08 795014                     /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0
7f20678b7000-7f2067ab6000 ---p 00008000 08:08 795014                     /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0
7f2067ab6000-7f2067ab7000 r--p 00007000 08:08 795014                     /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0
7f2067ab7000-7f2067ab8000 rw-p 00008000 08:08 795014                     /usr/lib/x86_64-linux-gnu/libheimntlm.so.0.1.0
7f2067ab8000-7f2067af5000 r-xp 00000000 08:08 794937                     /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0
7f2067af5000-7f2067cf5000 ---p 0003d000 08:08 794937                     /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0
7f2067cf5000-7f2067cf7000 r--p 0003d000 08:08 794937                     /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0
7f2067cf7000-7f2067cf9000 rw-p 0003f000 08:08 794937                     /usr/lib/x86_64-linux-gnu/libgssapi.so.3.0.0
7f2067cf9000-7f2067d12000 r-xp 00000000 08:08 787324                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7f2067d12000-7f2067f12000 ---p 00019000 08:08 787324                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7f2067f12000-7f2067f13000 r--p 00019000 08:08 787324                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7f2067f13000-7f2067f14000 rw-p 0001a000 08:08 787324                     /usr/lib/x86_64-linux-gnu/libsasl2.so.2.0.25
7f2067f14000-7f2067f25000 r-xp 00000000 08:08 795472                     /usr/lib/x86_64-linux-gnu/libtasn1.so.6.5.5
7f2067f25000-7f2068125000 ---p 00011000 08:08 795472                     /usr/lib/x86_64-linux-gnu/libtasn1.so.6.5.5
7f2068125000-7f2068126000 r--p 00011000 08:08 795472                     /usr/lib/x86_64-linux-gnu/libtasn1.so.6.5.5
7f2068126000-7f2068127000 rw-p 00012000 08:08 795472                     /usr/lib/x86_64-linux-gnu/libtasn1.so.6.5.5
7f2068127000-7f20681a6000 r-xp 00000000 08:08 794882                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7f20681a6000-7f20683a6000 ---p 0007f000 08:08 794882                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7f20683a6000-7f20683a7000 r--p 0007f000 08:08 794882                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7f20683a7000-7f20683a8000 rw-p 00080000 08:08 794882                     /usr/lib/x86_64-linux-gnu/libgmp.so.10.3.2
7f20683a8000-7f20683dc000 r-xp 00000000 08:08 794696                     /usr/lib/x86_64-linux-gnu/libhogweed.so.4.5
7f20683dc000-7f20685dc000 ---p 00034000 08:08 794696                     /usr/lib/x86_64-linux-gnu/libhogweed.so.4.5
7f20685dc000-7f20685dd000 r--p 00034000 08:08 794696                     /usr/lib/x86_64-linux-gnu/libhogweed.so.4.5
7f20685dd000-7f20685de000 rw-p 00035000 08:08 794696                     /usr/lib/x86_64-linux-gnu/libhogweed.so.4.5
7f20685de000-7f2068758000 r-xp 00000000 08:08 795512                     /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0
7f2068758000-7f2068958000 ---p 0017a000 08:08 795512                     /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0
7f2068958000-7f206895b000 r--p 0017a000 08:08 795512                     /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0
7f206895b000-7f206895c000 rw-p 0017d000 08:08 795512                     /usr/lib/x86_64-linux-gnu/libunistring.so.2.1.0
7f206895c000-7f2068969000 r-xp 00000000 08:08 794948                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.8
7f2068969000-7f2068b68000 ---p 0000d000 08:08 794948                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.8
7f2068b68000-7f2068b69000 r--p 0000c000 08:08 794948                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.8
7f2068b69000-7f2068b6a000 rw-p 0000d000 08:08 794948                     /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2.10.8
7f2068b6a000-7f2068bb8000 r-xp 00000000 08:08 794949                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.8
7f2068bb8000-7f2068db7000 ---p 0004e000 08:08 794949                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.8
7f2068db7000-7f2068db9000 r--p 0004d000 08:08 794949                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.8
7f2068db9000-7f2068dba000 rw-p 0004f000 08:08 794949                     /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2.10.8
7f2068dba000-7f2068dbc000 rw-p 00000000 00:00 0 
7f2068dbc000-7f2068f14000 r-xp 00000000 08:08 794898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.30.14.10
7f2068f14000-7f2069114000 ---p 00158000 08:08 794898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.30.14.10
7f2069114000-7f2069120000 r--p 00158000 08:08 794898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.30.14.10
7f2069120000-7f2069121000 rw-p 00164000 08:08 794898                     /usr/lib/x86_64-linux-gnu/libgnutls.so.30.14.10
7f2069121000-7f2069122000 rw-p 00000000 00:00 0 
7f2069122000-7f2069156000 r-xp 00000000 08:08 786884                     /usr/lib/x86_64-linux-gnu/libnettle.so.6.5
7f2069156000-7f2069355000 ---p 00034000 08:08 786884                     /usr/lib/x86_64-linux-gnu/libnettle.so.6.5
7f2069355000-7f2069357000 r--p 00033000 08:08 786884                     /usr/lib/x86_64-linux-gnu/libnettle.so.6.5
7f2069357000-7f2069358000 rw-p 00035000 08:08 786884                     /usr/lib/x86_64-linux-gnu/libnettle.so.6.5
7f2069358000-7f2069365000 r-xp 00000000 08:08 795322                     /usr/lib/x86_64-linux-gnu/libpsl.so.5.2.0
7f2069365000-7f2069564000 ---p 0000d000 08:08 795322                     /usr/lib/x86_64-linux-gnu/libpsl.so.5.2.0
7f2069564000-7f2069565000 r--p 0000c000 08:08 795322                     /usr/lib/x86_64-linux-gnu/libpsl.so.5.2.0
7f2069565000-7f2069566000 rw-p 0000d000 08:08 795322                     /usr/lib/x86_64-linux-gnu/libpsl.so.5.2.0
7f2069566000-7f2069581000 r-xp 00000000 08:08 795380                     /usr/lib/x86_64-linux-gnu/librtmp.so.1
7f2069581000-7f2069780000 ---p 0001b000 08:08 795380                     /usr/lib/x86_64-linux-gnu/librtmp.so.1
7f2069780000-7f2069781000 r--p 0001a000 08:08 795380                     /usr/lib/x86_64-linux-gnu/librtmp.so.1
7f2069781000-7f2069782000 rw-p 0001b000 08:08 795380                     /usr/lib/x86_64-linux-gnu/librtmp.so.1
7f2069782000-7f206979e000 r-xp 00000000 08:08 795058                     /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.3
7f206979e000-7f206999d000 ---p 0001c000 08:08 795058                     /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.3
7f206999d000-7f206999e000 r--p 0001b000 08:08 795058                     /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.3
7f206999e000-7f206999f000 rw-p 0001c000 08:08 795058                     /usr/lib/x86_64-linux-gnu/libidn2.so.0.3.3
7f206999f000-7f20699c2000 r-xp 00000000 08:08 795222                     /usr/lib/x86_64-linux-gnu/libnghttp2.so.14.15.2
7f20699c2000-7f2069bc1000 ---p 00023000 08:08 795222                     /usr/lib/x86_64-linux-gnu/libnghttp2.so.14.15.2
7f2069bc1000-7f2069bc2000 r--p 00022000 08:08 795222                     /usr/lib/x86_64-linux-gnu/libnghttp2.so.14.15.2
7f2069bc2000-7f2069bc4000 rw-p 00023000 08:08 795222                     /usr/lib/x86_64-linux-gnu/libnghttp2.so.14.15.2
7f2069bc4000-7f2069bc7000 r-xp 00000000 08:08 1185144                    /lib/x86_64-linux-gnu/libkeyutils.so.1.5
7f2069bc7000-7f2069dc6000 ---p 00003000 08:08 1185144                    /lib/x86_64-linux-gnu/libkeyutils.so.1.5
7f2069dc6000-7f2069dc7000 r--p 00002000 08:08 1185144                    /lib/x86_64-linux-gnu/libkeyutils.so.1.5
7f2069dc7000-7f2069dc8000 rw-p 00003000 08:08 1185144                    /lib/x86_64-linux-gnu/libkeyutils.so.1.5
7f2069dc8000-7f2069dce000 r-xp 00000000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f2069dce000-7f2069fcd000 ---p 00006000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f2069fcd000-7f2069fce000 r--p 00005000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f2069fce000-7f2069fcf000 rw-p 00006000 08:08 1180927                    /lib/x86_64-linux-gnu/libuuid.so.1.3.0
7f2069fcf000-7f206a0e9000 r-xp 00000000 08:08 794979                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0
7f206a0e9000-7f206a2e9000 ---p 0011a000 08:08 794979                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0
7f206a2e9000-7f206a2f3000 r--p 0011a000 08:08 794979                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0
7f206a2f3000-7f206a2fd000 rw-p 00124000 08:08 794979                     /usr/lib/x86_64-linux-gnu/libp11-kit.so.0.3.0
7f206a2fd000-7f206a2fe000 rw-p 00000000 00:00 0 
7f206a2fe000-7f206a330000 r-xp 00000000 08:08 794834                     /usr/lib/x86_64-linux-gnu/libgck-1.so.0.0.0
7f206a330000-7f206a52f000 ---p 00032000 08:08 794834                     /usr/lib/x86_64-linux-gnu/libgck-1.so.0.0.0
7f206a52f000-7f206a530000 r--p 00031000 08:08 794834                     /usr/lib/x86_64-linux-gnu/libgck-1.so.0.0.0
7f206a530000-7f206a531000 rw-p 00032000 08:08 794834                     /usr/lib/x86_64-linux-gnu/libgck-1.so.0.0.0
7f206a531000-7f206a5ad000 r-xp 00000000 08:08 812666                     /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.5.0
7f206a5ad000-7f206a7ad000 ---p 0007c000 08:08 812666                     /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.5.0
7f206a7ad000-7f206a7b0000 r--p 0007c000 08:08 812666                     /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.5.0
7f206a7b0000-7f206a7b1000 rw-p 0007f000 08:08 812666                     /usr/lib/x86_64-linux-gnu/libcurl-gnutls.so.4.5.0
7f206a7b1000-7f206a7c5000 r-xp 00000000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f206a7c5000-7f206a9c4000 ---p 00014000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f206a9c4000-7f206a9c5000 r--p 00013000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f206a9c5000-7f206a9c6000 rw-p 00014000 08:08 1185131                    /lib/x86_64-linux-gnu/libgpg-error.so.0.22.0
7f206a9c6000-7f206a9d0000 r-xp 00000000 08:08 788311                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7f206a9d0000-7f206abcf000 ---p 0000a000 08:08 788311                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7f206abcf000-7f206abd0000 r--p 00009000 08:08 788311                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7f206abd0000-7f206abd1000 rw-p 0000a000 08:08 788311                     /usr/lib/x86_64-linux-gnu/libkrb5support.so.0.1
7f206abd1000-7f206abd4000 r-xp 00000000 08:08 1185099                    /lib/x86_64-linux-gnu/libcom_err.so.2.1
7f206abd4000-7f206add3000 ---p 00003000 08:08 1185099                    /lib/x86_64-linux-gnu/libcom_err.so.2.1
7f206add3000-7f206add4000 r--p 00002000 08:08 1185099                    /lib/x86_64-linux-gnu/libcom_err.so.2.1
7f206add4000-7f206add5000 rw-p 00003000 08:08 1185099                    /lib/x86_64-linux-gnu/libcom_err.so.2.1
7f206add5000-7f206ae03000 r-xp 00000000 08:08 794883                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7f206ae03000-7f206b003000 ---p 0002e000 08:08 794883                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7f206b003000-7f206b005000 r--p 0002e000 08:08 794883                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7f206b005000-7f206b006000 rw-p 00030000 08:08 794883                     /usr/lib/x86_64-linux-gnu/libk5crypto.so.3.1
7f206b006000-7f206b007000 rw-p 00000000 00:00 0 
7f206b007000-7f206b0cd000 r-xp 00000000 08:08 788635                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7f206b0cd000-7f206b2cd000 ---p 000c6000 08:08 788635                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7f206b2cd000-7f206b2db000 r--p 000c6000 08:08 788635                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7f206b2db000-7f206b2dd000 rw-p 000d4000 08:08 788635                     /usr/lib/x86_64-linux-gnu/libkrb5.so.3.3
7f206b2dd000-7f206b2e0000 r-xp 00000000 08:08 795300                     /usr/lib/x86_64-linux-gnu/libplds4.so
7f206b2e0000-7f206b4df000 ---p 00003000 08:08 795300                     /usr/lib/x86_64-linux-gnu/libplds4.so
7f206b4df000-7f206b4e0000 r--p 00002000 08:08 795300                     /usr/lib/x86_64-linux-gnu/libplds4.so
7f206b4e0000-7f206b4e1000 rw-p 00003000 08:08 795300                     /usr/lib/x86_64-linux-gnu/libplds4.so
7f206b4e1000-7f206b4e5000 r-xp 00000000 08:08 795299                     /usr/lib/x86_64-linux-gnu/libplc4.so
7f206b4e5000-7f206b6e4000 ---p 00004000 08:08 795299                     /usr/lib/x86_64-linux-gnu/libplc4.so
7f206b6e4000-7f206b6e5000 r--p 00003000 08:08 795299                     /usr/lib/x86_64-linux-gnu/libplc4.so
7f206b6e5000-7f206b6e6000 rw-p 00004000 08:08 795299                     /usr/lib/x86_64-linux-gnu/libplc4.so
7f206b6e6000-7f206b70e000 r-xp 00000000 08:08 794424                     /usr/lib/x86_64-linux-gnu/libnssutil3.so
7f206b70e000-7f206b90d000 ---p 00028000 08:08 794424                     /usr/lib/x86_64-linux-gnu/libnssutil3.so
7f206b90d000-7f206b914000 r--p 00027000 08:08 794424                     /usr/lib/x86_64-linux-gnu/libnssutil3.so
7f206b914000-7f206b915000 rw-p 0002e000 08:08 794424                     /usr/lib/x86_64-linux-gnu/libnssutil3.so
7f206b915000-7f206b91c000 r-xp 00000000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f206b91c000-7f206bb1b000 ---p 00007000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f206bb1b000-7f206bb1c000 r--p 00006000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f206bb1c000-7f206bb1d000 rw-p 00007000 08:08 1185059                    /lib/x86_64-linux-gnu/librt-2.27.so
7f206bb1d000-7f206bb64000 r-xp 00000000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f206bb64000-7f206bd64000 ---p 00047000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f206bd64000-7f206bd68000 r--p 00047000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f206bd68000-7f206bd69000 rw-p 0004b000 08:08 1180910                    /lib/x86_64-linux-gnu/libblkid.so.1.1.0
7f206bd69000-7f206bd6a000 rw-p 00000000 00:00 0 
7f206bd6a000-7f206bdb1000 r-xp 00000000 08:08 794900                     /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0.0.0
7f206bdb1000-7f206bfb0000 ---p 00047000 08:08 794900                     /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0.0.0
7f206bfb0000-7f206bfb3000 r--p 00046000 08:08 794900                     /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0.0.0
7f206bfb3000-7f206bfb4000 rw-p 00049000 08:08 794900                     /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0.0.0
7f206bfb4000-7f206c03e000 r-xp 00000000 08:08 794836                     /usr/lib/x86_64-linux-gnu/libgcr-base-3.so.1.0.0
7f206c03e000-7f206c23d000 ---p 0008a000 08:08 794836                     /usr/lib/x86_64-linux-gnu/libgcr-base-3.so.1.0.0
7f206c23d000-7f206c248000 r--p 00089000 08:08 794836                     /usr/lib/x86_64-linux-gnu/libgcr-base-3.so.1.0.0
7f206c248000-7f206c249000 rw-p 00094000 08:08 794836                     /usr/lib/x86_64-linux-gnu/libgcr-base-3.so.1.0.0
7f206c249000-7f206c24a000 rw-p 00000000 00:00 0 
7f206c24a000-7f206c251000 r-xp 00000000 08:08 795237                     /usr/lib/x86_64-linux-gnu/liboauth.so.0.8.7
7f206c251000-7f206c451000 ---p 00007000 08:08 795237                     /usr/lib/x86_64-linux-gnu/liboauth.so.0.8.7
7f206c451000-7f206c452000 r--p 00007000 08:08 795237                     /usr/lib/x86_64-linux-gnu/liboauth.so.0.8.7
7f206c452000-7f206c453000 rw-p 00008000 08:08 795237                     /usr/lib/x86_64-linux-gnu/liboauth.so.0.8.7
7f206c453000-7f206c477000 r-xp 00000000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f206c477000-7f206c677000 ---p 00024000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f206c677000-7f206c678000 r--p 00024000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f206c678000-7f206c679000 rw-p 00025000 08:08 1185150                    /lib/x86_64-linux-gnu/liblzma.so.5.2.2
7f206c679000-7f206c78d000 r-xp 00000000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f206c78d000-7f206c98d000 ---p 00114000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f206c98d000-7f206c98f000 r--p 00114000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f206c98f000-7f206c994000 rw-p 00116000 08:08 1185129                    /lib/x86_64-linux-gnu/libgcrypt.so.20.2.1
7f206c994000-7f206c995000 rw-p 00000000 00:00 0 
7f206c995000-7f206c9dd000 r-xp 00000000 08:08 788313                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7f206c9dd000-7f206cbdc000 ---p 00048000 08:08 788313                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7f206cbdc000-7f206cbde000 r--p 00047000 08:08 788313                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7f206cbde000-7f206cbe0000 rw-p 00049000 08:08 788313                     /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2.2
7f206cbe0000-7f206cce4000 r-xp 00000000 08:08 795031                     /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6
7f206cce4000-7f206cee3000 ---p 00104000 08:08 795031                     /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6
7f206cee3000-7f206cee6000 r--p 00103000 08:08 795031                     /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6
7f206cee6000-7f206cee8000 rw-p 00106000 08:08 795031                     /usr/lib/x86_64-linux-gnu/libsqlite3.so.0.8.6
7f206cee8000-7f206cee9000 rw-p 00000000 00:00 0 
7f206cee9000-7f206cf22000 r-xp 00000000 08:08 795231                     /usr/lib/x86_64-linux-gnu/libnspr4.so
7f206cf22000-7f206d121000 ---p 00039000 08:08 795231                     /usr/lib/x86_64-linux-gnu/libnspr4.so
7f206d121000-7f206d122000 r--p 00038000 08:08 795231                     /usr/lib/x86_64-linux-gnu/libnspr4.so
7f206d122000-7f206d123000 rw-p 00039000 08:08 795231                     /usr/lib/x86_64-linux-gnu/libnspr4.so
7f206d123000-7f206d126000 rw-p 00000000 00:00 0 
7f206d126000-7f206d171000 r-xp 00000000 08:08 794960                     /usr/lib/x86_64-linux-gnu/libssl3.so
7f206d171000-7f206d371000 ---p 0004b000 08:08 794960                     /usr/lib/x86_64-linux-gnu/libssl3.so
7f206d371000-7f206d375000 r--p 0004b000 08:08 794960                     /usr/lib/x86_64-linux-gnu/libssl3.so
7f206d375000-7f206d376000 rw-p 0004f000 08:08 794960                     /usr/lib/x86_64-linux-gnu/libssl3.so
7f206d376000-7f206d377000 rw-p 00000000 00:00 0 
7f206d377000-7f206d3a0000 r-xp 00000000 08:08 794959                     /usr/lib/x86_64-linux-gnu/libsmime3.so
7f206d3a0000-7f206d59f000 ---p 00029000 08:08 794959                     /usr/lib/x86_64-linux-gnu/libsmime3.so
7f206d59f000-7f206d5a2000 r--p 00028000 08:08 794959                     /usr/lib/x86_64-linux-gnu/libsmime3.so
7f206d5a2000-7f206d5a3000 rw-p 0002b000 08:08 794959                     /usr/lib/x86_64-linux-gnu/libsmime3.so
7f206d5a3000-7f206d6df000 r-xp 00000000 08:08 794423                     /usr/lib/x86_64-linux-gnu/libnss3.so
7f206d6df000-7f206d8df000 ---p 0013c000 08:08 794423                     /usr/lib/x86_64-linux-gnu/libnss3.so
7f206d8df000-7f206d8e4000 r--p 0013c000 08:08 794423                     /usr/lib/x86_64-linux-gnu/libnss3.so
7f206d8e4000-7f206d8e6000 rw-p 00141000 08:08 794423                     /usr/lib/x86_64-linux-gnu/libnss3.so
7f206d8e6000-7f206d8e7000 rw-p 00000000 00:00 0 
7f206d8e7000-7f206da84000 r-xp 00000000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f206da84000-7f206dc83000 ---p 0019d000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f206dc83000-7f206dc84000 r--p 0019c000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f206dc84000-7f206dc85000 rw-p 0019d000 08:08 1184965                    /lib/x86_64-linux-gnu/libm-2.27.so
7f206dc85000-7f206dc88000 r-xp 00000000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f206dc88000-7f206de87000 ---p 00003000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f206de87000-7f206de88000 r--p 00002000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f206de88000-7f206de89000 rw-p 00003000 08:08 1181890                    /lib/x86_64-linux-gnu/libdl-2.27.so
7f206de89000-7f206f831000 r-xp 00000000 08:08 794586                     /usr/lib/x86_64-linux-gnu/libicudata.so.60.2
7f206f831000-7f206fa30000 ---p 019a8000 08:08 794586                     /usr/lib/x86_64-linux-gnu/libicudata.so.60.2
7f206fa30000-7f206fa31000 r--p 019a7000 08:08 794586                     /usr/lib/x86_64-linux-gnu/libicudata.so.60.2
7f206fa31000-7f206fa32000 rw-p 019a8000 08:08 794586                     /usr/lib/x86_64-linux-gnu/libicudata.so.60.2
7f206fa32000-7f206faa2000 r-xp 00000000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f206faa2000-7f206fca2000 ---p 00070000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f206fca2000-7f206fca3000 r--p 00070000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f206fca3000-7f206fca4000 rw-p 00071000 08:08 1185212                    /lib/x86_64-linux-gnu/libpcre.so.3.13.3
7f206fca4000-7f206fcab000 r-xp 00000000 08:08 794782                     /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4
7f206fcab000-7f206feaa000 ---p 00007000 08:08 794782                     /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4
7f206feaa000-7f206feab000 r--p 00006000 08:08 794782                     /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4
7f206feab000-7f206feac000 rw-p 00007000 08:08 794782                     /usr/lib/x86_64-linux-gnu/libffi.so.6.0.4
7f206feac000-7f206fefd000 r-xp 00000000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f206fefd000-7f20700fc000 ---p 00051000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f20700fc000-7f20700fe000 r--p 00050000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f20700fe000-7f20700ff000 rw-p 00052000 08:08 1180920                    /lib/x86_64-linux-gnu/libmount.so.1.1.0
7f20700ff000-7f2070100000 rw-p 00000000 00:00 0 
7f2070100000-7f2070117000 r-xp 00000000 08:08 1185054                    /lib/x86_64-linux-gnu/libresolv-2.27.so
7f2070117000-7f2070316000 ---p 00017000 08:08 1185054                    /lib/x86_64-linux-gnu/libresolv-2.27.so
7f2070316000-7f2070317000 r--p 00016000 08:08 1185054                    /lib/x86_64-linux-gnu/libresolv-2.27.so
7f2070317000-7f2070318000 rw-p 00017000 08:08 1185054                    /lib/x86_64-linux-gnu/libresolv-2.27.so
7f2070318000-7f207031a000 rw-p 00000000 00:00 0 
7f207031a000-7f207033f000 r-xp 00000000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f207033f000-7f207053e000 ---p 00025000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f207053e000-7f207053f000 r--p 00024000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f207053f000-7f2070540000 rw-p 00025000 08:08 1185235                    /lib/x86_64-linux-gnu/libselinux.so.1
7f2070540000-7f2070542000 rw-p 00000000 00:00 0 
7f2070542000-7f207055e000 r-xp 00000000 08:08 1185262                    /lib/x86_64-linux-gnu/libz.so.1.2.11
7f207055e000-7f207075d000 ---p 0001c000 08:08 1185262                    /lib/x86_64-linux-gnu/libz.so.1.2.11
7f207075d000-7f207075e000 r--p 0001b000 08:08 1185262                    /lib/x86_64-linux-gnu/libz.so.1.2.11
7f207075e000-7f207075f000 rw-p 0001c000 08:08 1185262                    /lib/x86_64-linux-gnu/libz.so.1.2.11
7f207075f000-7f2070776000 r-xp 00000000 08:08 1179737                    /lib/x86_64-linux-gnu/libgcc_s.so.1
7f2070776000-7f2070975000 ---p 00017000 08:08 1179737                    /lib/x86_64-linux-gnu/libgcc_s.so.1
7f2070975000-7f2070976000 r--p 00016000 08:08 1179737                    /lib/x86_64-linux-gnu/libgcc_s.so.1
7f2070976000-7f2070977000 rw-p 00017000 08:08 1179737                    /lib/x86_64-linux-gnu/libgcc_s.so.1
7f2070977000-7f2070af0000 r-xp 00000000 08:08 788645                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
7f2070af0000-7f2070cf0000 ---p 00179000 08:08 788645                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
7f2070cf0000-7f2070cfa000 r--p 00179000 08:08 788645                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
7f2070cfa000-7f2070cfc000 rw-p 00183000 08:08 788645                     /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.25
7f2070cfc000-7f2070d00000 rw-p 00000000 00:00 0 
7f2070d00000-7f2070dd2000 r-xp 00000000 08:08 794842                     /usr/lib/x86_64-linux-gnu/libgdata.so.22.3.0
7f2070dd2000-7f2070fd2000 ---p 000d2000 08:08 794842                     /usr/lib/x86_64-linux-gnu/libgdata.so.22.3.0
7f2070fd2000-7f2070fd3000 r--p 000d2000 08:08 794842                     /usr/lib/x86_64-linux-gnu/libgdata.so.22.3.0
7f2070fd3000-7f2070fd4000 rw-p 000d3000 08:08 794842                     /usr/lib/x86_64-linux-gnu/libgdata.so.22.3.0
7f2070fd4000-7f2070fd5000 rw-p 00000000 00:00 0 
7f2070fd5000-7f2070ffa000 r-xp 00000000 08:08 795107                     /usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.400.2
7f2070ffa000-7f20711fa000 ---p 00025000 08:08 795107                     /usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.400.2
7f20711fa000-7f20711fb000 r--p 00025000 08:08 795107                     /usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.400.2
7f20711fb000-7f20711fc000 rw-p 00026000 08:08 795107                     /usr/lib/x86_64-linux-gnu/libjson-glib-1.0.so.0.400.2
7f20711fc000-7f20712ca000 r-xp 00000000 08:08 795438                     /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1.8.0
7f20712ca000-7f20714c9000 ---p 000ce000 08:08 795438                     /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1.8.0
7f20714c9000-7f20714cd000 r--p 000cd000 08:08 795438                     /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1.8.0
7f20714cd000-7f20714ef000 rw-p 000d1000 08:08 795438                     /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1.8.0
7f20714ef000-7f20716a5000 r-xp 00000000 08:08 795562                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4
7f20716a5000-7f20718a5000 ---p 001b6000 08:08 795562                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4
7f20718a5000-7f20718ad000 r--p 001b6000 08:08 795562                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4
7f20718ad000-7f20718af000 rw-p 001be000 08:08 795562                     /usr/lib/x86_64-linux-gnu/libxml2.so.2.9.4
7f20718af000-7f20718b0000 rw-p 00000000 00:00 0 
7f20718b0000-7f20718fc000 r-xp 00000000 08:08 795403                     /usr/lib/x86_64-linux-gnu/libsecret-1.so.0.0.0
7f20718fc000-7f2071afb000 ---p 0004c000 08:08 795403                     /usr/lib/x86_64-linux-gnu/libsecret-1.so.0.0.0
7f2071afb000-7f2071aff000 r--p 0004b000 08:08 795403                     /usr/lib/x86_64-linux-gnu/libsecret-1.so.0.0.0
7f2071aff000-7f2071b00000 rw-p 0004f000 08:08 795403                     /usr/lib/x86_64-linux-gnu/libsecret-1.so.0.0.0
7f2071b00000-7f2071b03000 r-xp 00000000 08:08 786801                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.4
7f2071b03000-7f2071d02000 ---p 00003000 08:08 786801                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.4
7f2071d02000-7f2071d03000 r--p 00002000 08:08 786801                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.4
7f2071d03000-7f2071d04000 rw-p 00003000 08:08 786801                     /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0.5600.4
7f2071d04000-7f2071e30000 r-xp 00000000 08:08 794725                     /usr/lib/x86_64-linux-gnu/libcamel-1.2.so.61.0.0
7f2071e30000-7f207202f000 ---p 0012c000 08:08 794725                     /usr/lib/x86_64-linux-gnu/libcamel-1.2.so.61.0.0
7f207202f000-7f2072038000 r--p 0012b000 08:08 794725                     /usr/lib/x86_64-linux-gnu/libcamel-1.2.so.61.0.0
7f2072038000-7f207204d000 rw-p 00134000 08:08 794725                     /usr/lib/x86_64-linux-gnu/libcamel-1.2.so.61.0.0
7f207204d000-7f207204e000 rw-p 00000000 00:00 0 
7f207204e000-7f20722e0000 r-xp 00000000 08:08 794662                     /usr/lib/x86_64-linux-gnu/libicui18n.so.60.2
7f20722e0000-7f20724df000 ---p 00292000 08:08 794662                     /usr/lib/x86_64-linux-gnu/libicui18n.so.60.2
7f20724df000-7f20724ee000 r--p 00291000 08:08 794662                     /usr/lib/x86_64-linux-gnu/libicui18n.so.60.2
7f20724ee000-7f20724ef000 rw-p 002a0000 08:08 794662                     /usr/lib/x86_64-linux-gnu/libicui18n.so.60.2
7f20724ef000-7f2072693000 r-xp 00000000 08:08 794769                     /usr/lib/x86_64-linux-gnu/libicuuc.so.60.2
7f2072693000-7f2072892000 ---p 001a4000 08:08 794769                     /usr/lib/x86_64-linux-gnu/libicuuc.so.60.2
7f2072892000-7f20728a5000 r--p 001a3000 08:08 794769                     /usr/lib/x86_64-linux-gnu/libicuuc.so.60.2
7f20728a5000-7f20728a6000 rw-p 001b6000 08:08 794769                     /usr/lib/x86_64-linux-gnu/libicuuc.so.60.2
7f20728a6000-7f20728a7000 rw-p 00000000 00:00 0 
7f20728a7000-7f20728c1000 r-xp 00000000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f20728c1000-7f2072ac0000 ---p 0001a000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f2072ac0000-7f2072ac1000 r--p 00019000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f2072ac1000-7f2072ac2000 rw-p 0001a000 08:08 1185050                    /lib/x86_64-linux-gnu/libpthread-2.27.so
7f2072ac2000-7f2072ac6000 rw-p 00000000 00:00 0 
7f2072ac6000-7f2072cad000 r-xp 00000000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072cad000-7f2072ead000 ---p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072ead000-7f2072eb1000 r--p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072eb1000-7f2072eb3000 rw-p 001eb000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072eb3000-7f2072eb7000 rw-p 00000000 00:00 0 
7f2072eb7000-7f2072fcb000 r-xp 00000000 08:08 786778                     /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4
7f2072fcb000-7f20731cb000 ---p 00114000 08:08 786778                     /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4
7f20731cb000-7f20731cc000 r--p 00114000 08:08 786778                     /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4
7f20731cc000-7f20731cd000 rw-p 00115000 08:08 786778                     /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.5600.4
7f20731cd000-7f20731ce000 rw-p 00000000 00:00 0 
7f20731ce000-7f2073220000 r-xp 00000000 08:08 786802                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.4
7f2073220000-7f2073420000 ---p 00052000 08:08 786802                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.4
7f2073420000-7f2073421000 r--p 00052000 08:08 786802                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.4
7f2073421000-7f2073422000 rw-p 00053000 08:08 786802                     /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.5600.4
7f2073422000-7f20735b8000 r-xp 00000000 08:08 786770                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.4
7f20735b8000-7f20737b7000 ---p 00196000 08:08 786770                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.4
7f20737b7000-7f20737be000 r--p 00195000 08:08 786770                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.4
7f20737be000-7f20737bf000 rw-p 0019c000 08:08 786770                     /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.5600.4
7f20737bf000-7f20737c1000 rw-p 00000000 00:00 0 
7f20737c1000-7f2073891000 r-xp 00000000 08:08 794721                     /usr/lib/x86_64-linux-gnu/libedataserver-1.2.so.23.0.0
7f2073891000-7f2073a90000 ---p 000d0000 08:08 794721                     /usr/lib/x86_64-linux-gnu/libedataserver-1.2.so.23.0.0
7f2073a90000-7f2073a96000 r--p 000cf000 08:08 794721                     /usr/lib/x86_64-linux-gnu/libedataserver-1.2.so.23.0.0
7f2073a96000-7f2073a97000 rw-p 000d5000 08:08 794721                     /usr/lib/x86_64-linux-gnu/libedataserver-1.2.so.23.0.0
7f2073a97000-7f2073af4000 r-xp 00000000 08:08 795036                     /usr/lib/x86_64-linux-gnu/libical.so.3.0.1
7f2073af4000-7f2073cf3000 ---p 0005d000 08:08 795036                     /usr/lib/x86_64-linux-gnu/libical.so.3.0.1
7f2073cf3000-7f2073d06000 r--p 0005c000 08:08 795036                     /usr/lib/x86_64-linux-gnu/libical.so.3.0.1
7f2073d06000-7f2073d07000 rw-p 0006f000 08:08 795036                     /usr/lib/x86_64-linux-gnu/libical.so.3.0.1
7f2073d07000-7f2073d08000 rw-p 00000000 00:00 0 
7f2073d08000-7f2073d6a000 r-xp 00000000 08:08 788985                     /usr/lib/x86_64-linux-gnu/libecal-1.2.so.19.0.0
7f2073d6a000-7f2073f6a000 ---p 00062000 08:08 788985                     /usr/lib/x86_64-linux-gnu/libecal-1.2.so.19.0.0
7f2073f6a000-7f2073f6e000 r--p 00062000 08:08 788985                     /usr/lib/x86_64-linux-gnu/libecal-1.2.so.19.0.0
7f2073f6e000-7f2073f6f000 rw-p 00066000 08:08 788985                     /usr/lib/x86_64-linux-gnu/libecal-1.2.so.19.0.0
7f2073f6f000-7f2073f98000 r-xp 00000000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f207412a000-7f2074159000 r--p 00000000 08:08 1455513                    /usr/share/glib-2.0/schemas/gschemas.compiled
7f2074159000-7f2074180000 rw-p 00000000 00:00 0 
7f207418d000-7f2074190000 r--p 00000000 08:08 1441797                    /home/czl/.config/dconf/user (deleted)
7f2074190000-7f2074191000 r--s 00000000 00:34 45094                      /run/user/1000/dconf/user (deleted)
7f2074191000-7f2074198000 r--s 00000000 08:08 1056534                    /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
7f2074198000-7f2074199000 r--p 00029000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f2074199000-7f207419a000 rw-p 0002a000 08:08 1179738                    /lib/x86_64-linux-gnu/ld-2.27.so
7f207419a000-7f207419b000 rw-p 00000000 00:00 0 
7ffcbc30b000-7ffcbc32c000 rw-p 00000000 00:00 0                          [stack]
7ffcbc37f000-7ffcbc382000 r--p 00000000 00:00 0                          [vvar]
7ffcbc382000-7ffcbc383000 r-xp 00000000 00:00 0                          [vdso]
ffffffffff600000-ffffffffff601000 --xp 00000000 00:00 0                  [vsyscall]
czl@czl-RedmiBook-14:~/Workspace/linux-compile/linux-5.4.128$ 

两个的C库运行地址分别为:

7f190d786000-7f190d96d000 r-xp 00000000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190d96d000-7f190db6d000 ---p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190db6d000-7f190db71000 r--p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f190db71000-7f190db73000 rw-p 001eb000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072ac6000-7f2072cad000 r-xp 00000000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072cad000-7f2072ead000 ---p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072ead000-7f2072eb1000 r--p 001e7000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so
7f2072eb1000-7f2072eb3000 rw-p 001eb000 08:08 1179742                    /lib/x86_64-linux-gnu/libc-2.27.so

分别转换:

czl@czl-RedmiBook-14:~/Workspace/memory$ sudo ./virt2phy 1 0x7f190d786000
[sudo] password for czl: 
Big endian? 0
Vaddr: 0x7f190d786000, Page_size: 4096, Entry_size: 8
Reading /proc/1/pagemap at 0x3f8c86bc30
[0]0xac [1]0x67 [2]0x26 [3]0x0 [4]0x0 [5]0x0 [6]0x80 [7]0xa0 
Result: 0xa0800000002667ac
PFN: 0x2667ac (0x2667ac000)
czl@czl-RedmiBook-14:~/Workspace/memory$ sudo ./virt2phy 1806 0x7f2072ac6000
Big endian? 0
Vaddr: 0x7f2072ac6000, Page_size: 4096, Entry_size: 8
Reading /proc/1806/pagemap at 0x3f90395630
[0]0xac [1]0x67 [2]0x26 [3]0x0 [4]0x0 [5]0x0 [6]0x80 [7]0xa0 
Result: 0xa0800000002667ac
PFN: 0x2667ac (0x2667ac000)
czl@czl-RedmiBook-14:~/Workspace/memory$ 

Linux系统用户态根据虚拟地址获取物理地址的方式_第1张图片

由此可见,虚拟地址完全不同的两个地址经过转换后,得到了完全相同的物理地址,侧面印证了,这条思路的正确性。


结束!

你可能感兴趣的:(嵌入式系统,Linux)