HHVM (HipHop Virtual Machine)會將PHP代碼轉換成高級別的位元組碼(通常稱為中間語言),在運行時,通過即時(JIT)編譯器將位元組碼轉換為x64的機器碼。在這些方面,HHVM十分類似於C#的CLR和Java的JVM。
HHVM是在HPHPc的基礎上構建,它會將PHP代碼轉換成高級別的位元組碼(一種中間語言),在運行時即時(JIT)編譯器會將這些位元組碼翻譯成機器碼,通過以上技術,HipHop和HHVM獲得了性能的提升。
位元組碼:是一種人類無法閱讀的代碼,專門用來給編譯器高效執行的。當HHVM首次載入項目時,它會將所有的PHP代碼轉換成位元組碼;位元組碼的生成是與平台無關的。
機器碼:是一系列供CPU執行的指令。用過彙編的都應該清楚機器碼,估計沒人喜歡用彙編編程。通過編譯器就可以把彙編轉成機器碼,然後供CPU處理。
JIT(即時)編譯器:即時編譯是種軟體最佳化技術,指在運行時才會去編譯位元組碼。位元組碼會存放在記憶體中,然後JIT編譯器會根據需要載入並編譯所涉的位元組碼。
最近,HHVM幾乎已經完全支持PHP 5.4了,但還是有不少bug,所以不是所有應用程式都可以運行。因此,Facebook準備讓最流行的20個開源PHP項目能夠運行在HHVM上。第一個已經支持的項目就是Wordpress。
基本介紹
- 中文名:HipHop虛擬機
- 外文名:HHVM
- 全稱:HipHop Virtual Machine
- 開發公司:Facebook
- 支持語言:HACK、PHP