(原發於知乎, 按期同步至segmentfault, 原文地址:知乎-JVM入門系列)
這是在知乎的第一篇文章,以前的文章很分散,早先在CSDN,後來又用了Github Pages,接着又在自建的WordPress上面寫,至今幾乎所有遺失了。大致是一個很憊懶的人,也不愛折騰。如今算是下定決心又開始寫文章了,一是爲了記錄些知識,而也是想分享一下本身的新的體會。
至於JVM入門系列,大致是最粗淺的實現,本着熟悉jvm規範的目的,用java實現一個簡單的jvm。很久不寫了,可能有些混亂,但願見諒。 html
這個系列主要是想要完成兩個目標:java
瞭解jvm的一些基礎知識segmentfault
實現一個簡單的bytecode interpreter數組
在系列文章中,主要講述以下內容:多線程
classfile文件格式oracle
指令集jvm
bytecode interpreteride
而如下內容將不會在系列中出現:線程
GCcode
多線程
JIT
但願經過該系列可以讓你們對虛擬機有着基本的瞭解,而且完成最基本的一個字節碼解析器。
該系列將會按照以下順序分紅幾篇文章來說解:
jvm總覽
classfile結構
運行時數據區
指令集和解釋器
類、方法的實現
數組和字符串的實現
本地方法和異常處理
事實上,這些文章也算是我整理本身的jvm入門分享slides
主要參考: