ByteCode
2017-01-16 16:52:48 0 举报
ByteCode,也被称为字节码,是一种介于源代码和机器代码之间的中间代码。它是由编译器生成的,并由Java虚拟机(JVM)执行。ByteCode不依赖于特定的硬件或操作系统,因此具有高度的可移植性。在执行时,JVM将ByteCode翻译成特定平台的机器代码,从而实现了一次编写,到处运行的目标。这种编译方式被称为即时编译(Just-In-Time Compilation)。此外,由于ByteCode是静态类型的,所以它在运行时不需要进行类型检查,从而提高了执行效率。总的来说,ByteCode是Java平台的核心组成部分,它使得Java程序能够在不同的环境中运行,并且具有良好的性能和安全性。
作者其他创作
大纲/内容
400
quick_to_interpreter_bridge_trampoline
quick_generic_jni_trampoline
0
1300 9001
Head
method_
sp
0x100函数指针
ref
0f02
reg0
ExecuteSwitchImpl
r9
ExecuteGotoImpl
CodeItem#N
0x11223344
CodeItem#0
1
quick_code
600
0x100
art_jni_dlsym_lookup_stub
op
r2
reg1
Interpreter
int
9002 0001
0002
CompiledNative
ShadowFrame
dest_reg
dex_pc_ptr_
Reference Array
ArtInterpreterToCompiledCodeBridge
cached_hotness_countdown_
void*
DexFile
r0
ImageVeiw
r15
ArtMethod
lock_count_data_
JNINative
number_of_vregs_
SkipAccessChecks
dex_pc=0?
Callee
Now
src_reg
0x200函数地址
ExecuteMterpImpl
needs_notify_pop_
this
执行指令
Execute
reg3
calc
0x200
MainActivity#onCreate
add
hotness_countdown_
dex_pc
0x50二级函数指针
200
r1
stay_in_interpreter?
return
PhotoViewAttacher
1301 c800
Caller
link_
result
result_register_
Timeline
JValue
Calculator#add
After
entry_point_from_quick
0000
拉取指令
0004
quick_imt_conflict_trampoline
CodeItem#1
dex_pc_
Instance In Heap
解析指令
0006
c
VRegs
a
vregs_
Before
StubTrampoline
CanInvokeCompiledCode?
quick_resolution_trampoline
reg2
Bitmap
onCreate
BitmapDrawable
dex_instructions_
b
0 条评论
下一页