精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Java虛擬機發展回顧 為跨平臺而生

開發 后端
整個Java體系是基于Java虛擬機構造的,Java虛擬機發展的速度帶動整個Java語言和項目的使用,影響到多數企業級項目的開發效率;本文,和您一起回顧Java虛擬機的發展。

Java虛擬機的起源與構造

當我們說到“Java”這個詞的時候,指的是四個相互關聯的概念:Java語言、Java API、Java Class文件格式、Java虛擬機。整個Java體系是基于Java 虛擬機構造的,正因為如此,才能實現Java的安全性和網絡移動性。Java并非是第一個采用“虛擬機”概念的體系,但卻是第一個得到廣泛運用的虛擬機平臺。 “虛擬”,是一種隔離物理資源與邏輯資源的手段。Java虛擬機的“虛擬”,則是用來隔離物理機器、底層操作系統與Java語言規范實現的手段。

雖然Java是一種面向對象的語言,我們平時大量使用的,是對象間的多態、組合(Composition)、委派(Delegation),但當我們討論虛擬機的時候,我們看見的基本概念卻是“棧(Stack)”和“堆(Heap)”。根據馮諾依曼的“存儲計算”模型,所有的代碼都保存在代碼空間中,隨著程序計數器指針的變化進行程序的執行、跳轉。Java虛擬機中沒有寄存器的概念,方法調用是采用“棧”進行的,這是一種安全、簡潔的方法。

Java虛擬機通過類裝載器支持對類的隔離,這也是Java實現安全性的基礎。每個類都具有自己的命名空間,在具有不同安全級別的沙箱中運行,因此不會產生低安全級別的代碼來越權訪問高級別代碼的機會。類裝載器的出現是Java虛擬機與大部分用C實現的虛擬機的顯著不同之處。

Java虛擬機的另外一個顯著特點就是實現了自動的垃圾收集。在往常,寫程序的時候要牢記對象之間的關聯,在每個程序塊中假若申請了對象空間,就必須在出口釋放掉,方法調用往往同時也就是對象的邊界。而自動垃圾收集帶給開發者的最大好處,就是可以非常方便地從整體上把系統的對象組織成一張對象圖,只需往這張圖中添加對象,維護對象之間的關聯,卻不需要自己做復雜的清掃工作。正是有了這種思維單純的對象圖的支持,OR Mapping(關系數據庫與對象映射)技術在最近得以大行其道,設計模式也更容易被Java群體所接受。

虛擬機的優化

1995年第一代的Java出臺之時,其虛擬機執行是依靠“字節碼解釋器(Byte Code Interceptor)”的,也就是說每條指令都由虛擬機來當場解釋執行,這造成速度令人抓狂地緩慢。更有甚者有人開始總結許多的“速度優化經驗”,比如說:“盡量把所有的代碼都放在較大的方法中執行”與“少用接口”等等,這完全與Java語言的設計目的背道而馳;Java虛擬機經過多年的發展,現在看起來這是可笑的奇談怪論,當時卻是很多程序員津津樂道的經驗之談。無他,Java本身執行太慢了。Java生命的前十分之三就是如此緩慢地渡過的。

于是,Sun的工程師開始拼命想著提高執行速度。JIT靜態編譯器的出現是在1996年十月,Sun放出了第一個編譯器。JIT編譯器在每段代碼執行前進行編譯,編譯的結果為本地靜態機器碼,執行速度有了質的提高。Symantec公司當時憑借其傲人的JIT編譯器,在整個Java界受到熱烈的追捧。在其后的1998年,Java 1.2發布的時候,附帶了JIT編譯器,從此Java的使用者終于可以拋開上面說的那些奇怪的“速度優化經驗”了。

