linux内存相关整理--为了看swap的问题

来源:互联网 发布:sql case exists 编辑:程序博客网 时间:2024/06/10 23:03
 
进程地址空间内存区域的分类(来自深入理解linux内核第二十章)
    正文段
    数据与bss段
    堆
    文件映射和匿名的线性区
    用户态栈
    
内核页框中的页的分类
            不可回收
            可交换
                用户地址空间的匿名页:放入swap分区
            可同步
                磁盘文件的页
                用户地址空间的映射的页
            可丢弃

pagecache的页的分类
    1普通文件的页
    2直接从块设备读取的页
    3进程地址空间被交换到磁盘的页
    4特殊文件系统文件的页(共享内存等等)
pagecache的所有页都是映射页(映射页的概念来自于也框中页的分类)

mmap/unmap
将文件或者其他对象(内核中的内存段)映射到进程的地中空间中

映射页是有文件备份的页---->交换出去的页是有文件备份的页----->pagecache中的页都是映射页
swap的执行时机(就是swap的执行的时机):(深入理解linux内核的shrink_list函数的17-5的图,add_to_swap)
swap出去的进程的地址一般(进程的堆,映射到内存的线性区域中的页(非文件映射的页))等非映射页,且受参数控制
1 0
原创粉丝点击