??????????JVM???????????????????????Java?????????е?????


????
Java??????й???

????Java ???????й????Java ??????????.Java?????-> Java Compiler??Java????????->Java ??????????.class?????->?????????Class Loader??->Runtime Data Area????????????-> Execution Engine????????棩?? ?????????????Java??????й???? Runtime Data Area???????????? ?????
????????????????????????????????
????· ???????????Program Counter Register??
????· Java????????VM Stack??
????· ??????????Native Method Stack??
????· ????????method area??
????· ???heap??
????????????????
????????????????????????????????????????????????????????????????JVM?淶?й漲??????????е????native?????????????????б?????????????е????????????????е???native?????????????????е??undefined?????????????????????????????????????????????£????CPU????????????????е???????????????????????л?????????????л??????????е?λ???????????????????????????????????
????????Java??????
????Java???????д?????????????????????????????????????????????????У????????????????????????????????????“?”???Java??????????????а???????????????????????????????????????????????????
????1???????????
?????????洢?????е??????????????????о????????????????????????磺????????????????boolean??byte??char??short??int??float??long??double?????????????reference?????????????????????????????????????????????????????????????????????????????????????????λ?????returnAddress????????????????????????????????64λ?????long??double?????????????2????????????Slot?????????????????????1???????????????С?????????????????С???????????????????????????С???????????Java??????淶?У??????????漲????????????????????????????????????????????????????StackOverflowError????????????????????????????????Java?????????????????????Java??????淶????????????????????????????????????????????棬?????OutOfMemoryError????
???????????
????????????????????????????????????е????м???????????????????????????????????????????????????????????????????????????
???????????
?????????????????????????????????и???????????????????????????????????????е???????п????????????е?????????????????????????????????ù????е???????
??????????????
?????????????????????????????????????????????????б????????????????????
???????????
??????????淶?????????????????????Щ?淶???????????????????У???????????????????????????????????????????????????????У???????????????????????????????????????????????????????
????????????????
??????????????Native Method Stack??????????????????????????????????????????????????????????????Java??????????????????????????????????????????Native???????????????????????????????????????StackOverflowError??OutOfMemoryError????
??????????heap??
??????C?????У?????????????malloc??????free????????????????????????Java??????????????Java?е?????????洢?????????????饗???????????????????Java??е???????????е????????????????????檔??Java?У?????????????????????????????Java????????????????????д???????????????????????????JVM???????????
?????塢??????
????????????Method Area????Java????????????????????????????????洢???????????????????????????????????????????????????????????????????Runtime Constant Pool?????????????????Class????г????????汾????Ρ??????????????????????????????????????Constant Pool Table?????????????????????????????????????????????????????????????????????????????д?????JVM?淶?У????????????????????????????????????????????????“??”???????HotSpot???????????????????????JVM????????????????????????????????????????????????????????????????????????????JDK7???Hotspot??????????????????????????
???????native????????????? Java ??????????????д?????