JIT靜態編譯器雖然可以解決一些問題,但是性能仍然和C/C++有很大的差距。對一段程序而言,一名優秀的程序員是如何來改進運行速度的呢?首先,他不會傻到把所有的代碼都來優化,他會觀察、思考到底哪段代碼對整體性能影響最大?然后集中精力來優化這一段代碼。按照經驗,整個程序 10%-20%的代碼,會占據 80%-90%的運行時間。用這種方法,在同樣的時間、付出同樣程度的努力后,這名優秀的程序員使整個程序的性能得到了很大程度的優化。HotSpot引擎,就是模仿人工的這種方法進行優化的。在程序運行的開始,Java代碼仍然解釋執行,但HotSpot引擎開始進行采樣(Profiling)。

根據采樣的結果,決定某段程序是占用較多運行時間的,就認為它是“HotSpot”,它也就是目前程序的瓶頸, 引擎開始啟動一個單獨的線程進行優化。因為不象原始的 JIT編譯器那樣無差別的編譯所有代碼,HotSpot引擎可以集中精力來對HotSpot代碼進行深度優化,這樣這部分代碼執行起來更加迅捷。之前的靜態編譯器只能按照預定的策略進行編譯優化,而HotSpot引擎的優化是基于采樣的結果的,因此這種方法對所有的應用程序都有效。1999年3月27日,Sun放出了第一個HotSpot引擎。在隨后的2000年5月的JDK 1.3中,包含了HotSopt引擎,這也使1.3成了一個具有里程碑意義的發行版本。到這里,Java的十年生命,已經過去了一半。

HotSpot代表的是一種動態編譯的技術。對Java這種大量使用委派、組合等面向對象特性的程序來說,動態編譯比起靜態編譯來有顯著的優勢。比如Method Inlining。方法的調用是一個很耗時的操作,假若可以把方法調用直接內嵌到調用者的代碼中,就可以節省大量的時間, 這被稱為“Method Inlining”。因為涉及到類的重載,靜態優化很難確切知道哪些屬性、方法被重載,因此很難對method進行合并,只好在方法內部進行靜態編譯,假若每個方法都很小,靜態優化能起到的作用也就比較小。而動態編譯因為可以完全隨時掌握類的重載情況,就可以把相關的方法合并進行深度優化。現代的Java程序,特別是在設計模式教育得到普及之后,大量使用類的繼承、委派,形成了很多短小的方法,動態編譯的優勢就更加明顯。

自從出現了HotSpot之后,整個Java界為之一振;此后Java虛擬機的發展可以用飛躍來形容。

最近的五年,就是繼續優化的五年。繼續進行優化的方法有幾條路,一是研究新的采樣算法。因為采樣關系到不同的優化策略,會對整體性能有比較大的影響。二是研究深度優化的方法。三是研究垃圾收集的算法。垃圾收集會帶來程序短暫的停頓,這會帶來負面的用戶體驗。于是,如何提高垃圾收集的效率,減少延遲,出現了五花八門的算法,比如漸進式收集、火車算法等。在多處理器的時候,如何利用多處理器進行并行收集也是研究的一個熱點。這方面,BEA的JRocket走在了前面。

現實生活中的虛擬機

最后,讓我們來盤點一下目前市面上可見的各個虛擬機。

首先要提到的,毫無疑問是Sun的虛擬機。作為大眾心目中的“官方實現”,Sun擁有最大的用戶群,并且擁有“兼容基準”的地位,其他虛擬機都必須要考慮和Sun虛擬機的兼容性問題。比如 JRocket就會在某些特殊情況下表現出和Sun不同的特性,可能對程序運行有影響。不過Sun也的確沒有讓廣大用戶失望,雖然在早期性能比不上Symantec,后來在1.2 的時候性能又被IBM超越,但Sun一直在努力革新,特別是 1.4.2之后,性能有了長足的進步。雖然JDK 1.5的虛擬機在性能上沒有什么提高,但是增強了穩定性,據說修改了8000處bug,真是讓人汗流不止。原來我們在1.4.2下面一直在享受這么多bug啊。

