Memeory MappedFiles
内存映射文件是OS通过mmap在内存中创建一个数据文件,这样就把文件映射到一个虚拟内存的区域。虚拟内存对于进程来说,是一个物理内存的抽象,寻址空间大小为2^64操作系统通过mmap来把进程所需的所有数据映射到这个地址空间(红线),然后再把当前需要处理的数据映射到物理内存(灰线)当进程访问某个数据时,如果数据不在虚拟内存里,触发pagefault,然后OS从硬盘里把数据加载进虚拟内存和物理内存如果物理内存满了,触发swap-out操作,这时有些数据就需要写回磁盘,如果是纯粹的内存数据,写回swap分区,如果不是就写回磁盘。有了内存映射文件,要访问的数据就好像都在内存里面,简单化了MongoDB访
下载地址
用户评论