一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java JVM虛擬機運行機制

Java JVM虛擬機運行機制

2020-09-03 13:44Java之家 Java教程

JVM(Java虛擬機)一種用于計算設備的規范,可用不同的方式(軟件或硬件)加以實現。接下來通過本文給大家簡單介紹Java JVM虛擬機運行機制,感興趣的朋友一起看看吧

一:JVM基礎概念

         JVM(Java虛擬機)一種用于計算設備的規范,可用不同的方式(軟件或硬件)加以實現。編譯虛擬機的指令集與編譯微處理器的指令集非常類似。Java虛擬機包括一套字節碼指令集、一組寄存器、一個棧、一個垃圾回收堆和一個存儲方法域。

         Java虛擬機(JVM)是可運行Java代碼的假想計算機。只要根據JVM規格描述將解釋器移植到特定的計算機上,就能保證經過編譯的任何Java代碼能夠在該系統上運行。

下面看下Jvm的體系結構圖:

Java JVM虛擬機運行機制

二:解釋型語言和編譯型語言的聯系與區別。

編譯型語言是通過編譯器將程序編譯成目標機器所能識別的機器碼,而解釋型語言不需要編譯過程,由該語言的解釋器讀取腳本,按照語法規則進行解釋,然后調用解釋器內建的命令(或者庫函數)。例如,C語言的printf()函數經過靜態編譯后,printf()所需的所以代碼都以機器碼的形式寫入可執行文件中,shell在執行程序時,在指定路徑搜索該文件,然后加載器(Loader)加載該程序的ELF文件到內存中,跳轉到程序入口,將控制權交由該程序。

動態編譯的情況有些不同。由于printf()是很常用的函數,系統將常用函數集中起來做成庫,當我寫一個Myprintf()函數時調用printf() 時,動態編譯后形成的ELF文件不會包含printf()相關的代碼,但是會有些信息告訴系統:“我的程序將會調用printf(),因此我需要printf()的地址”。加載ELF文件后,首先運行動態連接器(ldd),ldd知道程序依賴的動態庫,系統中如果沒有加載該動態庫,就會通知系統加載該庫,并把庫函數的入口地址綁定到程序需要的地方,然后跳轉到程序入口地址,開始運行程序。這里,我們所寫的程序一經編譯,就變成特定機器的機器碼和一些附屬信息(符號表,地址,變量值等),然后通過系統加載運行機制就變成“動態程序”——進程。

解釋型語言的執行過程離不開解釋器,python,perl,ruby等等。所以腳本的第一行一般是#/usr/bin/×××。×××代表了各語言相應的解釋器。腳本一般由表達式(expression)和Block of expressions組成,解釋器首先要做的就是分析并理解表達式結構,形成“執行序列”。這個“執行序列”是中立的,不針對任何native machine,所以“可移植性”高。這里不用“字節碼”代替“執行序列”是考慮到在jvm中有字節碼的概念,他們之間有顯著的不同。決定執行序列是解釋器最主要的作用。假設,python輸出的函數為python_print(),那么python解釋器在“解釋”腳本時遇到這個表達式就將調用系統的print()函數執行輸出操作。你也可以把腳本理解成高級配置文件,這個文件指導python解釋器如何運行,解釋器內部已經制訂了“如何”運行的若干規則。

三:Java的執行過程

JVM執行Java程序要比上述兩個復雜,因為它已經被稱作machine了。下圖是JVM的結構框圖。主要包含:垃圾回收器,類加載子系統,執行引擎,運行時數據區等。

以上所述是小編給大家介紹的Java JVM虛擬機運行機制,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 精品久久久久久久高清 | 国产人妖xxxxx免费看 | 男女姓交大视频免费观看 | 国产精品美女久久久久网站 | 欧美日韩一区视频 | 亚洲高清在线视频 | 经典WC女厕所里TV | 69老司机亚洲精品一区 | 毛片网在线观看 | 久久内在线视频精品mp4 | 美国女孩毛片 | 国产成人免费a在线资源 | 免费在线电视 | 高清在线免费 | 日本大乳护士的引诱图片 | 色倩网站 | 日本国产一区二区三区 | 精灵之森高清在线 | 91在线一区二区三区 | 天天干夜夜噜 | 亚洲午夜性春猛交xxxx | 毛片在线免费视频 | melody中文字幕 | freese×video性欧美丝袜 | 视频网站入口在线看 | 亚洲伦理影院 | 性印度freehd | 好大好深好舒服 | 很黄的网站在线观看 | 日本花季传媒2020旧版安卓 | 国产成人综合亚洲一区 | 波多野结衣之双方调教在线观看 | 免费xxxxx大片在线观看影视 | 操大姨子逼 | 91热国内精品永久免费观看 | 精品国产91久久久久久久a | 久久99国产综合精品AV蜜桃 | 男人狂躁女人下面的视频免费 | 国产精品中文字幕 | 国产综合社区 | 操大爷影院|