MTK系統(tǒng)下的J2ME運行平臺設(shè)計
1.2 MTK系統(tǒng)
MTK方案是臺灣聯(lián)發(fā)科技公司提供的手機(jī)解決方案。近70%的國產(chǎn)手機(jī)采用MTK的芯片和平臺。有資料顯示,2007年MTK手機(jī)芯片出貨量高達(dá)1.5億片,全球市場占有率近14%,僅次于德州儀器及高通公司。若只計算MTK進(jìn)入全球GSM手機(jī)芯片的市場規(guī)模,大約省7億~8億部手機(jī),市場占有率已高達(dá)20%以上,排名僅次于德州儀器公司。
在目前MTK市場上,MTK6225平臺占據(jù)主導(dǎo)地位。該系統(tǒng)的主要功能如下:
①任務(wù)管理。系統(tǒng)任務(wù)采用靜態(tài)創(chuàng)建方式,靜態(tài)配置任務(wù)優(yōu)先級、棧大小、任務(wù)全局唯一ID等;不提供動態(tài)創(chuàng)建Task的方式;任務(wù)內(nèi)部以及任務(wù)之間的通信通過內(nèi)部事件隊列和外部事件隊列完成。
②內(nèi)存管理。平臺不提供動態(tài)分配內(nèi)存的方式;應(yīng)用程序需要使用動態(tài)分配內(nèi)存時,可以采用以下幾種方式:與系統(tǒng)其他模塊共享內(nèi)存,典型的是使用MED模塊的內(nèi)存;定義一個靜態(tài)數(shù)組,交給系統(tǒng)adm托管,然后調(diào)用kal_adm_alloc、kal_adm_free等內(nèi)存操作函數(shù)實現(xiàn)動態(tài)內(nèi)存分配;定義一個靜態(tài)數(shù)組,應(yīng)用自己實現(xiàn)基于此數(shù)組的分配和管理,也就是實現(xiàn)自己的內(nèi)存管理模塊。
③事件機(jī)制。平臺事件機(jī)制采用“注冊一回調(diào)”機(jī)制,把需要處理的各個按鍵、觸摸屏等通過系統(tǒng)函數(shù)注冊,當(dāng)有事件發(fā)生時系統(tǒng)調(diào)用所注冊的監(jiān)聽者。
④UI。系統(tǒng)MMI層提供了豐富的UI元素,如各種消息框、列表、圖標(biāo)等。
⑤系統(tǒng)局限性。MTK6225平臺只有一種中文字體,字體大小固定。本文引用地址:http://www.ex-cimer.com/article/152494.htm
2 平臺設(shè)計
2.1 平臺功能分析
在MTK平臺上實現(xiàn)J2ME運行環(huán)境,需要實現(xiàn)的功能如下:
①應(yīng)用程序管理。Java擁有豐富的應(yīng)用程序,平臺需要管理這些應(yīng)用程序,因此要實現(xiàn)應(yīng)用程序管理系統(tǒng)。應(yīng)用程序管理系統(tǒng)功能包括程序的安裝、刪除、運行、下載等。
②虛擬機(jī)的實現(xiàn)平臺。嵌入式Java虛擬機(jī)的實現(xiàn)平臺有多種方式。它可以直接嵌入到裸機(jī)上,也可以加載于其他嵌入式操作系統(tǒng)之上,成為一臺抽象的計算機(jī)。它的平臺無關(guān)性給它帶來了巨大的發(fā)展前景。經(jīng)過研究,在MTK平臺上,采用SUN公司公布的KVM作為核心,結(jié)合虛擬機(jī)所需要實現(xiàn)的功能和MTK平臺,設(shè)計和實現(xiàn)移植接口,最后在MTK平臺上運行KVM,在KVM之上運行Java應(yīng)用程序。
2.2 平臺框架設(shè)計
系統(tǒng)平臺由應(yīng)用程序管理系統(tǒng)(ApplicationManagement System,AMS)、KVM核心(KVM core)、KVM移植接口層、MTK系統(tǒng)平臺構(gòu)成。平臺框圖如圖2所示。
評論