???????????
????Java??????????Java?????????л?????????????滮????????????????????Java??????淶??JVM???????????????????????????????????????????Java??????????????????Java?????????????????????????????????洢???????????

???????????????Program Counter Register??
????????С????????????????????е????????к????????????????????????????ü???????????????????????е???????????????????????????????????????????????????????????????????????????????????????????????????????????е??
?????????????????Java????????ü??????????????????е????????????????????????????е???Native????(????????????????)????ü????????????????????????????????Java??????淶??????κ?OOM??????????OutOfMemoryError???????????
????Java????????Java Virtual Machine Stacks??
??????????????????е???????????????????????????????????????Java??????е???????????????????е???????????????????????????????????з??????ú??????е???????????????????????????????У???????????????Ч????????????????????????????????????????????????????е???????????????????????в???????????洢????????????????????????????????????????Щ???????????????????????????????????????????棬????????????????????????????????????????????????????
??????Java??????淶?У??????????漲?????????????
???????????????????????????????????????????StackOverflowError???? ??????????????????????????????????????OutOfMemory????
????????????????????Щ???????????????????????????????????????????С???????????????????????????????????????????????????????????????????????????????????????????У??????????????????????????????С???????????????????????????????StackOverflowError????????????OutOfMemoryError????????????????£???????OutOfMemory????
?????????????????????????????????????ú????????
???????????????????????洢????????????????????????????????????????д???????????????????????????????????????????????reference????returnAddress???????????????????????????????????????????????????????????????????Java?????????Class?????????????????????????????????????????????????????????????????з????????????????????????????????????????????????????С??
?????????????????????????????????????ú????????
????1???????????
??????????????????????????Slot???С??λ??????????淶?в?????????????Slot???????????С???????????????????????????????????????????仯???????Slot?????????32λ??????????????boolean??byte??char??short??int??float??reference??returnAddresss??reference???????????????returnAddress?????????????????????????????????????????64λ???????????long??double??????????????λ???????????????????????Slot???
??????????????????λ??????t?????????????????Χ???0????????????????Slot??????????32λ??????????????????n?????n??Slot??????64λ???????n?????n???n+1????Slot??
????????????????????????t????????????????????????????б??????????????????????????static???????????????е??0λ??????Slot??????????????????????????????????????п???????????“this”?????????????????????????????????????????????У?????1???????????Slot??????????????????????????????????????????????????????Slot??
??????????????е?Slot????????????????ж?????????????????????????????????壬???????????PC????????????????????????????????????????????????Slot?????????????????á????????????????????????????Щ?????Slot?????????????????????????????
????2?????????
?????????????????????????????????????????????????????????32λ???????????????????1??64????????????????????2??????????????????????????????????????????й????У????и??????????????磺???????????????????????д???????????????????????????
????Java???????????????????“??????????????”???????????“?”????????????????????Java????????????????????Android???????Android?????????????????
???????????????????????????????????????????????????????Щ???????????????????????????????????????????????????????????????????????
????3?????????
?????????????????????????????????????????У??????????и??????????????????????????????????????????ù????е????????Class???????????д????д???????????????????е???????????????????????????????????????????Щ???????????????????????λ??????????????????????????final??static???????????????????????????????ε??????????????????????????????????
????4????????????
?????????????????к?????????????÷?????????????????????????????????????????????????????????????????????????????????????ú???????????????????????????????????????????λ???????????????С??????????????????????б????Щ???????????????????????????????????????????????????????????????PC???????????????????????????к???????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????е?????У????????????????????????????????з??????????????????????????????У?????PC????????????????????????????????
??????????????Native Method Stacks??
????????????????????????????÷?????????????????????????Java?????????????????????????????????????Native??????????
????Java???Java Heap??
????Java Heap??Java????????????????е?????飬????????????????????????????????е????????????鶼???????????檔Java Heap?????????????????????????????????????”GC??”??
????????Java???????漲??Java???????????????????????????У??????????????????ɡ????????????????????????????????????????????OutOfMemory??
????????????Method Area??
????????????????????????????????????洢???????????????????????????????????????????????????????????????????????????”??”???????????????Sun HotSpot??????JRocket??IBMJ9??????в????????????Java??????淶????????????Java??????????????????????Java Heap????????????????棬???????????С??????????????????淶????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Class????г????????汾????Ρ??????????????????????????????????????Class???????????????????????????????????????????????????????????????????????????????????????С?????????????????Class????????????????????????????????Java?????????????????????????????????????????Class????е?????????????????????????????????????????????????μ??????????У???????????????????????????String???intern??????????
????????Java??????淶??漲???????????????????????????????????OutOfMemoryError????
?????????棨Direct Memory??
?????????沢????????????????????????????????????Java??????淶?ж???????????????????????з?????棬??????Java????С??????????????????????????С????????????????????????????????OutOfMemoryError?????????Java1.4??????????NIO????????????????????????????I/O???????????????????з????????棬??????????????з????????棬????????????棬?????????Щ?????????????????????????Java???Native????????????????
??????????
????????????????????????????????????