虚拟内存使用与常驻集大小

Vad*_*hin 4 virtual-memory ps

当我启动 php-script 并执行时,大约有 450MB 的ps aux巨大数量VSZ。而RSS——常驻集大小——大约是10MB。从维基百科,常驻集大小是is the portion of a process's memory that is held in RAM. 但是虚拟内存大小是否包括保存在其他地方的内存,比如文件系统?虚拟内存究竟由什么组成?

jll*_*gre 6

虚拟内存可能是:

  • 如果最近访问过数据或者没有释放 RAM 的压力,则在 RAM 上
  • 在交换区(交换分区或交换文件)上,如果它已被分页
  • 如果数据对应于内存映射文件(例如:共享库),则在文件系统上
  • 如果尚未访问分配的页面,则无处可去(即不使用资源,尤其是在像 Linux 这样过度使用内存的系统上)

第四点经常被忽视。