關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > MIPS目標平臺CLDC的Java虛擬機移植

        MIPS目標平臺CLDC的Java虛擬機移植

        作者: 時間:2009-12-28 來源:網絡 收藏

        1 簡介
        ME( platform Micro Edition),以前稱J2ME,是為機頂盒、移動電話和PDA等嵌入式消費電子設備提供的Java語言平臺,它包括和一系列標準化的Java API(Application Programming Interface)。Java語言的平臺無關性使其廣泛應用于各行各業,而嵌入式領域Java ME技術的發展尤為迅猛。截至2008年底,JavaME技術已應用于全球26億部移動手機、部署了60億個Java Cards、4 000萬臺以上的藍光設備和TV設備,遍及移動開發的各個領域。
        Java(JVM,Java Virtual Machine)是實現Java語言平臺無關性的關鍵。Java虛擬機是Java技術的重要組成部分,它是一個抽象的運算機器,有一套自己的指令集,可在運行時操縱內存的各個區域。
        嵌入式的Java虛擬機主要有兩大類:
        (1) VM
        VM(Connected Limited Device Configuration Virtual Machine)是連接受限的設備配置的虛擬機,以前稱為KVM(Kilobyte Virtual Machine,千字節虛擬機)。 VM一般用于內存很少(如1 MB以內)、CPU處理能力弱(如幾MHz)的嵌入式設備。Sun公司于2000年發布CLDC 1.0規范及KVM的參考實現,之后于2006年將KVM參考實現轉到開源社區,并重命名為phoneME Fea-ture。至2009年,phoneME Feature先后經歷了MR1、MR2、MR3、MR4版。本文基于phoneME Feature MR4。通常CLDC VM的結構如圖1所示。

        本文引用地址:http://www.104case.com/article/202584.htm

        其中MIDlet是各種Java ME應用程序,運行于CLDC虛擬機之上。
        (2)CDC VM
        CDC VM(Conntected Device Configuration Virtual Machine)是已連接的設備配置的虛擬機,簡稱CVM。CVM一般用于智能手機、數字機頂盒、PDA等嵌入式設備。
        phoneME Feature MR4軟件是一個高性能的虛擬機,它不僅遵循CLDC規范,還實現了高效的資源管理,以及對多任務的支持等。與早期的KVM虛擬機相比,CLDC VM增加了如下特征:
        ◆支持CLDC 1.0、CLDC 1.1和CLDC 1.1.1;
        ◆改進Java應用程序的啟動時間和執行速度;
        ◆支持AOT(Ahead-Of-Time,提前)編譯技術;
        ◆支持原地執行(in-place execution)功能;
        ◆支持多任務功能。


        2 CLDC VM移植原理
        phoneME Feature軟件是一個功能完整的虛擬機,它通過了Sun公司的TCK(Technology Compatibility Kit,技術兼容工具包)兼容測試集。phoneME Feature直接支持兩種CPU架構:x86架構和ARM架構。在這兩種架構上移植僅需少量修改,而要移植到架構則需做較多修改。phoneME Feature軟件的結構如圖2所示。

        ①JavaCall API移植層:該層提取目標平臺的需求,實現必須移植的函數集,是基于目標平臺的實現。pho-neME Feature的主要移植工作集中于此層。
        ②MIDP/CLDC層:是嵌入式Java虛擬機的核心部分。其中CLDC為資源受限的設備定義了應用編程接口和虛擬機的基礎函數集,MIDP(Mobile Information Device Profile,移動信息設備簡表)則提供應用程序環境和應用程序所需的大量服務。
        ③PCSL(Portable Common Services Library,可移植的通用服務庫)層:提供底層服務,供CLDC、MIDP和其他可選包調用。
        ④抽象層:是一套函數集,所有擴展JSR包通過抽象層接口與MIDP/CLDC層進行交互。
        ⑤擴展JSR包:為虛擬機提供擴展功能。擴展JSR包種類很多,可根據需要進行擴展。如支持藍牙和OBEX(對象交換)功能的JSR82擴展包、支持Web服務的JSR172包、支持定位功能的JSR179包、支持在線支付功能的JSR229包等。
        Java虛擬機的移植首先要確定兩件事:一是目標CPU,二是目標OS(操作系統)。OS移植比較簡單,移植工作集中在虛擬機自身和核心CLDC庫上;而CPU移植則較為復雜,因為匯編解釋器和適配的編譯器十分依賴于目標CPU架構。


        上一頁 1 2 下一頁

        關鍵詞: MIPS CLDC Java 虛擬機

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 三河市| 子长县| 黔南| 宣化县| 慈利县| 台前县| 新竹县| 舞钢市| 北海市| 阳江市| 仲巴县| 彩票| 乌鲁木齐县| 新乡县| 邹城市| 平江县| 德保县| 定南县| 英山县| 金乡县| 永修县| 新疆| 顺平县| 延庆县| 荔浦县| 奉化市| 顺义区| 沅江市| 北川| 清新县| 屯门区| 乳山市| 加查县| 许昌县| 墨竹工卡县| 平阴县| 贞丰县| 北宁市| 安达市| 安福县| 沂南县|