E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
栈帧
关于
栈帧
变化完整流程图(函数嵌套)
一、什么是
栈帧
(StackFrame)当一个函数被调用时,会在栈上开辟一段空间,叫做
栈帧
。
shenyan~
·
2025-07-08 06:01
流程图
栈的战争:函数调用背后,编译器、链接器、CPU与黑客的四方博弈 解剖CPU、内存与安全交织的底层真相 了解函数调用的暗流:从C括号到CPU指令、
栈帧
攻防的生死时速
作者:smallcodewhite更新:2025.6.4号下午6点13分小引子:在软件这行当里混久了,你会发现一个现象:很多人能用各种高级语言、框架写出复杂的业务,但一遇到诡异的崩溃、性能瓶颈,或者需要和底层硬件打交道时,就抓瞎了。究其原因,是对计算机体系最基础的运行模型理解得不够透。上一篇我们聊了点数据在内存里的存放问题,有兄弟说不够劲,没触及灵魂。说得好。今天,咱们就来干一件有挑战性的事:把C
small_wh1te_coder
·
2025-07-06 21:39
c++
c
算法
c语言
c++
c
算法
面试
JVM中的各类引用
中的各类引用欢迎来到我的博客:TWind的博客我的CSDN::Thanwind-CSDN博客我的掘金:Thanwinde的个人主页对象众所不周知,Java中基本所有的对象都是分配在堆内存之中的,除开基本数据类型在
栈帧
中以外
·
2025-07-04 14:02
Java内存区域划分及各区域作用
虚拟机栈描述的是Java方法执行的内存模型:每个方法在执行的同时都会创建一个
栈帧
(StackFrame)用于存储局
·
2025-07-03 20:04
黑马JVM解析笔记(一):内存结构
被加载进内存然后就是到了JVM内部的结构,主要是将java类信息存储到JVM中的各个区域:方法区:存储类级别的信息,包括静态变量、方法数据和常量池等堆:存储对象实例和数组,动态的创建并管理对象的内存区域JVM栈:存储线程的
栈帧
null不是我干的
·
2025-06-27 08:30
JVM
jvm
笔记
java
Java虚拟机栈(JVM Stack)详解与工作流程分析
Java虚拟机栈(JVMStack)详解与工作流程分析1.虚拟机栈核心概念基本特性线程私有:每个线程在创建时都会分配一个独立的栈存储内容:
栈帧
(StackFrame):每个方法调用对应一个
栈帧
生命周期:
empti_
·
2025-06-27 03:50
Java基础
java
jvm
函数的调用逻辑
函数的调用逻辑当函数被调用时,就会使用函数的代码生成一个
栈帧
,然后直接切换到这个
栈帧
处执行,直到这个
栈帧
执行完毕被销毁后,才会回到调用处继续向下执行。简单来说就是函数采用了插入式执行的方式。
泡泡不想写代码
·
2025-06-26 16:01
C++基础
c#
c++
c语言
JVM内存模型
本地方法栈和程序计数器;3、堆、元空间是线程共享;方法栈、程序计数器是线程独有,每个线程都会有;4、运行javaCalculate.class之后,先由类装载子系统,将字节码文件加载到运行时数据区;5、
栈帧
第1缕阳光
·
2025-06-19 17:05
Java
java
jvm
【1.2 JVM内存模型知识库 - 轻松理解版】
JVM内存模型知识库-轻松理解版一、JVM内存模型顺口溜经典记忆口诀堆栈方法三兄弟,线程共享要分清堆里对象住得多,新生老年分两区
栈帧
方法调用链,局部变量操作栈方法区里存什么?
·
2025-06-18 09:56
【学习笔记】深入理解Java虚拟机学习笔记——第8章 虚拟机字节码执行引擎
第8章虚拟机字节码执行引擎8.1概述解释执行,编译执行,或混合执行8.2运行时
栈帧
结构一个方法对应一个
栈帧
,一个方法的出入栈代表运行情况。程序的字节码指令只针对于当前
栈帧
生效。
不太可爱的叶某人
·
2025-06-16 10:07
学习笔记
深入理解Java虚拟机学习笔记
java
学习
笔记
深入探索JVM字节码执行引擎 — 运行时
栈帧
结构、局部变量表
执行引擎是Java虚拟机核心的组成部分之一。“虚拟机”是一个相对于“物理机”的概念,这两种机器都有代码执行能力,其区别是物理机的执行引擎是直接建立在处理器、缓存、指令集和操作系统层面上的,而虚拟机的执行引擎则是由软件自行实现的,因此可以不受物理条件制约地定制指令集与执行引擎的结构体系,能够执行那些不被硬件直接支持的指令集格式。在不同的虚拟机实现中,执行引擎在执行字节码的时候,通常会有解释执行(通过
努力努力再努力ss
·
2025-06-15 07:42
深入理解JVM系列
jvm
java
面试
C语言:冒泡排序
(详见《函数
栈帧
的创建与销毁》)如下图:在进行传值调用时,a、b的值其实并没有改变。
Yolo_TvT
·
2025-06-10 05:00
C语言系列
c语言
算法
开发语言
数据结构之栈
LinkedList-CSDN博客目录系列文章目录前言一、栈的常用方法二、栈的模拟实现三、栈的应用场景1.将递归转化为循环,例如链表的逆序打印:2.括号匹配3.逆波兰表达式4.判断栈的序列5.模拟实现最小栈四、虚拟机栈,栈,
栈帧
的区别前言本文介绍了栈的常用方法
BUG召唤师
·
2025-06-09 20:32
数据结构
JVM-内存结构
每个线程独立存储指令位置异常❌唯一不会抛出OutOfMemoryError的区域特殊场景⚠️执行Native方法时值为undefined2.虚拟机栈(JavaVirtualMachineStack)//
栈帧
内存模型示例
是三好
·
2025-06-09 13:40
jvm
jvm
【JVM】Java虚拟机(一)——内存结构
目录一、简介二、程序计数器三、虚拟机栈
栈帧
结构:特点:四、本地方法栈特点:五、堆堆结构:特点:对象分配过程:六、方法区方法区结构:特点:运行时常量池七、StringTable(一)StringTable
gadiaola
·
2025-06-09 09:14
JVM
jvm
java
【汇编逆向系列】七、函数调用包含多个参数之浮点型- XMM0-3寄存器
目录1.汇编代码1.1debug编译1.2release编译2.汇编分析2.1浮点参数传递规则2.2
栈帧
rsp的变化时序2.3参数的访问逻辑2.4返回值XMM0寄存器3.汇编转化3.1Debug编译3.2Release
Jacen.L
·
2025-06-06 15:34
逆向工程
汇编
函数调用的过程
2.分配
栈帧
:在栈上为被调用函数分配内存,管理局部变量、参数和返回地址。3.传递参数:通过栈或寄存器传递参数给被调用函数。4.跳转到函数代码:更新程序计数器为被调用函数的入口地址。
weniry
·
2025-05-26 11:36
c++
【JVM 04-JVM内存结构之-本地栈】
本地方法执行时也会创建
栈帧
,同样可能出现StackOverflowError和Ou
青北念
·
2025-05-25 18:13
JVM
jvm
今夜
栈帧
皆似雪,明朝队列俱如鸿
不知道大家之前是否学习过数据结构中的栈及其相关概念,我们今天要学习的容器就是与数据结构中栈的特点非常相像的stack容器,它是一种先进后出的数据结构,并且只有一个出口。类比生活中的弹匣可以帮助你更好的理解这一种数据结构stack容器——基本概念基本概念:栈中只有顶端元素可以被外界使用,因此栈不允许有遍历的行为栈中进入数据称为——入栈栈中弹出数据称为——出栈stack容器——常用接口stack容器中
hhy_xyx
·
2025-05-25 02:26
c++
stl
容器
深入解析JVM字节码解释器执行流程(OpenJDK 17源码实现)
其执行流程可分为以下关键阶段:方法调用入口构建:生成
栈帧
、处理参数、同步锁等。字节码分派(Dispatch):根据字节码跳转到对应处理逻辑。操作数栈与局部变量管理:维护方法执行上下文。
蚰蜒螟
·
2025-05-17 00:21
jvm
python
开发语言
C# 方法(ref局部变量和ref返回)
本章内容:方法的结构方法体内部的代码执行局部变量局部常量控制流方法调用返回值返回语句和void方法局部函数参数值参数引用参数引用类型作为值参数和引用参数输出参数参数数组参数类型总结方法重载命名参数可选参数
栈帧
递归
钢铁男儿
·
2025-05-15 06:15
C#
图解教程
c#
开发语言
C#方法(完整篇-包含了:参数(out,ref)的关键字,方法调用顺序,方法的
栈帧
以及递归调用实现斐波那契数列等内容)
.params参数(可变参数)2.out参数(输出参数)3.ref(引用传递)六.值传递和引用传递七.方法的调用顺序1.调用多个方法,方法直接没有联系时2.调用多个方法,方法有联系时(嵌套)八.方法的
栈帧
九
薄荷撞~可乐
·
2025-05-15 06:14
C#
c#
开发语言
【C语言入门】内联函数
当遇到高频调用的短函数(比如计算简单数学公式、状态检查等)时,普通函数的调用开销(如
栈帧
创建、参数传递、返回值处理)可能成为性能瓶颈。
Mr_-G
·
2025-05-13 06:29
C语言
C语言入门
编程入门
内联函数
宏
inline
function
对象式宏
函数式宏
#define
c#
C# 方法(方法重载)
本章内容:方法的结构方法体内部的代码执行局部变量局部常量控制流方法调用返回值返回语句和void方法局部函数参数值参数引用参数引用类型作为值参数和引用参数输出参数参数数组参数类型总结方法重载命名参数可选参数
栈帧
递归方法重载一个类中可以有多个同名方法
钢铁男儿
·
2025-05-12 10:13
C#
图解教程
c#
java
算法
C# 方法(输出参数)
本章内容:方法的结构方法体内部的代码执行局部变量局部常量控制流方法调用返回值返回语句和void方法局部函数参数值参数引用参数引用类型作为值参数和引用参数输出参数参数数组参数类型总结方法重载命名参数可选参数
栈帧
递归输出参数输出参数用于从方法体内把数据传出到调用代码
钢铁男儿
·
2025-05-10 04:50
C#
图解教程
c#
java
算法
软件安全期末复习
软件安全选择题当4字节压入
栈帧
时以下哪个选项是正确的(B)A、ESP=ESP+4B、ESP=ESP-4C、ESP=ESP*4D、ESP=ESP/4某天某研究员发现了一个软件漏洞,它可能会危及用户数据对机密性
加碗米饭
·
2025-04-30 21:56
安全
【面试八股文】JVM经典面试
JVM八股文重点整理一、JVM内存结构1.程序计数器:-线程私有,记录当前线程执行的字节码行号指示器-唯一不会出现OOM的区域2.虚拟机栈:-线程私有,生命周期与线程相同-存储
栈帧
(局部变量表、操作数栈
狒狒的代码王国
·
2025-04-28 03:20
java
学习方法
深度学习
开发语言
面试
Java GC详解
目录需要GC的内存区域GC的标记算法什么时候触发GCGC常用算法三色标计算法GC垃圾收集器需要GC的内存区域jvm中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,
栈帧
随着方法的进入和退出做入栈和出栈操作
1_5_2_
·
2025-04-24 18:18
JVM
java
jvm
开发语言
JVM对象创建全过程
JVM对象创建全过程深度解析1.对象创建的整体流程JVM创建对象的过程可以分为7个关键步骤,从类检查到内存分配,再到对象初始化:类加载检查→内存分配→内存空间初始化→对象头设置→构造函数执行→
栈帧
引用建立
qian_qh
·
2025-04-19 06:52
jvm
C++类和对象中
1.构造函数构造函数是特殊的成员函数,需要注意的是,构造函数虽然名称叫构造,但是构造函数的主要任务并不是开空间创建对象(我们常使⽤的局部对象是
栈帧
创建时,空间
巨可爱熊
·
2025-04-18 13:04
c++
开发语言
AI帮我学习(一)程序中的
栈帧
和pc指的是什么
在程序执行过程中,**
栈帧
(StackFrame)**和**PC(ProgramCounter)**是两个非常关键的概念,它们共同协作来控制代码的执行流程和管理内存。
不知道叫什么呀
·
2025-04-18 07:27
用AI满足我的好奇心
学习
AIGC
我的AI老师
一文读懂JVM内存模型
Java虚拟机栈:每个线程都有自己独立的虚拟机栈,生命周期与线程相同,每个方法在执行时都会创建一个
栈帧
,用于存储局部变量表,操作数栈,动态链接,方法出口等信息。
派鑫大
·
2025-04-17 23:05
JVM
jvm
【算法】归并排序
归并排序的递归探寻1.思路2.搭建2.1设计过掉不符情况(在最底层时)2.2查验能实现基础排序(在最底层往上点时)2.3跳转结果继续往上回搭3.实质4.实现二、递归的调用栈1.递归的执行过程2.递归的函数
栈帧
Brookty
·
2025-04-17 09:35
算法
数据结构
算法
数据结构
排序算法
数据结构之栈和队列
在讨论栈之前,我们要知道:函数
栈帧
与数据结构的栈并不是同一个概念。首先,函数
栈帧
的栈指的是操作系统层面的内存区域划分,而数据结构的栈是指数据结构中一种数据出入的形式。
大龄门外汉
·
2025-04-10 12:34
数据结构
数据结构
c语言
学习
改行学it
Java 类型转换和泛型原理(JVM 层面)
一、类型转换概念解释:编译类型:在编译时确定,保存在虚拟机栈的
栈帧
中的局部变量表中;运行类型:在运行时确定,由保存在局部变量表中变量指向的堆中对象实例的类型决定(存储在对象头中);合法性:运行类型必须是变量类型本身或其子类
西元.
·
2025-04-06 09:53
JVM
Java
java
开发语言
【JVM】jvm中的栈简介
三、栈的特性四、
栈帧
五、栈的运行原理5.1运行原理5.2代码示例5.2.1方法的入栈和出栈5.2.2没有捕获异常5.2.3捕获异常六、
栈帧
的内部结构七、运行时数据区,哪些部分存在Error和GC?
No8g攻城狮
·
2025-04-06 02:04
JVM探究
jvm
java
数据结构
开发语言
面试
Linux 调试器 —— gdb 的使用
下载基础操作退出调试器查看源代码运行程序断点打断点查看断点取消断点关闭断点开启断点单步执行逐过程逐语句打印表达式值、变量值、地址等等单次查看常显示运行至下一个断点处运行完所在函数,就停下来跳转至指定行查看当前
栈帧
局部变量的值修改变量的值查看各级函数调用及参数在写代码时
溢檀香
·
2025-04-01 10:30
Linux
linux
运维
服务器
深入浅出JVM性能优化:从理论到实践
常量池等元数据堆内存:对象实例存储核心区域YoungGeneration(新生代)Eden区(对象诞生地)Survivor区(S0/S1,存活对象过渡区)OldGeneration(老年代)虚拟机栈:线程私有,存储
栈帧
本地方法栈
rider189
·
2025-03-24 16:37
java
jvm
【C++】内联函数
内联函数的概念以inline修饰的函数叫做内联函数,内联函数类似于宏,都是在调用的地方展开,没有函数调用建立
栈帧
的开销,提升程序运行的效率不同的是宏是在预处理阶段展开的,而内联函数是在编译阶段展开的而且宏使用起来过于繁琐
Easy_Package
·
2025-03-23 09:16
c++
开发语言
八股文-C++ 运行时多态与函数调用机制详解
5.C语言的函数调用过程
栈帧
(StackFrame)的结构
栈帧
的创建
tt555555555555
·
2025-03-21 05:15
面经
C++学习
c++
开发语言
JVM 深入浅出 :一文看懂 JVM 内存结构
文章目录1.概述2.程序计数器3.Java虚拟机栈3.1.栈深度3.2.
栈帧
3.2.1.局部变量表3.2.2.操作数栈3.2.3.动态链接3.2.4.方法正常结束3.2.5.方法异常结束4.堆5.方法区
kkkllllss
·
2025-03-20 06:31
spring
Java
Java架构
spring
boot
spring
redis
java
架构
函数调用汇编
栈帧
(StackFrame)每个函数调用时
闯闯爱编程
·
2025-03-14 20:21
汇编
Pwn,我的栈溢出笔记就该这么写(上)
(1).金丝雀(canary)1、在所有函数调用发生时,向
栈帧
内压入一个额外的随机DWORD(数),这个
「已注销」
·
2025-03-14 05:54
栈
JVM常见八股问题
栈区:每个线程都有一个
栈帧
,用于存
学Java的skyyyyyyyy
·
2025-03-10 18:05
jvm
java
面试__八股
无用代码删除字节码就是虚拟机所使用的指令集类加载:加载(获取类的二进制流文件,方法区的数据结构,内存生成这个类的class对象),链接(验证,准备(类变量初始化),解析(符号引用替换为直接引用)),初始化(常量初始化)
栈帧
主要是局部变量区和操作数栈
big muscle
·
2025-03-10 17:01
Java
面试
linux
jvm
【JVM】GC
GC(GarbageCollection)概述jvm中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,
栈帧
随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理。
日月星宿~
·
2025-02-22 23:36
#
jvm
jvm
JVM篇:内存分区及作用及各部分可能发生的异常
2.虚拟机栈(JavaVirtualMachineStack)作用:存储方法调用的
栈帧
(局部变量表、操作数栈、动态链接、方法出口等
ashane1314
·
2025-02-20 08:20
jvm
Day46(补)【AI思考】-
栈帧
和全局变量关系的全面解析
文章目录
栈帧
和全局变量关系的全面解析**
栈帧
的全面解析****1.
栈帧
的定义****2.
栈帧
的核心组成****3.
栈帧
与各变量的关系****(1)形参变量****(2)返回地址****(3)局部变量**
一个一定要撑住的学习者
·
2025-02-20 06:39
#
AI深度思考学习方法
java
算法
前端
Day47(补)【软考】2022年下半年软考软件设计师综合知识真题-计算机软件知识2
哲学概念及收敛思维:Python3列表截取[max,min,-n]的哲学理解,输入-,考集合排列从大到小,range和list输入,考结束值min不在集合中哲学概念及收敛思维:**
栈帧
的核
一个一定要撑住的学习者
·
2025-02-17 03:28
#
软件设计师
算法
C++栈内存管理:从原理到高性能编程实践
通过反汇编分析GCC/Clang编译器实现,验证
栈帧
结构与函数调用约定,提出基于现代C++特性的栈使用优化方案。实验证明,合理控制栈空间可降低30%内存访问延迟
溟海.
·
2025-02-16 03:51
c++
c++
开发语言
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他