本文主要是介绍CMU 15-213 Introduction to Computer Systems学习笔记(19) Dynamic Memory Allocation: Advanced Concepts,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
这节课主要是学习一些更复杂的技术,研究不同数据结构去存储 free list
我们要看implict allocators,因此我们会研究垃圾回收是怎么工作的。老师说一旦你开始了动态的分配存储,事情变坏的会很快。
Explicit Free Lists
这里说的我们维护的block不是一整块,而是自由分配那些free block,因此我们存储的是forward/back pointers,而不是仅仅的size,但是我们实际上还需要boundary tags去做聚合。
Allocating From Explicit Free Lists
Freeing With Explicit Free Lists
老师这里还讲到了一个开发的问题,说程序员应该先简单的开发,实现基本的功能,再逐渐考虑优化的事情,而不是一开始就premature的想好每个优化。
Freeing With a LIFO Policy (Case 1)
这篇关于CMU 15-213 Introduction to Computer Systems学习笔记(19) Dynamic Memory Allocation: Advanced Concepts的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!