Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建_第1頁
Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建_第2頁
Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建_第3頁
Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建_第4頁
Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Java動(dòng)態(tài)編程技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建摘要:隨著信息化進(jìn)程的不斷推進(jìn),在各個(gè)領(lǐng)域計(jì)算機(jī)信息處理技術(shù)都有廣泛的應(yīng)用,促進(jìn)了金融業(yè)、航天業(yè)、交通業(yè)、通信業(yè)等行業(yè)的大力發(fā)展。對于計(jì)算機(jī)而言,軟件是核心,隨著科學(xué)技術(shù)的提升,人們對于軟件的復(fù)雜性和可靠性具有更高的要求,因此,基于Java動(dòng)態(tài)編程技術(shù),實(shí)現(xiàn)軟件自愈合構(gòu)架的構(gòu)建,有助于信息處理技術(shù)的發(fā)展。關(guān)鍵詞:Java;動(dòng)態(tài)編程技術(shù);自愈合系統(tǒng)90年代以后,軟件的發(fā)展進(jìn)入了嶄新時(shí)期,出現(xiàn)了軟件可靠性工程,實(shí)現(xiàn)了軟件理論和應(yīng)用的結(jié)合,在研究方面,促進(jìn)了軟件可靠性的發(fā)展。對于軟件可靠性的實(shí)現(xiàn)而言,自愈合系統(tǒng)是一種較好的實(shí)現(xiàn)方式,充分的結(jié)合了除錯(cuò)與

2、容錯(cuò),當(dāng)軟件出現(xiàn)變化后,在相應(yīng)的程序下,根據(jù)各種信息,修改和調(diào)整系統(tǒng),確保軟件的正確態(tài)度。對于軟件而言,自愈合系統(tǒng)具有較強(qiáng)的自適應(yīng)性,對于軟件的復(fù)雜程序具有較大的意義。一、自愈合構(gòu)架的發(fā)展現(xiàn)狀對于軟件而言,自愈合系統(tǒng)可以實(shí)現(xiàn)其高可靠性,充分結(jié)合了系統(tǒng)除錯(cuò)方法和容錯(cuò)方法,借助于兩者的有效結(jié)合,進(jìn)而增加系統(tǒng)的可靠性。在自愈合系統(tǒng)中,系統(tǒng)容錯(cuò)是前提,系統(tǒng)除錯(cuò)是核心內(nèi)容,錯(cuò)誤的出現(xiàn),不會(huì)使系統(tǒng)出現(xiàn)崩潰和失效現(xiàn)象。除錯(cuò)系統(tǒng)與容錯(cuò)系統(tǒng)具有較大區(qū)別,不只是簡單的對錯(cuò)誤進(jìn)行屏蔽,而是對錯(cuò)誤進(jìn)行主動(dòng)處理。經(jīng)過改正、診斷及驗(yàn)證等方法,對系統(tǒng)錯(cuò)誤實(shí)施修復(fù),從系統(tǒng)中,將錯(cuò)誤修復(fù)和排除。在自愈合系統(tǒng)的研究方面,國內(nèi)經(jīng)歷

3、的時(shí)間比較短,各方面的技術(shù)比較稚嫩,對愈合程度具有較大限制,為了促進(jìn)自愈合系統(tǒng)的形成,研究方案主要有:(1)修復(fù)數(shù)據(jù)結(jié)構(gòu):在程序運(yùn)行過程中,數(shù)據(jù)結(jié)構(gòu)一旦出現(xiàn)錯(cuò)誤,該程序可以實(shí)現(xiàn)對數(shù)據(jù)結(jié)構(gòu)的修復(fù),促進(jìn)程序的正常運(yùn)行;(2)軟精度需求:在系統(tǒng)可靠性的基礎(chǔ)上,系統(tǒng)進(jìn)行精確的規(guī)范。在實(shí)際系統(tǒng)中,一個(gè)精確規(guī)范的獲得是非常不容易的。在整個(gè)運(yùn)行過程中,系統(tǒng)始終處于動(dòng)態(tài),隨著時(shí)間和用戶的不斷變化,系統(tǒng)可以接受的行為也在改變,因而實(shí)現(xiàn)統(tǒng)一的規(guī)范是很難的。而此系統(tǒng)的開發(fā),建立的基礎(chǔ)是對精確規(guī)范的假設(shè),致使系統(tǒng)具有較強(qiáng)的脆弱性。在軟精度的需求上,自愈合系統(tǒng)的建立,具有較大的彈性,有助于自愈合系統(tǒng)特性的實(shí)現(xiàn),次方案具

4、有較強(qiáng)的可行性;(3)反射技術(shù):為了支持自愈合的順利進(jìn)行,對于系統(tǒng)結(jié)構(gòu)的各個(gè)方面,系統(tǒng)都能實(shí)現(xiàn)有效的訪問,在運(yùn)行時(shí),對于各個(gè)方面也能進(jìn)行重新配置。經(jīng)過對反射技術(shù)的進(jìn)一步擴(kuò)展,對其繼承屬性的進(jìn)一步研究,對于自愈合系統(tǒng)的運(yùn)行,反射技術(shù)能夠起到自然的支持作用;(4)仿生技術(shù):隨著環(huán)境的改變,生物系統(tǒng)表現(xiàn)出較強(qiáng)的健壯性和適應(yīng)性,隨著對其研究特性的不斷深入,最具有代表性的仿生技術(shù)就是細(xì)胞編程方式;(5)動(dòng)態(tài)重配置技術(shù):現(xiàn)階段,自愈合系統(tǒng)比較常用的方式就是動(dòng)態(tài)重配置技術(shù)。此種方式構(gòu)建的框架,具有較強(qiáng)的開放性,同時(shí)組件也比較多,一旦出現(xiàn)錯(cuò)誤,框架可以利用組件的選擇和可配置性,實(shí)現(xiàn)自愈合。二、Java動(dòng)態(tài)編程

