操作系统通过虚拟技术,可以完成,很大的程序在很小的内存中运行。
我结合以前编程的经验,有这么一个问题,
假如现在程序执行到了第1000句,他可能需要用到第一句的变量,假如第一句已经根据虚拟技术,替换到了硬盘该怎么办。。。
如果程序中真的有需要读取第一句变量的语句,操作系统会自己再从磁盘加载到用户内存的,这点不用担心哦。
这边说的虚拟应该是虚拟内存。
如果程序需要的数据不在内存里,就需要交换,和cpu缓存-内存的道理差不多。也就是把某个暂时不用的内存写入硬盘,再腾出空间读取硬盘里需要的数据到内存。
因为硬盘的速度很慢,所以频繁的交换会导致程序性能的颠簸,也就是俗称的"卡"。
只能再调用,还不如再写一遍变量,会卡