zoukankan      html  css  js  c++  java
  • 大内高手—序

    大内高手

     

    转载时请注明出处和作者联系方式:http://blog.csdn.net/absurd

    作者联系方式:李先静 <xianjimli at hotmail dot com>

    更新时间:2007-7-9

    我一直认为作为一个在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.         大内高手常用调试工具

     

  • 相关阅读:
    实现一个简单的Http代理服务器
    微软的反向代理库YARP
    Elastic Search 基础——分析(Analysis)
    Elastic Seach基础—映射(Mapping)
    使用WebView2在.Net程序中集成Edge chromium
    Asp.net Core中实现自定义身份认证
    在Razor Pages的Url中增加扩展名后缀
    利用Aria2构造自己的下载工具(一)
    Mongodb中GUID的显示问题
    在Eclipse中使用MAT分析Android程序内存使用状况(转)
  • 原文地址:https://www.cnblogs.com/zhangyunlin/p/6167877.html
Copyright © 2011-2022 走看看