国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

Java 技術(shù)在嵌入式系統(tǒng)中的作用探討

2022-11-17 04:01
無線互聯(lián)科技 2022年14期
關(guān)鍵詞:類庫實(shí)時性C語言

楊 迎

(黑龍江工商學(xué)院,黑龍江 哈爾濱 150001)

0 引言

嵌入式系統(tǒng)早在1971年微處理器問世之后就開始了研發(fā)。目前,嵌入式系統(tǒng)已經(jīng)得到了較全面的發(fā)展。隨著Internet技術(shù)在各領(lǐng)域的結(jié)合更加深入,嵌入式系統(tǒng)的應(yīng)用也更加廣泛。例如:在當(dāng)下的通信領(lǐng)域,電視、電話等都應(yīng)用了嵌入式系統(tǒng),而在其他領(lǐng)域的應(yīng)用也有很多。Java技術(shù)是在1991年加利福尼亞州門洛帕克市被稱為Green的工作小組所提出的應(yīng)對嵌入式系統(tǒng),主要是在家電產(chǎn)品上應(yīng)用的一項(xiàng)技術(shù),當(dāng)時這一技術(shù)還不稱為Java,而是在后期經(jīng)過長時期的不斷改進(jìn)、優(yōu)化后正式推出的Java技術(shù),也可以稱之為Java語言。因?yàn)槠涫且环N編程語言,主要用于編寫嵌入式系統(tǒng),但同時也是一種應(yīng)用開發(fā)平臺。而Java技術(shù)之所以被嵌入式系統(tǒng)廣泛應(yīng)用,是因?yàn)镃++語言過于龐大復(fù)雜,這不適應(yīng)于嵌入式系統(tǒng)的編寫,所以在其基礎(chǔ)上進(jìn)行改進(jìn),取其精華去其糟粕,形成了被嵌入式系統(tǒng)廣泛應(yīng)用的Java技術(shù)。因此,Java技術(shù)的問世是計(jì)算機(jī)領(lǐng)域發(fā)展的必然趨勢,也是對C++語言的進(jìn)一步優(yōu)化。

1 嵌入式系統(tǒng)簡述

嵌入式系統(tǒng)與其他的計(jì)算機(jī)處理系統(tǒng)相比,有著獨(dú)特的優(yōu)越性,也有不足。其不能實(shí)現(xiàn)大容量的存儲,但可以在諸多方面滿足用戶的實(shí)際需求,例如功能、成本、功耗等。其具備較強(qiáng)的專用性,通常是以應(yīng)用為中心所展開的程序編寫,通過對軟件及硬件的靈活裁剪以及重組,對不同應(yīng)用設(shè)置特定系統(tǒng),可以更好地保障用戶體驗(yàn),節(jié)約成本。同時,嵌入式系統(tǒng)通常也被應(yīng)用在對實(shí)時性要求較高的環(huán)境中,其可以對用戶的干預(yù)及時作出反應(yīng),并且以最快的速度處理需求。部分嵌入式系統(tǒng)的應(yīng)用肩負(fù)重要使命,往往承擔(dān)著重要責(zé)任,例如國家機(jī)密等。這類系統(tǒng)往往對可靠性的要求極高,且其自身具有可封裝性、獨(dú)立性,是一個獨(dú)立的子系統(tǒng),并隱藏在目標(biāo)設(shè)備的內(nèi)部系統(tǒng)中,避免了外界的過多接觸,也就一定程度地增大了其可靠性。

2 Java技術(shù)在嵌入式系統(tǒng)中的實(shí)際應(yīng)用

Java技術(shù)在嵌入式系統(tǒng)中的應(yīng)用,首先要輔助其進(jìn)行系統(tǒng)開發(fā),構(gòu)建代碼層、Java類庫、本地類庫、平臺層、硬件層等結(jié)構(gòu),確保嵌入式系統(tǒng)可以滿足用戶的實(shí)際需求。而各結(jié)構(gòu)的實(shí)際作用如下。