其次是老牌勁旅IBM。IBM的JDK在1.3的時代創下了最好的性能記錄,從此樹立了高端形象。特別是在其WebSphere產品中得到了很好的評價。其JDK也是最早支持64bit的JDK之一。到了現在,IBM JDK在高端仍然是和BEA可以一拼的。

然后是后起之秀,BEA的JRocket。說到BEA突然在JVM領域一夜之間異軍突起,多少讓人有些瞠目,不過它采取的戰略特別簡單:自己沒有,索性花錢買了在此領域深有研究的JRocket,在前面加上BEA的標志就可以了。JRocket瞄準高端服務器市場,在多處理器環境下有不俗的表現。

除此之外,還有幾個開放源代碼的JVM值得一提。首先就是大名鼎鼎的JikesRVM。說起其大名,大多數人都知道Jikes編譯器是 IBM開發的,效率比同等的javac編譯器高得多,很多開發者都使用Jikes編譯器來取代javac。而JikesRVM則是IBM開源出來的一整套虛擬機技術,包含了JIT,GC的完整實現,在其網站上也有眾多的論文,實在是想要深入研究JVM者的絕佳資源(http://jikesrvm.sourceforge.net)。

Kaffe是一個老牌的JVM,不過現在已經很少聽到了。作者撰寫此文時,www.kaffe.org網站已經沒有響應,也不知道現在的情況如何了。

GNU則有兩個計劃:GCJ和GNU classpath。GNU classpath是一個底層實現,而GCJ是支持java的預編譯器。

結束語

時光流轉,轟轟烈烈的Java虛擬機性能爭論仿佛還在耳邊回響,現在新的爭論卻已經是“Java的性能是否已經超越C/C++”。

Joakim Dahlstedt 是 JRockit 的主要架構設計師之一,他堅持認為,Java絕不是一種速度慢,效率低的語言,JVM 是一個關鍵的組件,確保了系統的部署與運行和開發一樣快速、輕松。特別是在目前開發趨勢是采用大量預制的框架時,動態編譯有可能比C/C++這樣的靜態優化獲得更好的性能。

 

【編輯推薦】

  1. 如何分析Java虛擬機死鎖
  2. Java虛擬機的類的裝載
  3. 共同學習Java虛擬機
  4. Java虛擬機(JVM)中的內存設置詳解
  5. 認識Java虛擬機及其性能
責任編輯:佚名 來源: 《程序員》
相關推薦

2015-03-12 14:06:08

Java虛擬機平臺原理

2009-08-16 21:49:54

2010-11-19 16:53:14

桌面虛擬化虛擬機

2012-05-18 10:22:23

2009-01-13 17:02:05

RIAFlashSilverlight

2010-07-26 09:02:38

2013-07-17 09:32:58

2010-11-26 11:15:30

2010-03-10 08:59:25

Linux添加硬盤

2022-04-08 18:05:59

微軟Arm

2010-09-17 15:12:57

JVMJava虛擬機

2010-05-07 09:59:00

虛擬化

2020-06-03 19:07:49

Java虛擬機JVM

2012-04-28 12:03:55

JavaJVMJava虛擬機

2012-06-14 10:17:12

虛擬機

2020-09-29 14:56:19

虛擬機技術IT

2020-02-24 08:00:20

云的計算解決方案虛擬機

2016-08-31 14:59:39

軟件虛擬化

2011-12-28 13:24:47

JavaJVM

2020-05-08 16:55:48

Java虛擬機JVM
點贊
收藏

51CTO技術棧公眾號

日韩欧美国产成人精品免费| 伊人国产在线视频| 欧美xxx.com| 麻豆一区二区在线| 欧美高清一级大片| 亚洲永久精品ww.7491进入| 亚洲伦理网站| 精品福利一区二区| 中文字幕中文字幕在线中心一区| 亚洲第一免费视频| 免费成人av在线| 久久露脸国产精品| 99re6热在线精品视频| 欧美一级色片| 日韩视频国产视频| 在线免费视频a| av免费不卡国产观看| 国产精品久久久久久久久久久免费看| 国产精品一区二区在线观看| 亚洲天堂一二三| 日韩一区二区免费看| 久久夜色精品国产欧美乱| 成人乱码一区二区三区av| 在线精品视频一区| 制服丝袜在线91| 精品少妇无遮挡毛片| av日韩国产| 亚洲一区二区三区四区在线免费观看| 亚洲精品视频一二三| 奇米影视888狠狠狠777不卡| 高清av一区二区| 91精品中国老女人| 中文字幕日韩三级| 视频一区在线视频| 欧美诱惑福利视频| 日韩欧美亚洲一区二区三区| 欧美日韩亚洲一区| 欧美成aaa人片免费看| 91视频最新网址| 欧美少妇xxxx| 亚洲视频日韩精品| 日韩在线免费观看av| 色天下一区二区三区| 精品久久久久久无| 无码人妻丰满熟妇区毛片蜜桃精品| 亚洲资源在线| 欧美精选一区二区| 中文字幕66页| 高清不卡一区| 91精品福利在线一区二区三区 | 欧美色图在线观看| 99视频精品免费| av亚洲一区二区三区| 一本一道综合狠狠老| 波多野结衣家庭教师在线播放| 国内高清免费在线视频| 亚洲成人精品一区二区| 91动漫在线看| 三级在线观看视频| 黑人巨大精品欧美一区免费视频 | 视频一区视频二区在线观看| 欧洲亚洲免费视频| 国产真人无遮挡作爱免费视频| 丝瓜av网站精品一区二区| 日韩美女免费视频| 中文区中文字幕免费看| 久久97超碰国产精品超碰| 91精品中文在线| 国模人体一区二区| 97久久超碰国产精品电影| 久久久久久久久一区| 福利小视频在线观看| 国产精品超碰97尤物18| 欧美性猛交内射兽交老熟妇| 高潮在线视频| 在线视频一区二区三区| 欧美激情第一区| 风间由美中文字幕在线看视频国产欧美| 欧美精品一区二区三区在线| 免费看黄色aaaaaa 片| 国产乱码精品一区二区亚洲| 日韩一区二区三区xxxx| 免费人成在线观看| 米奇777在线欧美播放| 国产精品中文字幕在线| 性一交一乱一精一晶| www国产亚洲精品久久麻豆| 亚洲精品二区| 欧美xxxx免费虐| 日韩欧美一区二区三区久久| 爱爱爱爱免费视频| 久久资源综合| 深夜成人在线观看| 日本最新中文字幕| 美女免费视频一区| 国内一区二区三区在线视频| 在线看的av网站| 亚洲午夜羞羞片| xxx国产在线观看| 精品视频自拍| 久久视频国产精品免费视频在线| 日韩精品一区三区| 久久av资源网| 欧美亚州在线观看| 尤物视频在线看| 欧美婷婷六月丁香综合色| 91传媒理伦片在线观看| 日韩一区二区三区免费播放| 97婷婷涩涩精品一区| 伊人色综合久久久| 26uuu国产在线精品一区二区| 亚洲一区影院| 在线天堂资源| 精品国产污污免费网站入口 | 亚洲成人一区二区| av中文字幕网址| 国产成人手机高清在线观看网站| 久久99亚洲精品| 国产精品亚洲lv粉色| 久久久久久久久免费| 欧美又粗又长又爽做受| 欧美在线一级| 亚洲香蕉成视频在线观看| 日韩免费av片| 国产成人精品一区二| 亚洲午夜在线观看| 欧美韩国亚洲| 亚洲欧洲自拍偷拍| 久久不卡免费视频| a级精品国产片在线观看| 91大学生片黄在线观看| 欧美黄色成人| 色午夜这里只有精品| 中文字幕手机在线视频| 久久色在线观看| 成人观看免费完整观看| 日本一道高清一区二区三区| 久久全球大尺度高清视频| 国产福利第一视频| 亚洲青青青在线视频| 日本黄色福利视频| 天天操综合网| 91免费国产网站| 国产美女在线观看| 欧美一区二区三区四区五区 | 国产精品自拍偷拍视频| av大片在线看| 欧美日韩国产综合一区二区| 少妇的滋味中文字幕bd| 日本aⅴ亚洲精品中文乱码| 日本精品一区二区| 91天天综合| 色婷婷**av毛片一区| 怡红院成永久免费人全部视频| 欧美激情在线观看视频免费| 色综合天天色综合| 日韩啪啪电影网| 亚洲va码欧洲m码| 特级毛片在线| 日韩精品免费在线视频观看| 日韩不卡在线播放| 国产女人aaa级久久久级| 九九视频精品在线观看| 国产精品88久久久久久| 成人中心免费视频| 爱看av在线入口| 亚洲区免费影片| 一级日韩一级欧美| 亚洲欧美偷拍卡通变态| 污污污www精品国产网站| 六月天综合网| 一区二区免费电影| 成人资源在线| 国产成人精品电影| 久久99精品久久久久久野外| 日韩美女视频一区二区在线观看| 精品无码久久久久久久久| 91免费观看在线| 日本黄色福利视频| 日韩视频一区| 亚洲精品免费在线看| 中文一区二区三区四区| 欧洲亚洲女同hd| www免费视频观看在线| 亚洲国产91色在线| 中文字幕视频二区| 亚洲国产精品久久人人爱蜜臀 | 精品国产91| 亚洲精品免费一区二区三区| 热色播在线视频| 久久久久www| 免费黄网站在线观看| 8x福利精品第一导航| 狠狠躁夜夜躁人人爽天天高潮| 国产欧美一区二区在线| 佐佐木明希电影| 日本中文在线一区| 妞干网在线视频观看| 日韩精品首页| 久久久久一区二区三区| 国产精品1区| 国产精品88a∨| 大香伊人久久| www.日韩不卡电影av| 日本一级在线观看| 日韩一二三区视频| 一区二区三区麻豆| 姬川优奈aav一区二区| 永久看片925tv| 国产欧美日产一区| 成人免费无码大片a毛片| 国产真实乱子伦精品视频| 无遮挡又爽又刺激的视频 | 欧美激情网友自拍| 92国产在线视频| 精品偷拍一区二区三区在线看| 国产视频一区二区三区四区五区| 色婷婷av一区二区三区之一色屋| 久久精品免费在线| 亚洲免费av在线| 亚洲熟女少妇一区二区| 久久精品一区蜜桃臀影院| 大乳护士喂奶hd| 成人网页在线观看| 手机看片国产精品| 九九视频精品免费| 手机av在线网| 九九热在线视频观看这里只有精品| 成人小视频在线看| 亚洲综合欧美| 精品国产一二三四区| 好吊一区二区三区| 国产一区 在线播放| 欧美日韩 国产精品| 自拍偷拍亚洲色图欧美| 日韩免费视频| 亚洲精品中字| 久久精品高清| 中文字幕一区二区三区5566| 97视频热人人精品免费| 亚洲精品在线免费看| 日本一区二区三区视频| 日韩精品电影网站| 欧美精选一区二区三区| 日韩福利影院| 91视频综合| 97超碰人人爱| 欧美涩涩网站| 蜜臀av无码一区二区三区| 999亚洲国产精| 日本精品一区在线观看| 久久久久久自在自线| 污污的网站18| 蜜芽一区二区三区| 在线观看免费不卡av| 国产又黄又大久久| 国产精品二区视频| 成人免费不卡视频| 人妻熟女aⅴ一区二区三区汇编| 91麻豆精品在线观看| 亚洲精品成人无码| 中文字幕中文在线不卡住| 日本在线一级片| 亚洲风情在线资源站| 你懂的国产在线| 在线观看视频一区二区欧美日韩| 中文字幕视频二区| 欧美va亚洲va国产综合| 偷拍自拍在线| 中文字幕v亚洲ⅴv天堂| 巨大荫蒂视频欧美另类大| 欧美激情亚洲精品| 浪潮色综合久久天堂| 国产综合视频在线观看| 一区二区三区视频播放| 久久精品日韩精品| 日本不卡免费一区| h无码动漫在线观看| 久久不射中文字幕| 性久久久久久久久久久久久久| av在线不卡免费看| 毛片久久久久久| 亚洲国产另类精品专区| 国产九色91回来了| 精品少妇一区二区三区| 免费av在线电影| 欧美精品午夜视频| 亚洲成a人片| 91精品国自产在线观看| 亚洲区小说区图片区qvod| 中文字幕精品—区二区日日骚| 91久久午夜| 亚洲综合欧美在线| 99久久精品免费看国产| 亚洲欧美日韩第一页| 亚洲国产wwwccc36天堂| 中文在线免费观看| 精品国产凹凸成av人网站| 成人p站proumb入口| 久久久久久成人| 9.1麻豆精品| 欧美一区二区三区精美影视| 欧美久久综合| 亚洲欧美在线精品| 91香蕉视频黄| 久久久久无码精品国产| 欧美日韩一区久久| 天堂网www中文在线| 久久99青青精品免费观看| 粉嫩91精品久久久久久久99蜜桃| 国产一区二区三区av在线| 先锋资源久久| 日本在线观看免费视频| 91在线视频免费观看| 久久久久久久蜜桃| 4438亚洲最大| 91成人高清| 日本精品免费观看| 国产精品超碰| 亚洲国产一二三精品无码| 免费的成人av| 国产黄色片在线| 日本韩国欧美一区二区三区| 少妇av在线播放| 欧美黑人巨大xxx极品| 成人久久精品| 亚洲一区二区在线看| 日韩精品亚洲专区| 久久久久久九九九九九| 岛国精品视频在线播放| 人妻无码中文字幕免费视频蜜桃| 欧美xxxx综合视频| 欧美精品三级在线| 黄色一级大片免费| 国产一区激情在线| 色欲一区二区三区精品a片| 欧美久久一二三四区| 国精产品一区| 91免费欧美精品| 重囗味另类老妇506070| 亚洲一区二区偷拍| 亚洲男人的天堂av| av中文字幕免费在线观看| 美女福利视频一区| 综合伊人久久| 国内精品在线观看视频| 91在线码无精品| 国产成人在线免费视频| 精品在线观看国产| 一区二区电影免费观看| 欧美激情论坛| 日本不卡一区二区三区高清视频| 国产传媒国产传媒| 欧美人伦禁忌dvd放荡欲情| 免费黄色电影在线观看| 91免费看国产| 在线成人国产| 黑人巨大精品欧美| 欧美在线不卡一区| 麻豆视频在线免费观看| **亚洲第一综合导航网站| 国产精品s色| v天堂中文在线| 欧美亚洲尤物久久| 男女啪啪在线观看| 国产精品免费观看高清| 亚洲一区激情| 欧美老女人性生活视频| 88在线观看91蜜桃国自产| 啪啪免费视频一区| 久久99精品久久久久久秒播放器| 久久久久久亚洲精品杨幂换脸| 国产视频123区| 欧美成人a视频| 欧美xxx视频| 97精品国产97久久久久久粉红| 成人免费va视频| 自拍偷拍色综合| 久久99久久99精品免观看粉嫩| 网友自拍区视频精品| 高潮一区二区三区| 亚洲成人你懂的| av资源网站在线观看| www.一区二区三区| 久久最新视频| 日本老熟俱乐部h0930| 亚洲精选中文字幕| 国产精品高清一区二区| 欧美色图另类小说| 亚洲情趣在线观看| 你懂的在线观看视频网站| 成人在线视频网| 国产日韩一区| 欧美精品久久久久久久久46p| 亚洲精品国产综合区久久久久久久 | 久久av超碰| 特种兵之深入敌后| 欧洲生活片亚洲生活在线观看| 青青草视频在线免费直播| 日韩福利视频|