虚拟内存的重要性体现在下面几个方面:
1、虚拟内存可以映射到硬盘,以达到扩展内存的作用,
这样系统在物理内存已经用满的情况下,就不会因为没有内存可用,
而导致系统崩溃。
2、虚拟内存是以进程空间为寻址空间的,一般情况,进程用户模式下的寻址空间
是2G,为了避免内存的碎片,可以把2G进程空间划分为若干个块,对于长度分配
一样的内存处于同一个块,这样就因为内存分配长度恒定而减少了内存碎片。
如,从1.5G至2.0G这一段虚拟内存可以用来分配YUV视频数据内存,因为每个YUV
视频数据都一样长度,所以大大减少内存碎片。而其他类型的内存将在0-1.5G这一段
虚拟内存中分配,绝不会到1.5G至2.0G中分配。
注:用new分配的空间是不能指定在那段内存区间分配内存的。
3、虚拟内存分配了固定长度的内存,可能每段内存只有2/3的内存被使用到,
这样其他1/3的内存就浪费了。这里,虚拟内存就派上用场,它可以让1/3的内存存
于硬盘,其他的2/3才提交到物理内存。
注:用new分配的空间,分配了多少就是多少,其他的肯定是浪费了。