从逻辑上讲,进程的堆栈是由多个堆栈帧构成的,其中的每个堆栈帧都对应一个函数调用。 当函数调用发生时,新的堆栈帧被压入堆栈;当函数返回时,相应的堆栈帧从堆栈中弹出。尽管堆栈帧结构的引入为在高级语言中实现函数或过程这样的概念提供了直接的硬件支持, 但是由于将函数返回地址这样的重要数据保存在程序员可见的堆 ...
分类:
其他好文 时间:
2016-04-18 20:42:30
阅读次数:
109
ARMr0-r4 传递参数与返回值r7 帧指针 指向母函数被调用子函数在栈看中的交界栈帧指针(Frame Pointer).指向前一个保存的栈帧(stack frame)和链接寄存器(link register, lr)在栈上的地址R12:又叫IP(intra-procedure scratch ) ...
分类:
其他好文 时间:
2016-04-11 18:14:15
阅读次数:
138
一.gdb常用命令:命令 描述backtrace(或bt) 查看各级函数调用及参数finish 连续运行到当前函数返回为止,然后停下来等待命令frame(或f)帧编号 选择栈帧info(或i)locals 查看当前栈帧局部变量的值list(或l) 列出源代码,接着上次的位置往下列,每次列10行list行号 列出..
分类:
数据库 时间:
2016-04-11 07:27:32
阅读次数:
184
选择从栈溢出开始学习Shellcode的编写,是因为在没有保护机制(栈Cookie,ASLR,DEP,SafeSEH)的系统中使用栈溢出是一件很简单的事情。栈区随着函数调用动态变化,每个函数调用时在栈上占用的空间称为栈帧。用一个示例来说明栈上保存的内容及动态变化的过程。
下面是一个程序,生成一个对话框显示一条“Hello World!”消息。下面是该程序的C代码:
在VS2008中用Debu...
分类:
其他好文 时间:
2016-04-10 14:48:46
阅读次数:
166
虚拟机字节码执行引擎
1. 所有的Java虚拟机的执行引擎都是一致的:输入的是字节码文件,处理过程是字节码解析的有效过程,输出的是执行结果。
2. 运行时栈帧结构:
栈帧是支持虚拟机进行方法调用和方法执行的数据结构,它是虚拟机运行时数据区中的虚拟机栈的栈元素。栈帧存储了方法的局部变量表、操作数栈、动态链接和方法返回地址等信息,每一个方法调用从调用开始到执行完成都对应着一个栈帧在虚拟机栈里...
分类:
其他好文 时间:
2016-04-07 07:12:17
阅读次数:
183
这篇文章解释了Java 虚拟机(JVM)的内部架构。下图显示了遵守Java SE 7 规范的典型的 JVM 核心内部组件。 上图显示的组件分两个章节解释。第一章讨论针对每个线程创建的组件,第二章节讨论了线程无关组件。 线程 JVM 系统线程 每个线程相关的 程序计数器 栈 本地栈 栈限制 栈帧 局部 ...
分类:
编程语言 时间:
2016-04-04 18:09:47
阅读次数:
276
java局部变量表是栈帧重要组中部分之一。他主要保存函数的参数以及局部的变量信息。局部变量表中的变量作用域是当前调用的函数。函数调用结束后,随着函数栈帧的销毁。局部变量表也会随之销毁,释放空间。
由于局部变量表存在栈帧中。所以,如果函数参数和局部变量比较多,会使的局部变量表膨胀,每一次调用会占用更多的栈空间。最终结局就是栈空间内存一定的情况下调用的次数减少。
1.1.1. 局部变量表变量影响
...
分类:
编程语言 时间:
2016-04-02 14:55:14
阅读次数:
227
局部变量的存储位置是在栈中,栈在内存中的特点是自上而下生长,也就是由高地址到低地址,当变量作为函数参数传递时为传值方式,函数形参作为接收方会开辟一块临时空间来拷贝实参的值,如下代码:当main函数中调用函数stack_test时,将局部变量a,b传值过去,此时调试可得到a,b..
分类:
系统相关 时间:
2016-04-02 07:19:02
阅读次数:
255
一、栈栈作为一种特殊的数据结构而存在(“后入先出”存储),是一种只能在一端进行插入和删除操作的特殊线性表。大多数CPU上的程序实现使用栈来支持函数调用操作。栈用来传递函数参数、存储返回信息、临时保存寄存器原有值以用于回复以及存储局部数据。栈有很多自己的特性,它..
分类:
其他好文 时间:
2016-04-02 07:17:26
阅读次数:
213
接上一篇:浅谈栈帧(一)上一篇我们简单说了一下关于堆栈与栈帧调用函数是如何调用的,堆栈中的数据是如何存储在内存中的,用了几个简单的实例去观察分析他。这篇,我们从根本来思考一下堆栈这种东西:其实在计算机的早期,电脑的内存是用是十分老实的,没错就是老实。他没有..
分类:
其他好文 时间:
2016-04-01 16:15:49
阅读次数:
274