Linux 记忆保留思想

Linux 记忆保留思想,linux,windows,unix,operating-system,Linux,Windows,Unix,Operating System,有人能解释一下在操作系统中保留内存的想法吗?为什么我们需要“保留”状态?有“免费”和“承诺”就够了吗 保留并不能消除出错的可能性:如果资源不足,提交保留内存的尝试仍可能失败。因此,它不能保证任何事情 如果这个问题需要太多的背景知识,那么我将非常感谢引用好的文献来解释这个问题 提前感谢。它保证地址空间可用。在大多数情况下,程序员不需要担心这一点,可以使用运行库或Windows堆函数中的普通内存分配函数。不过,通常情况下,出于效率考虑,这些函数本身会使用引擎盖下的内存保留。感谢您的回复!“地址空间将

有人能解释一下在操作系统中保留内存的想法吗?为什么我们需要“保留”状态?有“免费”和“承诺”就够了吗

保留并不能消除出错的可能性:如果资源不足,提交保留内存的尝试仍可能失败。因此,它不能保证任何事情

如果这个问题需要太多的背景知识,那么我将非常感谢引用好的文献来解释这个问题


提前感谢。

它保证地址空间可用。在大多数情况下,程序员不需要担心这一点,可以使用运行库或Windows堆函数中的普通内存分配函数。不过,通常情况下,出于效率考虑,这些函数本身会使用引擎盖下的内存保留。感谢您的回复!“地址空间将可用”是什么意思?每个进程都处理虚拟内存,可以占用它尚未使用的任何空间,对吗?(我试图弄明白为什么我们需要两个步骤:保留和提交)假设程序员使用Windows堆函数分配两个堆。如果第一个堆没有保留地址空间,那么第二个堆可能会被分配到虚拟内存中第一个堆的正上方,从而无法在保持其地址空间连续的同时扩展第一个堆。