Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3238365
  • 博文数量: 346
  • 博客积分: 10189
  • 博客等级: 上将
  • 技术积分: 3125
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-05 19:46
文章分类

全部博文(346)

文章存档

2013年(35)

2011年(35)

2010年(76)

2009年(48)

2008年(152)

分类: C/C++

2008-08-25 19:26:10

我一直认为作为一个在linux下工作的C程序员,若对内存有深刻的认识,不但程序的性能会更高,运行更稳定,编程速度也会更快。反之亦有相反的效果,有时一些内存错误让你摸不着头脑,不但大大降低开发速度,开发出来的软件稳定性也值得怀疑。
 
为了提高组员的编程水平,去年我制定了一系列的培训计划,并负责主讲部分重要课程,其中基础类课程中,有一堂关于内存的课程。当时的讲稿写得很粗略,后来的新同事说看不明白,我决定重新整理一下,放在BLOG,希望对新手有所帮助。
 
至于文章的标题,基本上是为了搞笑。最近重温星爷经典《大内密探零零发》,这是以大内高手作为文章的标题原因之一。另外也可以这样理解,内指内存,至于大字,修饰内存指其容量大,修饰内存高手形容水平很高,两种理解都可以。
 
其中包括下列文章:
 
1.     大内高手—内存模型
单线程模型
多线程模型
 
2.         大内高手—栈/堆
       backtrace的实现
       alloca的实现
       可变参数的实现。
       malloc/free系列函数简介
       new/delete系列操作符简介
      
3.         大内高手—全局内存
       .bss说明
       .data说明
       .rodata说明
       violatile关键字说明
       static关键字说明
       const 关键字说明
 
4.         大内高手—内存分配算法
       标准C(glibc)分配算法
       STL(STLPort)分配算法
       OS内部分配算法(伙伴/SLAB)
 
5.         大内高手—惯用手法
       引用计数
       预先分配
       内存池
       会话池
       …
6.         大内高手—共享内存与线程局部存储
7.         大内高手—自动内存回收机制
8.         大内高手—常见内存错误
9.         大内高手—常用调试工具
阅读(583) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~