<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          YVM基于 C++ 的 Java 虛擬機(jī)

          聯(lián)合創(chuàng)作 · 2023-10-01 08:34

          中文 | English

          YVM是用C++寫的一個(gè)Java虛擬機(jī),現(xiàn)在支持Java大部分功能,以及一個(gè)基于"標(biāo)記清除算法"的并發(fā)垃圾回收器. 不過還有很多bug等待修復(fù)。 感興趣的朋友pull request/fork/star吧!

          已支持語言特性

          高級特性逐步支持中,可以開Issue提議或者直接PR

          構(gòu)建和運(yùn)行

          預(yù)置MSVC 2017工程文件,同時(shí)支持CMakeLists

          1. 配置 編輯src/Option.h,如果是Windows則

          #define TARGET_WIN32

          如果是Linux則

          #define TARGET_LINUX
          1. 編譯 如果使用MSVC,直接打開src/yvm.sln即可 如果使用CMakeLists

          $ cd yvm
          $ cmake .
          $ make -j4
          1. 運(yùn)行

          # --runtime為在YVM上運(yùn)行的Java程序所必須的運(yùn)行時(shí),多個(gè)值用";"分隔
          # 后面指定運(yùn)行程序的全修飾名,如ydk.test.QuickSort
          ./yvm --runtime=C:\Users\Cthulhu\Desktop\yvm\javalib ydk.test.QuickSort

          關(guān)于JDK

          部分JDK類是JVM運(yùn)行攸關(guān)的,但由于JDK比較復(fù)雜不便于初期開發(fā),所以這里用重寫過的JDK代替,源碼參見javalib_src目錄,編譯后*.class文件位于javalib 目前重寫過的JDK類有:

          • java.lang.String

          • java.lang.StringBuilder

          • java.lang.Throwable

          • java.lang.Math(::random())

          • java.lang.Runnable

          • java.lang.Thread

          運(yùn)行效果

          • helloworld 

          • 快速排序 

          • 異常調(diào)用棧軌跡 

          • 原生多線程 

          • Synchronized保護(hù)下的多線程 

          • 垃圾回收 

          開發(fā)文檔

          Wiki中有很多詳細(xì)的開發(fā)文檔,如果想探索關(guān)于YVM的更多內(nèi)容,請移步瀏覽:-)

          License

          Code licensed under the MIT License.

          瀏覽 18
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品 A片在线 | 黄色视屏在线观看 | 天天添夜夜添免费视频 | 久久538 | 欧美成人系列 |