周銳棠
(東莞理工學院城市學院 廣東 523000)
Java語言是1995年5月由Sun公司提出來并率先進行研發(fā)的。Java平臺不僅包含了JVM,應用于虛擬機系統(tǒng)外,還擁有Java應用編程接口的Java API。
JVM被認為是一種抽象化的計算機,是在操作系統(tǒng)的基礎上進行運行的,另外在JVM使用時,還可以將其與Java的字節(jié)線進行執(zhí)行起來。所有的Java應用程序都可以在不同類型的平臺上來進行執(zhí)行。Java及Java API的函數(shù)類庫,存在了基本核心庫與各種外加功能的擴展類庫。
另外在1998年12月8日的時候,Sun公司再次推出一個新版本的JDK(Java Software Development Kit),它不僅對原有的版本進行了升級,還對Java的平臺做到了進一步的完善。
Java 2是由15個核心技術所構成的一個平臺,因此該項技術包含了15個核心的API。這15個核心都是Java 2得以應用的關鍵部分。和原來的JDK進行相比較,此種平臺在使用的過程中更加具有優(yōu)勢,能夠體現(xiàn)出更好的安全性、穩(wěn)定性及與企業(yè)級系統(tǒng)間的互動性。
另外,新的Java還根據(jù)對軟件及對硬件的需求不同,因此在使用的時候具有四個不同的版本,其中分別是J2MM、J2SE、J2EE及Java Card Platform。Java程序是為了能夠在嵌入式設備中得到應用而進行開發(fā),目前Java具有的J2ME及Java卡功能,使得java語言在嵌入式系統(tǒng)的開發(fā)過程中得到了廣泛的應用。
作為Java平臺存在的最小的子集,Java卡是一種具有特殊性能的智能卡。其中智能卡包含兩大類,第一類是儲存卡,另一類是微處理卡。儲存卡在使用的過程中,能夠起到儲存數(shù)據(jù)的作用,而微處理卡能夠在使用的過程中對數(shù)據(jù)進行有效的處理。
Java卡是智能卡的一種操作系統(tǒng),使用通用的編程語言與系統(tǒng)接口能夠對不同類型的智能卡的進行的操作系統(tǒng)及硬件設施進行區(qū)別。另外Java卡還可以為開發(fā)者提供API,為程序開發(fā)者提供了較大的方便。目前智能卡得不到廣泛應用的原因是因為缺乏一套統(tǒng)一的標準。因此為了能對這個問題進行解決,工業(yè)界對Java卡進行使用,使得Java程序能夠得到有效的運行,另外還制定了相關的Java卡的技術標準及規(guī)范。
Sun公司為了能夠在電子產(chǎn)品中對相關程序的應用,因此研發(fā)出了Java編程語言,其中J2ME實現(xiàn)在設備上開發(fā)程序的功能。目前J2ME具有兩種配置層,其中一種是面向連接設備配置的配置層,其是一種典型Java虛擬技術的使用,它在使用的時候,包含了虛擬機具有的所用功能,因此可以在一些具有內(nèi)存的設備中使用,另外還可以實現(xiàn)在高檔電子產(chǎn)品及嵌入式設備中使用的目標。
MIDP與CLDC能夠為移動電話的應用程序使用提供了一個良好的環(huán)境。對于 MID框架來說,其主要的核心部分就是MIDet應用程序,因此所有的應用程序都對MIMlet做到了有效的繼承,這是為了能夠讓應用程序可以受到MIDlet的控制,并且能夠讓應用程序具有檢索屬性及能夠應對狀態(tài)而帶來的變化。對于MIDlet類的程序來說,其具有調(diào)用、暫時、重新啟動及終止等多方面的功能。另外在程序管理的應用軟件中,還可以開展對多個MIDlet活動的應用。另外MIDlet還可以根據(jù)自身的狀態(tài)來進行改變,并且將這些改變都能夠及時向應用程序的管理軟件進行反應。
運行Java虛擬機(JVM)解釋Java字節(jié)碼,這種方式對大多數(shù)嵌入式應用來說占用空間過多,運行速度過慢。不過 Sun的Java 2 Micro Edition(J2ME)改變了這種狀況。
對嵌入式系統(tǒng)設計師來說,Java有許多優(yōu)點。作為一門編程語言,Java允許面向對象編程,又沒有C中存在的嚴重問題。Java運行時環(huán)境還提供了有用屬性。Java提供的內(nèi)存管理功能使得編程人員不必分配及釋放內(nèi)存。運行時環(huán)境甚至可以通過整合核心類庫來簡化程序分配。但大多數(shù)嵌入式應用面臨Java沒有處理好的兩大約束:沒有足夠的空間和時間。
在項目的整個生命周期中,Java環(huán)境大大的簡化了開發(fā)和維護。由于目標環(huán)境是建立在一個虛擬機上,代碼可以很容易的編寫、調(diào)試、分析、更改、維護。加上將來要連接的外接設備,未來的系統(tǒng)可能比目前的嵌入式系統(tǒng)復雜很多。升級手冊也許不會在整個項目的生命周期中都能起到作用。取而代之的是,硬件設備的可連接性使得能夠遠程管理模塊,這樣就保證了開發(fā)人員能在產(chǎn)品上增加新的性能,同時解決了在產(chǎn)品生產(chǎn)后軟件升級和維護的問題。
隨著嵌入式技術的成熟以及系統(tǒng)本身變得更大更優(yōu)化,很多人開始對于把一個產(chǎn)品的模塊甚至是全部的應用程序用到另一個產(chǎn)品感興趣。這種可重新利用性使得"一次開發(fā),多次利用"成為了可能。Java環(huán)境使得一個模塊可以只要做很少的工作就可以適應多個項目和平臺。甚至包括有時客戶需要一個新的目標板,或者采用新的硬件(CPU或外設)和軟件,或者使用不同的Linux都可以進行移植。
使用源代碼明顯是指應用程序的多可用性以及代碼的重利用能力。在Java應用中,一個設計很好的界面,或者虛擬機,或者是底層的硬件都可以很好的兼容到嵌入式系統(tǒng)中。盡管無法移植,對于很多功能和硬件界面來說,在本地環(huán)境下開發(fā)的代碼也許仍然是最好的解決方案。在C、C++或者匯編語言中,加入標準的通信、接口模塊、用戶界面、安全特性會花費很多時間與金錢。與之相比較,Java的基本庫本身就提供了這些東西甚至還更多,這樣就可以加速開發(fā)。
Java語言在編程及系統(tǒng)的開發(fā)上都具有強大的功能,它具有的穩(wěn)定性、兼容系及可植入性的各種性質(zhì),讓它能夠在嵌入式系統(tǒng)中得到了充分的應用。在嵌入式系統(tǒng)在開發(fā)時所需要的很多需求,Java語言都能夠做到有效的滿足。另外Java語言中Java卡及J2ME的開發(fā),使其在嵌入式系統(tǒng)得到了更有效的應用。為了實現(xiàn)對Java語言的充分應用,因此在未來,我們還需要進一步對Java語言進行開發(fā),實現(xiàn)嵌入式系統(tǒng)的進一步發(fā)展。
[1]張輝,曹家璉,韓天柱.J2ME在嵌入式系統(tǒng)中的應用開發(fā)[J].電腦知識與技術.2009年01期
[2]郭凱民,魏啟明.基于 J2ME的嵌入式公交查詢系統(tǒng)的研究與實現(xiàn)[J].福建電腦.2009年02期