代碼層:用戶利用Java語言開發(fā)的程序;Java類庫:用戶在應(yīng)用程序?qū)?,也就是代碼層,會用到一些預(yù)先定義好的應(yīng)用程序接口,這些接口存在于Java類庫中,在用戶編寫Java程序時被調(diào)用。

本地類庫:通常被Java程序所使用,多應(yīng)用于Java虛擬機(jī)和實(shí)時多任務(wù)操作系統(tǒng),存放位置為嵌入式設(shè)備中。

平臺層:該層的形成主要由兩部分組成,一部分為Java虛擬機(jī),核心是管理Java文件,對其內(nèi)存的數(shù)據(jù)信息進(jìn)行轉(zhuǎn)儲,另一部分為實(shí)時多任務(wù)操作系統(tǒng),核心是為前者提供基礎(chǔ)運(yùn)行平臺。

硬件層:該層在嵌入式系統(tǒng)運(yùn)行中發(fā)揮著重要作用,為主要的硬件結(jié)構(gòu),主要通過實(shí)時多任務(wù)操作系統(tǒng),對Java虛擬機(jī)運(yùn)行、網(wǎng)絡(luò)連接等進(jìn)行管理,并且解決運(yùn)行中出現(xiàn)的異常問題[1]。

Java技術(shù)在嵌入式系統(tǒng)中的應(yīng)用具備著諸多優(yōu)勢,其主要優(yōu)勢如下:可以無視網(wǎng)絡(luò)需求,在無網(wǎng)絡(luò)的情況下正常運(yùn)行;可以在多個處理器上運(yùn)行,以滿足各種需求;可以對Java程序源代碼進(jìn)行編譯,以特定的指令應(yīng)用到目標(biāo)設(shè)備中;可以對Java運(yùn)行包進(jìn)行高度定制,以小體積滿足運(yùn)行要求[2]。

3 Java技術(shù)應(yīng)用于嵌入式系統(tǒng)所發(fā)揮的主要作用

Java技術(shù)之所以被嵌入式系統(tǒng)廣泛應(yīng)用,正是因?yàn)檠芯咳藛T長時期的創(chuàng)新、改進(jìn),才使其趨于完善,得以滿足嵌入式系統(tǒng)的實(shí)際需求。而在其完善之前,嵌入式系統(tǒng)主要應(yīng)用的是符號語言及C語言,但是在實(shí)際應(yīng)用中獲得成果的同時,也帶來了較大的問題,例如:(1)難以處理嵌入式系統(tǒng)的異構(gòu)性。嵌入式系統(tǒng)的中央處理器類型較多,且運(yùn)用的操作系統(tǒng)也有所不同,這使其具備較強(qiáng)的異構(gòu)性,而C語言及符號語言對異構(gòu)性不能有效地處理。而反觀Java技術(shù),其自身的兼容性特點(diǎn)決定了其能夠在各種環(huán)境下進(jìn)行應(yīng)用,即便是操作系統(tǒng)存在異構(gòu)性問題的情況下,也可以通過適當(dāng)?shù)拇a調(diào)整來滿足兼容使用的需求。(2)難以有效維護(hù)系統(tǒng)。在嵌入式系統(tǒng)的開發(fā)中應(yīng)用這兩種語言,仍是依照著以往的開發(fā)方式,難以對其產(chǎn)生較有利的幫助,進(jìn)而不能較好地進(jìn)行系統(tǒng)維護(hù)。Java技術(shù)相比較其他的開發(fā)語言和方式而言,其維護(hù)難度和維護(hù)成本更低,且Java技術(shù)自身的多樣性也決定了其在實(shí)際應(yīng)用過程中可以面臨多種選擇途徑,這也意味著在維護(hù)過程中具有較高的靈活性,能夠滿足不同的維護(hù)需求。(3)操作復(fù)雜。這種應(yīng)用方式,需要多種平臺的協(xié)助,共同支持系統(tǒng)開發(fā),進(jìn)而增加了復(fù)雜性。操作難度低本身就是Java技術(shù)的優(yōu)勢之一,Java技術(shù)在實(shí)際應(yīng)用過程中無需多平臺同步應(yīng)用,單一平臺即可完成全部的操作流程。簡單化的操作方式也決定了Java技術(shù)在系統(tǒng)開發(fā)方面具有天然的優(yōu)勢,使用Java技術(shù)進(jìn)行系統(tǒng)開發(fā)的實(shí)際難度也要低于其他方式。(4)程序轉(zhuǎn)移較困難,在這兩種語言的應(yīng)用中,由于系統(tǒng)的自身特性,會使一些操作程序難以實(shí)現(xiàn)平臺間的轉(zhuǎn)換,而Java語言在嵌入式系統(tǒng)中可以發(fā)揮較好作用,有效解決這些問題,尤其是其簡單性、健壯性、安全性等特點(diǎn)更是使其具備較大優(yōu)勢,也為嵌入式系統(tǒng)的推廣提供了保障。具體作用如下。

