当进程提交一个不存在在页面中的内存地址时,就会触发CPU产生页出错异常中断,并把引起中断的线性地址放到CR2中,在中断处理的过程中就得到了发生页出错异常的确切地址,从而可以把进程要求的页面从二级存储空间放到物理内存中;如果此时物理内存已经被全部占用,可以借助二级存储空间的一部分缓冲区(Swapper)把内存中暂时不使用得页面交换到二级缓冲区中,然后把要求的页面调入内存中.
这就是内存管理的却也加载机制,在Linux 0.11内核中是在程序 mm/memory.c中实现的。
当进程提交一个不存在在页面中的内存地址时,就会触发CPU产生页出错异常中断,并把引起中断的线性地址放到CR2中,在中断处理的过程中就得到了发生页出错异常的确切地址,从而可以把进程要求的页面从二级存储空间放到物理内存中;如果此时物理内存已经被全部占用,可以借助二级存储空间的一部分缓冲区(Swapper)把内存中暂时不使用得页面交换到二级缓冲区中,然后把要求的页面调入内存中.
这就是内存管理的却也加载机制,在Linux 0.11内核中是在程序 mm/memory.c中实现的。