2013年9月26日

glibc中malloc()的空间overhead

摘要: 在linux下调用malloc()分配内存的时候,实际占用的内存与请求的内存尺寸的关系是什么呢,这个需要研究一下glibc中malloc()的实现。现在常见linux发行版中带的glibc中采用的都是Doug Lea的实现,下面的分析取自他的2.8.4版本的malloc.c。glibc对内存的管理是以chunk为单位的,未分配的chunk之间用双向链表连接成一个环,遍历的时候用指针遍历,已分配的chunk在其首部有chunk的大小,并以此字节数做遍历。每个chunk的首部要放置一个叫做malloc_chunk的struct,故每个chunk的大小至少是这个struct的大小,如果分配的空间或者 阅读全文

posted @ 2013-09-26 18:47 屁屁侠 阅读(1134) 评论(0) 推荐(0)

shell学习笔记之命令(四)

摘要: 命令的类型:1>.外部命令:在命令提示符中执行的普通命令。2>.内置命令:内置命令是在shell内部实现的。1.break命令#!/bin/shrm -rf fred*echo > fred1echo > fred2mkdir fred3echo > fred4for file in fred*do if [ -d "$file" ]; then break; fidoneecho first directory starting fred was $filerm -rf fred*exit 02.冒号:1.空命令,用于被简化逻辑,相当于tru 阅读全文

posted @ 2013-09-26 11:47 屁屁侠 阅读(363) 评论(0) 推荐(0)

导航