文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>缓冲区溢出

缓冲区溢出

时间:2010-04-01  来源:sjtlqy

编译后的程序被分成五个段,存放在下列五个内存段中。
code -> data -> Bss-> heap->stack 分别基地址到高地址。
A code 代码段 存储机器指令,不存储变量,指令均为只读属性,大小固定。
B data 存放全局变量和静态变量,均已经初始化,大小控件已经分配,大小固定。
C  Bss  类似于data段,唯一区别就是未初始化,大小固定。
D  heap 大小可以变化  存储其他变量,地址只往高地址方向延伸。
E  stack  存储中间结果,例如函数调用中的一些变量,返回地址,参数等。大小可以变化。先进后出,地址变化只往低地址处延伸。
Heap  :由应用程序来分配内存,可以初始化。一个进程可以有多个heap,具有一个默认的heap;由分配器和回收器来进行内存管理。在C中用malloc和free,c++ 中new和delete来分配和取消内存空间。

Stack : 由编译器自动分配,参数和返回地址存入其中,当需要时会被弹出,弹至程序下一条指令。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载