您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關JVM體系結構目的和原理是什么,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
JVM體系結構由五部分組成,分別是寄存器、棧、廢區收集堆、存儲區和指令集,這五部分是Java虛擬機的邏輯成份,不依賴任何實現技術或組織方式,但它們的功能必須在真實機器上以某種方式實現。
JVM體系結構目的和原理
Java的設計目的是應用于當前使用日益廣泛、影響日益擴大的互連網絡。這是一個異構平臺環境,可能存在多種不機型,如Intel公司的x86系列,Apple/IBM/Motorola公司的PowerPC機等等。每一種機型都有其特定的中央處理機(CPU)芯片,各芯片的處理過程是不同的。因而通用軟件通常需要為每一種類型的機器特別編寫版本,以保證正確運行。為了克服這一困難,實現語言的通用性和易移植性,Java的設計者采取的方法是選擇一種機器作為編譯的目標機,再將編譯結果在其它機型上解釋執行。但選中的目標機并非上述任何一種實用機型,而是一個假設的處理機平臺,稱為Java虛擬機JVM(JavaVirtualMachine)。
那么,什么是Java虛擬機呢?
我們可以把它定義為:運行編譯生成的Java目標代碼(即.class類文件)的計算機的實現。JVM體系結構實際上是建立在實際處理機基礎上的假想計算機。這一假想機可以通過軟件仿真實現,也可以通過硬件實現。鑒于目前大多數Java虛擬機還是用軟件方法實現的,我們這里介紹的內容也多基于軟件實現。
Java編譯器產生的字節碼由JVM指令構成,而JVM是虛設的,不接近于任何一種實用機型,這樣,一方面編譯結果具有平臺中立性,不同機型的解釋器都可以將字節碼文件轉換為本機型CPU芯片的適宜機器碼來執行。對JVM這一層次而言,操作系統和硬件層都是透明的,用戶編寫的Java程序,可以在任何平臺上運行而無需修改。另一方面,編譯生成的字節碼接近源生碼(nativecode),可以在任何硬件平臺上以較高速度解釋運行,實現較高的效率。這樣,Java通過虛擬機JVM來試圖達到分布式系統的兩個相抵觸的重要特性:易移植性和高效性之間的平衡和協調。
接著,我們進一步了解一下JVM體系結構,包括JVM的指令集、操作碼和操作數語法以及取值范圍等。
關于JVM體系結構目的和原理是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。