Java 虚拟机与内存管理
前言
分为三部分:
Java 虚拟机
无用内存自动回收机制
代码安全性检查机制
Java 虚拟机
虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java 虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java 虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在 Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java 虚拟机在实际的计算机上通过软件模拟来实现。
无用内存自动回收机制
在程序的执行过程中,部分内存在使用过后就处于废弃状态,如果不及时进行无用内存的回收,就会导致内存泄漏,进而导致系统崩溃。
在 Java 运行环境中,始终存在着一个系统级的线程,专门跟踪内存的使用情况,定期检测出不再使用的内存,并进行自动回收,避免了内存的泄露,也减轻了程序员的工作量。
代码安全性检查机制
字节码的执行需要经过三个步骤:
首先由类装载器负责把类文件(
.class文件)加载到 Java 虚拟机中,在此过程需要检验该类文件是否符合类文件规范;其次字节码校验器检查该类文件的代码中是否存在着某些非法操作,例如 applet 程序中写本机文件系统的操作;
由 Java 解释器负责把该类文件解释成为机器码进行执行。
Java 虚拟机采用的是“沙箱”运行模式,即把 Java 程序的代码和数据都限制在一定内存空间里执行,不允许程序访问该内存空间外的内存,如果是 applet 程序,还不允许访问客户端机器的文件系统。
- 感谢你赐予我前进的力量
赞赏者名单
因为你们的支持让我意识到写文章的价值🙏
本文是原创文章,采用 CC BY-NC-ND 4.0 协议,完整转载请注明来自 LinJHS
评论
匿名评论
隐私政策
你无需删除空行,直接评论以获取最佳展示效果

