关于内存碎片的疑问
小弟正在阅读《深入理解Linux内核》中的第七章存储器管理,里面讲到Linux的物理内存分配可以用伙伴系统算法和Slab分配器算法,解释了如何避免内碎片和外碎片。我的问题是:既然操作系统为我们解决了内存碎片的问题,那我们实际编程中是否就不用考虑了?
对此问题我的理解是:我们new出来的都是虚拟内存,而程序实际执行时都是由操作系统分配的物理内存,由于操作系统已经有了很好的算法(伙伴算法和Slab分配器)避免内存碎片,所以我们编程时无需考虑内存碎片的情况,而且也由于物理内存的使用完全是操作系统对应用程序屏蔽的,我们实际上也无法考虑内存碎片的情况,不知道这样理解是否正确?
页:
[1]