3.1 令系統(tǒng)成為具備通用性的通信設(shè)備

國家一直以來都高度重視通信技術(shù),力求使其為各行業(yè)發(fā)展提供更有力的保障,而隨著技術(shù)研發(fā)愈加深入,通信設(shè)備也取得了較多的成果。尤其是應(yīng)用Java技術(shù)的嵌入式系統(tǒng)成為一個具備通用性的通信設(shè)備,從根本上解決了操作系統(tǒng)不兼容的問題。在過去的嵌入式程序中,需要依靠微處理器實(shí)現(xiàn)對程序的設(shè)計(jì),而Java技術(shù)對處理器沒有任何要求,在嵌入式系統(tǒng)的實(shí)際應(yīng)用中不需要考慮處理器的因素,就可以使程序在其他系統(tǒng)上存在,實(shí)現(xiàn)程序的下載,進(jìn)而滿足各種不同應(yīng)用環(huán)境的實(shí)際需求。

3.2 保障了系統(tǒng)的實(shí)時性

系統(tǒng)的實(shí)時性本就是一項(xiàng)重要的特性,而嵌入式系統(tǒng)更是會被應(yīng)用到一些實(shí)時性要求較高的環(huán)境中,所以工作人員對嵌入式系統(tǒng)的實(shí)時性要求較高。在過去,應(yīng)用C語言的嵌入式系統(tǒng)具有一定的實(shí)時性,但同時也存在著很大的問題。例如:C語言龐大復(fù)雜的特性導(dǎo)致開發(fā)平臺煩瑣等。Java技術(shù)可以有效地解決這些問題,可以提高嵌入式系統(tǒng)的運(yùn)行速度,并且可以在規(guī)定時間內(nèi),以最快的速度做出反應(yīng),完成資源分配、任務(wù)調(diào)度等工作。同時,隨著時代發(fā)展,實(shí)際需求也處于不斷變化中,Java技術(shù)的應(yīng)用可以適應(yīng)這樣多變的環(huán)境,降低內(nèi)存管理系統(tǒng)的應(yīng)用,提高軟件的開發(fā)效率,滿足時代對實(shí)時性的需求,使嵌入式系統(tǒng)可以在市場競爭中脫穎而出。

3.3 減少系統(tǒng)的開發(fā)時間

在嵌入式系統(tǒng)的開發(fā)中,利用C語言、符號語言提高不了開發(fā)效率,而Java語言作為C語言的改進(jìn)體,是一種面向?qū)ο蟮木幊陶Z言,具有代碼和數(shù)據(jù)封裝體的諸多優(yōu)點(diǎn),例如繼承性、多態(tài)性等。這使嵌入式系統(tǒng)的開發(fā)只需采用或者修改Java類庫就可以實(shí)現(xiàn),從而減少嵌入式系統(tǒng)的開發(fā)時間,提高開發(fā)效率,加快生產(chǎn)投放[3]。

3.4 保障了系統(tǒng)的安全性

