JVM学习思路0529

从计算机组成原理和计算机操作系统两个角度去学习JVM;JVM组成包括:架构(操作数栈、栈、PC、方法调用栈帧)、指令集、指令执行过程。JVM不是直接接受二进制代码,所以接下来需要了解它的输入:class文件的格式,后面还有配套的JIT、编译、链接、类加载等过程,最后搞清楚JVM启动,到执行一行Java代码的过程。

操作系统管理几个重要的资源:

  1. CPU,需要了解JVM里对CPU的管理和支持,即对多线程的支持(从指令层面看起)
  2. 内存,需要了解JVM里对内存的管理,即了解对象内存分配、对象内存回收,进而需要了解各种垃圾收集算法和垃圾收集器
  3. IO,需要了解JVM里是如何将用户态的数据经过JVM传到网卡或硬盘的

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏向治洪

Java垃圾回收机制详解

#概述 由于JVM中垃圾收集器的存在,使得Java程序员在开发过程中可以不用关心对象创建时的内存分配以及释放过程,当内存不足时,JVM会自动开启垃圾收集线程,进...

2508
来自专栏Laoqi's Linux运维专列

Linux入门到精pao通lu

2944
来自专栏有趣的django

10.Flask上下文

 应用上下文和请求上下文都是存放在一个‘LocalStack’的栈中,和应用app相关的操作就必须要用到应用上下文,比如通过current_app获取当前的这个...

861
来自专栏资深Tester

一定要知道的,那些Linux操作命令(二)

2136
来自专栏Aloys的开发之路

javadoc相关问题

src源代码生成html格式文档:http://www.cnblogs.com/shenliang123/archive/2012/04/23/2466483....

24210
来自专栏Golang语言社区

golang的垃圾回收(GC)机制

golang的垃圾回收采用的是 标记-清理(Mark-and-Sweep) 算法 就是先标记出需要回收的内存对象快,然后在清理掉; 在这里不介绍标记和清理的具体...

4367
来自专栏Linux驱动

第4阶段——制作根文件系统之分析init进程(2)

本节目标: (1) 了解busybox(init进程和命令都放在busybox中) (2) 创建SI工程,分析busybox源码来知道init进程做了哪些事情 ...

2519
来自专栏逸鹏说道

JQ动态生成的元素,原事件绑定失效

1182
来自专栏小尘哥的专栏

springboot中使用tk.mybatis代码生成器

tk.mybatis是对mybatis的进一步封装,它对基本的单表的增删改查又做了进一步封装,springboot中的使用之前已经写过了,如果没用过,请参考我之...

2772
来自专栏SDNLAB

ODL碳版本模块开发及流程梳理

文章主要基于ODL碳版本,进行简单插件的构建、安装、部署,以一个插件开发为例,介绍ODL新版本开发过程中的一些具体问题。 ? 一、碳版本简易开发流程 1.1 开...

5258

扫码关注云+社区

领取腾讯云代金券