国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

java java虛擬機(jī)是用什么語言編寫的?它的原理誰能通俗的講出來嗎?

java虛擬機(jī)是用什么語言編寫的?它的原理誰能通俗的講出來嗎?Java虛擬機(jī)的功能是執(zhí)行Java字節(jié)碼,其編碼實(shí)現(xiàn)是一個(gè)死循環(huán)。每個(gè)循環(huán)都是獲取字節(jié)碼并執(zhí)行字節(jié)碼的過程,因此與其他程序沒有本質(zhì)區(qū)別。主

java虛擬機(jī)是用什么語言編寫的?它的原理誰能通俗的講出來嗎?

Java虛擬機(jī)的功能是執(zhí)行Java字節(jié)碼,其編碼實(shí)現(xiàn)是一個(gè)死循環(huán)。每個(gè)循環(huán)都是獲取字節(jié)碼并執(zhí)行字節(jié)碼的過程,因此與其他程序沒有本質(zhì)區(qū)別。主流的JavaVM大多是用C語言實(shí)現(xiàn)的,然后用匯編語言輔助實(shí)現(xiàn),用Java實(shí)現(xiàn)JavaVM的情況有一些,但不多。

下面是使用C語言在智能設(shè)備中實(shí)現(xiàn)虛擬機(jī)的一個(gè)片段。

此代碼是短加法字節(jié)碼的實(shí)現(xiàn)。

這段代碼只是獲取字節(jié)碼并執(zhí)行它。你認(rèn)為JavaVM就是這樣嗎。

為了優(yōu)化虛擬機(jī)的效率,很多人選擇用匯編的方式重寫執(zhí)行頻率高的代碼。

小結(jié)是C語言實(shí)現(xiàn)的許多,將與匯編結(jié)合起來作為輔助工具。有其他語言,但不是主流。

怎么啟動(dòng)JAVA里的JVM?

方法如下:

1。虛擬機(jī)的啟動(dòng)入口位于share/tools/launcher/Java的main中。C.

2。配置JVM裝載環(huán)境。

3. 解析虛擬機(jī)參數(shù)。

4. 設(shè)置線程堆棧大小。

5. 執(zhí)行Java main。

如何配置JVM加載環(huán)境:1。Java代碼執(zhí)行需要一個(gè)JVM環(huán)境。JVM環(huán)境的創(chuàng)建包括兩部分:第一部分是創(chuàng)建JVM環(huán)境,第二部分是創(chuàng)建JVM環(huán)境JVM.dll對(duì)于文件的搜索和加載,讓我們看看JRE搜索環(huán)境和系統(tǒng)版本的一部分jvm.cfg文件文件的代碼。

說明:1)getjrepath()查找當(dāng)前JRE環(huán)境的路徑。

2)Readknownvms()讀取JRE路徑libarch(CPU體系結(jié)構(gòu))JVM.cfg文件其中,arch(CPU架構(gòu))是通過getarch方法得到的。窗口中有三種情況:AMD64、IA64和i386。

3)Checkjvmtype確定當(dāng)前JVM類型。首先判斷是否由-J、-xxaltjvm=或-J-xxaltjvm=參數(shù)指定。如果沒有,請(qǐng)閱讀JVM.cfg文件文件中配置的第一種類型。

4)Getjvmpath查找相應(yīng)的JVM.dll文件。