Java語言在設(shè)計(jì)之初,摒棄了C語言諸多復(fù)雜的概念,例如指針變量等。這樣的做法對Java有了一定的約束,使其難以隨意訪問除了Java內(nèi)存分配的對象外的其他內(nèi)存。同時,Java編譯器在分類機(jī)制上有著較嚴(yán)謹(jǐn)?shù)奶匦裕@使得其基本上無法實(shí)現(xiàn)對未分配內(nèi)存的訪問,一定程度上杜絕了惡意代碼的編寫。Java程序的運(yùn)行是在Java虛擬機(jī)上完成的,與操作系統(tǒng)處于徹底隔離的狀態(tài),計(jì)算機(jī)發(fā)生異常,不會影響Java程序,從而大幅度提高了嵌入式系統(tǒng)的安全性[4]。

3.5 增強(qiáng)了系統(tǒng)的聯(lián)網(wǎng)功能

當(dāng)下,實(shí)現(xiàn)嵌入式系統(tǒng)的網(wǎng)絡(luò)化,簡便、快速地聯(lián)網(wǎng)是非常必要的。過去利用C語言等可以實(shí)現(xiàn)嵌入式系統(tǒng)聯(lián)網(wǎng),但是需要開發(fā)人員耗費(fèi)大量的精力學(xué)習(xí)如何使用附件包。Java技術(shù)的應(yīng)用可以利用內(nèi)置的網(wǎng)絡(luò)支持,省去了學(xué)習(xí)附件包的流程,且具備較強(qiáng)的網(wǎng)絡(luò)編程,可以減少時間等成本的投入,增強(qiáng)了系統(tǒng)的聯(lián)網(wǎng)功能[5]。

3.6 提高開發(fā)效率和可維護(hù)性

從嵌入式系統(tǒng)的生命周期角度來看,Java技術(shù)的應(yīng)用從某種角度上實(shí)現(xiàn)了對開發(fā)和維護(hù)環(huán)節(jié)的全面簡化??紤]到嵌入式系統(tǒng)的目標(biāo)環(huán)境需要建立在某一虛擬機(jī)上,故大幅度降低了代碼的編寫和調(diào)試難度。從目前的發(fā)展趨勢來看,嵌入式系統(tǒng)在未來將與大量的外接設(shè)備進(jìn)行連接,系統(tǒng)的整體復(fù)雜程度將進(jìn)一步提升,而Java技術(shù)的升級難以保證其在系統(tǒng)的整個生命周期中都可以起到?jīng)Q定性作用。與此同時,伴隨著外接設(shè)備的持續(xù)增加,遠(yuǎn)程管理模塊的構(gòu)建將成為可能,這也意味著在原有系統(tǒng)上增加全新的功能成為易事。這也在某種程度上提高了開發(fā)效率和可維護(hù)性。

3.7 重復(fù)利用代碼

隨著嵌入式技術(shù)的成熟以及系統(tǒng)本身變得更大、更優(yōu)化,很多人開始對把一個產(chǎn)品的模塊甚至是全部的應(yīng)用程序用到另一個產(chǎn)品上產(chǎn)生興趣。這種可重新利用性使得“一次開發(fā),多次利用”成為可能。Java環(huán)境使得一個模塊只要做很少的工作就可以適應(yīng)多個項(xiàng)目和平臺。當(dāng)客戶需要一個新的目標(biāo)板時,采用新的硬件(CPU或外設(shè))和軟件,或者使用不同的Linux都可以通過移植實(shí)現(xiàn)。

3.8 集成Java代碼和源代碼

源代碼的應(yīng)用在本質(zhì)上可以有效提升代碼的重復(fù)利用能力。在實(shí)際應(yīng)用Java技術(shù)的過程中,無論是已經(jīng)設(shè)計(jì)完成的界面、虛擬機(jī),還是底層硬件,都可以通過源代碼優(yōu)化的方式與嵌入式系統(tǒng)進(jìn)行兼容使用。從某種角度來看,其雖然無法從根本上進(jìn)行移植,但對于功能應(yīng)用而言,基于本次環(huán)境而開發(fā)代碼則是一種最優(yōu)選擇,且無論是安全特性還是開發(fā)效率都能夠有所保障。與之相比,Java技術(shù)的基本庫本身就能夠提供相關(guān)代碼內(nèi)容,這對于促進(jìn)開發(fā)過程有著直接積極的影響。