5、技術(shù)實(shí)現(xiàn)框架下的軟件自愈合構(gòu)架構(gòu)建1、Java動(dòng)態(tài)編程技術(shù)Java技術(shù)具有較多的動(dòng)態(tài)特性,有利于動(dòng)態(tài)構(gòu)架的構(gòu)建。以下對Java虛擬機(jī)的相關(guān)特性進(jìn)行分析:(1)在使用過程中,與硬件具有無關(guān)性:針對于不同的軟硬件環(huán)境,虛擬機(jī)所表現(xiàn)的版本也不一樣,隨著軟件特性的實(shí)現(xiàn),所提供的借口也具有統(tǒng)一性,根據(jù)相應(yīng)的規(guī)范標(biāo)準(zhǔn),對軟硬件之間的差異進(jìn)行封裝。對Java經(jīng)過一次開發(fā)后,便可實(shí)現(xiàn)不同場景下的部署。只要Java代碼具有合法性,在任意Java虛擬機(jī)下都可運(yùn)行,無需考慮軟硬件的區(qū)別,降低了寄存器產(chǎn)生的依賴性;(2)對代碼的執(zhí)行實(shí)現(xiàn)完全掌控:在一個(gè)虛擬的運(yùn)行環(huán)境下,虛擬機(jī)對所有運(yùn)行的代碼實(shí)施確切的調(diào)整和監(jiān)控。在環(huán)

6、境內(nèi)部,存儲(chǔ)空間可以不斷擴(kuò)展,對生成對象和加載的類進(jìn)行維護(hù),在堆棧上,對線程進(jìn)行調(diào)整。在運(yùn)行時(shí),對屬性、加載類型、空間分布,應(yīng)該進(jìn)行清楚地了解。對當(dāng)前對象的指針引用、相互關(guān)系及儲(chǔ)存位置進(jìn)行完全控制。對所有內(nèi)存空間也實(shí)現(xiàn)完全管理。對線程的狀態(tài)、位置進(jìn)行完全的了解??傊诖a的運(yùn)行過程中,在間隙運(yùn)行的輔助處理下,虛擬機(jī)對代碼的實(shí)際情況具有較好的掌控情況,促進(jìn)代碼的正常運(yùn)行;(3)操作能力比較強(qiáng)大:隨著內(nèi)部信息的不斷暴露,在相關(guān)接口處,虛擬機(jī)可以對一些外部控制方法進(jìn)行有效提供。這樣在執(zhí)行控制應(yīng)用和層面分析時(shí),可以通過虛擬機(jī)來完成。這種操作能力比較強(qiáng)大,可以對虛擬機(jī)內(nèi)所有生成對象和加載類型實(shí)現(xiàn)遍歷,

7、對其屬性進(jìn)行修改,或?qū)Υa執(zhí)行進(jìn)行控制等;(4)執(zhí)行方式具有靈活性:在代碼執(zhí)行過程中,可以實(shí)現(xiàn)編譯執(zhí)行和解釋執(zhí)行,或者實(shí)現(xiàn)兩種的混合方式,這主要建立在代碼的優(yōu)化情況之上。具有較高性能是編譯執(zhí)行的主要優(yōu)點(diǎn),只是在編譯過程中,將會(huì)消耗大量時(shí)間;在運(yùn)行過程中,解釋執(zhí)行可以對代碼實(shí)現(xiàn)動(dòng)態(tài)修改,是其最大的優(yōu)點(diǎn)。在調(diào)試過程中,可以實(shí)現(xiàn)代碼的任意修改,無需任何啟動(dòng)操作。2、Java技術(shù)的采用及自愈合框架的實(shí)現(xiàn)由于Java程語言具有動(dòng)態(tài)性,在字節(jié)碼工程的基礎(chǔ)上,此自愈合框架能夠?qū)崿F(xiàn)字節(jié)碼的動(dòng)態(tài)修改。整個(gè)軟件框架由環(huán)境監(jiān)控器、字節(jié)碼修改器、監(jiān)視程序、代碼演化器、程序分析器五個(gè)部分組成。在虛擬機(jī)的基礎(chǔ)上,與類文件形成了軟件框架,對環(huán)境管理器實(shí)現(xiàn)運(yùn)行。在實(shí)際運(yùn)行過程中,主要在此部分完成執(zhí)行。虛擬機(jī)可以實(shí)現(xiàn)對類文件的動(dòng)態(tài)加載,鏈接完成后,程序便可進(jìn)行正常進(jìn)行。自愈合框架的實(shí)現(xiàn),具有較強(qiáng)的監(jiān)控能力,在Java虛擬機(jī)的基礎(chǔ)上,對軟件組件進(jìn)行觀察,使程序進(jìn)行正常狀態(tài)。對于程序分析器而言,可以通過監(jiān)視數(shù)據(jù),對觀察數(shù)據(jù)進(jìn)行解釋,促進(jìn)對約束規(guī)則的分析,一旦程序出錯(cuò),對于錯(cuò)誤定位信息,診斷器能夠正確給出,有助于自愈合框架的實(shí)現(xiàn)。結(jié)束語綜上所述,為了實(shí)現(xiàn)軟件自愈合框架,Java技術(shù)的采用,構(gòu)建了愈合環(huán)路,促進(jìn)了自愈合功能的實(shí)現(xiàn),構(gòu)建了

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論