malloc本质是什么
时间: 2023-12-03 22:38:42 浏览: 92
malloc 原理解析
malloc是C语言中的动态内存分配函数,它的本质是在堆上分配一块指定大小的内存空间,并返回该内存空间的首地址。这个函数的实现是通过调用操作系统提供的内存管理函数来实现的。在Linux系统中,malloc函数通常使用的是ptmalloc2内存管理器。ptmalloc2内存管理器会维护一个空闲链表,用于存储已经释放的内存块,当需要分配内存时,会先在空闲链表中查找是否有足够大小的内存块,如果有,则直接返回该内存块的地址;如果没有,则会向操作系统申请一块新的内存空间,并将其划分为多个内存块,其中一个内存块被返回给用户,其余的内存块则被加入到空闲链表中,以备后续使用。
阅读全文