精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

国产丝袜在线视频| 国产免费一区二区三区网站免费| av毛片在线| 国产成人在线色| 97精品国产97久久久久久春色| 亚洲国产果冻传媒av在线观看| 色香欲www7777综合网| 亚洲人成小说网站色在线| www.一区二区三区| 天码人妻一区二区三区在线看| 天天色天天射综合网| 亚洲精品电影网站| 欧美丝袜在线观看| 欧美激情20| 椎名由奈av一区二区三区| 精品国产一区二区三区四区精华 | 欧美日韩色图| 日韩小视频在线观看专区| 国产主播在线看| 日韩专区在线| 久久夜色精品一区| 翡翠波斯猫1977年美国| 亚洲午夜激情视频| 午夜在线精品偷拍| 久久久免费观看| 天天色天天综合| 亚洲美女15p| 亚洲精品在线免费播放| 亚洲免费黄色录像| 欧美中文字幕精在线不卡| 亚洲va天堂va国产va久| 亚洲av首页在线| 国产鲁鲁视频在线观看免费| av一区二区三区在线| 亚洲一区二区三区乱码aⅴ蜜桃女| 337p粉嫩色噜噜噜大肥臀| 在线国产日韩| 欧美激情网站在线观看| 91视频最新网址| sdde在线播放一区二区| 亚洲欧美日韩精品久久亚洲区| 成年人小视频在线观看| 精品国产伦一区二区三区观看说明 | 666av成人影院在线观看| 亚洲成av人综合在线观看| 97超碰免费观看| 天堂中文а√在线| 国产精品毛片久久久久久久| 日韩hmxxxx| 国产高清免费在线播放| 国产夜色精品一区二区av| 国产一区二区三区四区五区在线| 午夜免费福利视频| 国产精品白丝av| 亚洲在线视频福利| 国产a级免费视频| 韩国视频一区二区| 91美女福利视频高清| 91丨porny丨在线中文 | 中国老熟女重囗味hdxx| 清纯唯美激情亚洲| 日韩欧美精品三级| 亚洲精品乱码久久久久久蜜桃图片| 欧美a在线观看| 欧美大片拔萝卜| 性猛交╳xxx乱大交| 久久亚洲黄色| 亚洲精品美女在线| 蜜桃av免费看| 日本高清免费电影一区| 久久精品国产欧美激情| 无码黑人精品一区二区| 国内久久精品| 欧美有码在线观看| 在线观看你懂的网站| 精品一区二区在线免费观看| 亚洲自拍偷拍福利| 午夜激情小视频| 久久久久久久免费视频了| 亚洲精品无人区| √天堂8在线网| 天天综合色天天综合色h| 91国视频在线| 九九久久国产| 精品免费99久久| 短视频在线观看| 日韩专区精品| 欧美激情综合色| 成人一二三四区| 国产一区二区在线观看免费| 国产一区免费在线观看| 福利成人在线观看| 亚洲一线二线三线视频| 成人一级片网站| 亚洲综合资源| 日韩福利在线播放| 国产白丝一区二区三区| 黄页网站一区| 国产精品一区久久久| 亚洲精品视频专区| 国产欧美久久久精品影院| 成年在线观看视频| 欧美日韩免费看片| 精品少妇一区二区三区日产乱码 | 日韩系列在线| 久久精品91久久香蕉加勒比| 成人毛片18女人毛片| 加勒比av一区二区| 免费成人深夜夜行视频| 在线看女人毛片| 在线视频亚洲一区| 五月天丁香社区| 欧美呦呦网站| 国产91精品青草社区| 国产毛片在线视频| 国产欧美日韩三级| 少妇无码av无码专区在线观看 | 国产在线精品一区| 精精国产xxxx视频在线| 91久久精品国产91性色tv| 丰满少妇xbxb毛片日本| 99热在线成人| 国产精品xxx视频| 日韩一级免费视频| 亚洲欧美国产三级| 一区二区xxx| 国产a久久精品一区二区三区 | 日韩精品视频免费专区在线播放| 久久久久久久久毛片| 美国三级日本三级久久99| 看高清中日韩色视频| 蜜乳av一区| 欧美一级免费大片| 黄色录像免费观看| 久久精品国产色蜜蜜麻豆| 日韩成人av电影在线| 亚洲wwww| 精品一区精品二区| 久久久久久91亚洲精品中文字幕| a级高清视频欧美日韩| 91动漫在线看| 亚洲午夜精品| 欧美成人免费在线视频| 99国产精品欲| 亚洲欧美日韩在线| 黄色片免费网址| 91精品国产麻豆国产在线观看| 国产精品视频大全| 91亚洲精选| 欧美日韩一级片在线观看| 男女做爰猛烈刺激| 日韩av一区二区三区| 台湾成人av| 国产综合色激情| 久久久精品美女| 国产露脸国语对白在线| 亚洲人吸女人奶水| 亚洲熟女乱综合一区二区| 午夜精品免费| 国产美女精品在线观看| 少女频道在线观看免费播放电视剧| 欧美一区二区在线不卡| 久久久精品视频在线 | 在哪里可以看毛片| 日本不卡一二三区黄网| 亚洲综合激情五月| caoporn成人免费视频在线| 97在线观看视频国产| 四虎精品在永久在线观看| 色综合网色综合| 91网站免费视频| 久久av资源网| 国产在线观看欧美| 狼人天天伊人久久| 国产精品电影一区| gogo在线高清视频| 亚洲国产精品免费| 国产精品第6页| 亚洲男人的天堂在线观看| 国产一线在线观看| 日韩高清不卡一区| 日本中文字幕一级片| 日韩伦理一区二区三区| 国产精品欧美一区二区三区奶水| 成人午夜在线影视| 日韩精品在线观看网站| 伊人影院中文字幕| 天天综合网天天综合色| 一区二区三区在线播放视频| 国产成人午夜电影网| 激情六月丁香婷婷| 午夜精品久久久久99热蜜桃导演 | 亚洲AV第二区国产精品| 欧美午夜精品久久久久久孕妇| avtt天堂在线| 久久网站最新地址| 亚洲制服中文字幕| 校园激情久久| 欧美人与动牲交xxxxbbbb| 无码少妇一区二区三区| 91亚洲一区精品| 黑人巨大精品| 欧美日本精品在线| 国产精品视频一区二区久久| 日韩欧美三级在线| 中文字幕在线播出| 欧美日韩国产综合视频在线观看中文| 精品女人久久久| 26uuu国产日韩综合| 欧美高清精品一区二区| 日韩激情在线观看| 免费在线观看视频a| 天天做天天爱天天综合网| 久久久免费看| 国产三级精品三级在线观看国产| 国产精品一区二区三区久久| 偷拍自拍在线看| 精品中文字幕在线观看| 日韩子在线观看| 亚洲一区第一页| 少妇av一区二区| 日韩一区二区免费在线电影| 中文字幕在线播出| 在线视频国内一区二区| 亚洲综合久久网| 性做久久久久久免费观看| 欧美三级 欧美一级| 国产精品久线在线观看| 欧美成人国产精品一区二区| 91在线视频网址| 亚洲欧美高清在线| 国产风韵犹存在线视精品| www.国产福利| 久久精品国产免费看久久精品| 成人性生生活性生交12| 天堂va蜜桃一区二区三区漫画版 | 欧美黑人精品一区二区不卡| 国产精品久久久久久久第一福利 | 欧美一区二区三区高清视频| 日韩高清在线播放| 精品国产不卡| 手机成人在线| 久久亚洲成人| 一区视频二区视频| 色婷婷一区二区三区| 香蕉久久夜色| 99久久亚洲精品蜜臀| 在线一区日本视频| 亚洲成人最新网站| 法国空姐在线观看免费| 午夜国产精品视频| 欧洲精品在线播放| 99亚洲视频| 免费黄色福利视频| 久久人人97超碰国产公开结果| 欧美牲交a欧美牲交aⅴ免费真| 日韩国产在线观看| 在线观看免费视频高清游戏推荐| 激情综合网最新| 久久久久久久久久毛片| 高清日韩电视剧大全免费| 欧产日产国产精品98| 久久影院视频免费| 99在线视频免费| 亚洲四区在线观看| 日本熟妇毛耸耸xxxxxx| 欧美视频裸体精品| 中文字幕+乱码+中文字幕明步| 欧美日韩国产一二三| 精品久久久久久亚洲综合网站| 日韩女优毛片在线| 色就是色亚洲色图| 自拍亚洲一区欧美另类| a级毛片免费观看在线| 久久免费视频观看| 日韩电影av| 成人免费大片黄在线播放| 午夜电影一区| 欧美激情第六页| 婷婷亚洲综合| 男人插女人视频在线观看| 久久黄色影院| 涩多多在线观看| 2023国产精品自拍| 大地资源高清在线视频观看| 亚洲不卡一区二区三区| 中国老头性行为xxxx| 欧美大黄免费观看| 国产精品久久久久久久龚玥菲| 久久久国产91| 欧美18—19sex性hd| 91免费福利视频| 天海翼精品一区二区三区| 一区二区不卡在线| 99热精品在线观看| 久久久久xxxx| 久久噜噜亚洲综合| 强行糟蹋人妻hd中文| 欧美在线播放高清精品| 国产成人无码www免费视频播放| 永久免费精品影视网站| 成年人视频免费在线播放| 国产精品一区二区久久精品 | 精品国产欧美一区二区| 高清毛片在线看| 91国自产精品中文字幕亚洲| 国产精品一区三区在线观看| 欧美色图亚洲自拍| 好看不卡的中文字幕| 在线观看岛国av| 91美女精品福利| www.av视频在线观看| 欧美日韩精品系列| 青青草在线视频免费观看| 欧美大片欧美激情性色a∨久久| 久久爱.com| 欧美一区亚洲二区| 国产一区白浆| av免费观看不卡| 亚洲三级理论片| 伊人网免费视频| 国产亚洲日本欧美韩国| а√在线中文在线新版| av色综合网| 亚洲色图网站| 亚洲欧美aaa| 日本一区二区三区高清不卡 | 欧美日韩激情在线| 国产尤物视频在线| 欧美亚洲国产精品| 国产劲爆久久| 国内少妇毛片视频| 国产精品99久久久久久似苏梦涵| 亚洲精品国产精品乱码在线观看| 欧美在线看片a免费观看| 视频午夜在线| 91a在线视频| 韩国女主播一区二区三区| 91成人综合网| 国产盗摄女厕一区二区三区| 91嫩草丨国产丨精品| 欧美日本一区二区三区四区| 国产视频在线看| 国产精品对白刺激| 超碰成人久久| 久久国产激情视频| 国产精品久久久久久妇女6080| 中文字幕av在线免费观看| 最好看的2019年中文视频 | 99国精产品一二二线| 欧美精品黄色| 亚洲一二三四五| 亚洲成a人片在线不卡一二三区| 日本人妻熟妇久久久久久| 98视频在线噜噜噜国产| 亚洲最好看的视频| 爱情岛论坛成人| 国产精品久久久久一区| 国产精品视频无码| 九九九久久国产免费| 国产毛片久久久| 女人天堂av手机在线| 久久久青草青青国产亚洲免观| 欧美另类高清videos的特点| 中文字幕综合在线| 国产日韩一区二区三免费高清| 真人做人试看60分钟免费| 成人免费高清在线| 国产午夜精品久久久久| 日韩亚洲第一页| 亚洲啊v在线免费视频| 777精品久无码人妻蜜桃| 久久精品无码一区二区三区| 一级全黄裸体免费视频| 欧美刺激性大交免费视频| 欧美电影免费网站| 亚洲老女人av| 一区二区三区国产精品| 无码国产精品高潮久久99| 国产精品免费视频久久久| 综合激情视频| 熟妇人妻久久中文字幕| 在线观看一区日韩| 欧美6一10sex性hd| 日本不卡高清视频一区| 国产一区 二区 三区一级| 国产精品人人人人| 欧美成人精品一区二区三区| 欧美日韩一区二区三区在线电影 | 国产美女av一区二区三区| 午夜影院在线看| xvideos国产精品| 日韩深夜影院| 熟妇女人妻丰满少妇中文字幕| 欧美色欧美亚洲高清在线视频| 国产人妻精品一区二区三区不卡| 粉嫩av一区二区三区| 免费黄色网址在线| 欧美裸身视频免费观看| av在线不卡顿|