3.9 其他方面的作用

除此之外,Java技術(shù)對網(wǎng)絡(luò)連接以及硬盤沒有較嚴(yán)格的要求,甚至于在缺乏這兩者的情況下依然可以運(yùn)行,更是為系統(tǒng)帶來了諸多積極作用。例如:一是Java技術(shù)可以使嵌入式設(shè)備的內(nèi)存管理開發(fā)變得簡便;二是由于連接網(wǎng)絡(luò)的特性,使嵌入式系統(tǒng)的操作使用變得簡便;三是Java技術(shù)可以及時、準(zhǔn)確地發(fā)現(xiàn)異常、錯誤信息,并及時處理;四是具備較強(qiáng)的靈活性,在嵌入式系統(tǒng)還沒有開啟的時候,用戶可以對設(shè)備進(jìn)行重新制定以及配置,充分利用了Java技術(shù)的動態(tài)性。

4 結(jié)語

綜上所述,Java技術(shù)在嵌入式系統(tǒng)中的應(yīng)用有著至關(guān)重要的意義,可以發(fā)揮較好的作用效果,尤其是針對C語言、符號語言而言,更是具備較大的優(yōu)勢,可以最大限度地推動嵌入式系統(tǒng)的發(fā)展,使其應(yīng)用更加廣泛。同時,Java技術(shù)的研發(fā)初衷就是為了更好地解決C語言在嵌入式系統(tǒng)中的應(yīng)用問題,所以其有著較全面的特點(diǎn),例如可靠性、安全性和穩(wěn)定性等,可以充分解決以往系統(tǒng)開發(fā)中存在的問題。該項(xiàng)技術(shù)是一種編程語言,也是一個平臺,在實(shí)際應(yīng)用中產(chǎn)生問題難以避免,所以技術(shù)研發(fā)人員要不斷進(jìn)行優(yōu)化創(chuàng)新,確保其可以滿足時代需求以及用戶需求,為嵌入式系統(tǒng)的發(fā)展提供堅(jiān)實(shí)的基礎(chǔ)。

猜你喜歡
類庫實(shí)時性C語言
基于規(guī)則實(shí)時性的端云動態(tài)分配方法研究
基于Visual Studio Code的C語言程序設(shè)計(jì)實(shí)踐教學(xué)探索
用Java編寫客戶機(jī)/服務(wù)器端應(yīng)用程序
Python在數(shù)據(jù)可視化中的應(yīng)用
基于C語言的計(jì)算機(jī)軟件編程
數(shù)據(jù)結(jié)構(gòu)可視化類庫的設(shè)計(jì)與實(shí)現(xiàn)
基于虛擬局域網(wǎng)的智能變電站通信網(wǎng)絡(luò)實(shí)時性仿真
航空電子AFDX與AVB傳輸實(shí)時性抗干擾對比
高職高專院校C語言程序設(shè)計(jì)教學(xué)改革探索
論子函數(shù)在C語言數(shù)據(jù)格式輸出中的應(yīng)用
深水埗区| 通州市| 天气| 娱乐| 吐鲁番市| 甘孜县| 寿宁县| 综艺| 农安县| 河源市| 河西区| 论坛| 寿宁县| 双牌县| 浦北县| 左贡县| 清水河县| 长泰县| 龙江县| 土默特左旗| 鹿邑县| 阿城市| 阿拉善盟| 板桥市| 龙山县| 涿鹿县| 潼南县| 枣强县| 莱西市| 长白| 京山县| 循化| 泸西县| 南乐县| 百色市| 楚雄市| 昌都县| 富宁县| 沂源县| 怀仁县| 沙湾县|