霽彩華年,因夢(mèng)同行—— 慶祝深圳霽因生物醫(yī)藥轉(zhuǎn)化研究院成立十周年 情緒益生菌PS128助力孤獨(dú)癥治療,權(quán)威研究顯示可顯著改善孤獨(dú)癥癥狀 PARP抑制劑氟唑帕利助力患者從維持治療中獲益,改寫(xiě)晚期卵巢癌治療格局 新東方智慧教育發(fā)布“東方創(chuàng)科人工智能開(kāi)發(fā)板2.0” 精準(zhǔn)血型 守護(hù)生命 腸道超聲可用于檢測(cè)兒童炎癥性腸病 迷走神經(jīng)刺激對(duì)抑郁癥有積極治療作用 探索梅尼埃病中 MRI 描述符的性能和最佳組合 自閉癥患者中癡呆癥的患病率增加 超聲波 3D 打印輔助神經(jīng)源性膀胱的骶神經(jīng)調(diào)節(jié) 胃食管反流病患者耳鳴風(fēng)險(xiǎn)增加 間質(zhì)性膀胱炎和膀胱疼痛綜合征的臨床表現(xiàn)不同 研究表明 多語(yǔ)言能力可提高自閉癥兒童的認(rèn)知能力 科學(xué)家揭示人類(lèi)與小鼠在主要癌癥免疫治療靶點(diǎn)上的驚人差異 利用正確的成像標(biāo)準(zhǔn)改善對(duì)腦癌結(jié)果的預(yù)測(cè) 地中海飲食通過(guò)腸道細(xì)菌變化改善記憶力 讓你在 2025 年更健康的 7 種驚人方法 為什么有些人的頭發(fā)和指甲比其他人長(zhǎng)得快 物質(zhì)的使用會(huì)改變大腦的結(jié)構(gòu)嗎 飲酒如何影響你的健康 20個(gè)月,3大平臺(tái),300倍!元育生物以全左旋蝦青素引領(lǐng)合成生物新紀(jì)元 從技術(shù)困局到創(chuàng)新錨點(diǎn),天與帶來(lái)了一場(chǎng)屬于養(yǎng)老的“情緒共振” “華潤(rùn)系”大動(dòng)作落槌!昆藥集團(tuán)完成收購(gòu)華潤(rùn)圣火 十七載“冬至滋補(bǔ)節(jié)”,東阿阿膠將品牌營(yíng)銷(xiāo)推向新高峰 150個(gè)國(guó)家承認(rèn)巴勒斯坦國(guó)意味著什么 中國(guó)海警對(duì)非法闖仁愛(ài)礁海域菲船只采取管制措施 國(guó)家四級(jí)救災(zāi)應(yīng)急響應(yīng)啟動(dòng) 涉及福建、廣東 女生查分查出608分后,上演取得理想成績(jī)“三件套” 多吃紅色的櫻桃能補(bǔ)鐵、補(bǔ)血? 中國(guó)代表三次回?fù)裘婪焦糁肛?zé) 探索精神健康前沿|情緒益生菌PS128閃耀寧波醫(yī)學(xué)盛會(huì),彰顯科研實(shí)力 圣美生物:以科技之光,引領(lǐng)肺癌早篩早診新時(shí)代 神經(jīng)干細(xì)胞移植有望治療慢性脊髓損傷 一種簡(jiǎn)單的血漿生物標(biāo)志物可以預(yù)測(cè)患有肥胖癥青少年的肝纖維化 嬰兒的心跳可能是他們說(shuō)出第一句話(huà)的關(guān)鍵 研究發(fā)現(xiàn)基因檢測(cè)正成為主流 血液測(cè)試顯示心臟存在排斥風(fēng)險(xiǎn) 無(wú)需提供組織樣本 假體材料有助于減少靜脈導(dǎo)管感染 研究發(fā)現(xiàn)團(tuán)隊(duì)運(yùn)動(dòng)對(duì)孩子的大腦有很大幫助 研究人員開(kāi)發(fā)出診斷 治療心肌炎的決策途徑 兩項(xiàng)研究評(píng)估了醫(yī)療保健領(lǐng)域人工智能工具的發(fā)展 利用女子籃球隊(duì)探索足部生物力學(xué) 抑制前列腺癌細(xì)胞:雄激素受體可以改變前列腺的正常生長(zhǎng) 肽抗原上的反應(yīng)性半胱氨酸可能開(kāi)啟新的癌癥免疫治療可能性 研究人員發(fā)現(xiàn)新基因療法可以緩解慢性疼痛 研究人員揭示 tisa-cel 療法治療復(fù)發(fā)或難治性 B 細(xì)胞淋巴瘤的風(fēng)險(xiǎn) 適量飲酒可降低高危人群罹患嚴(yán)重心血管疾病的風(fēng)險(xiǎn) STIF科創(chuàng)節(jié)揭曉獎(jiǎng)項(xiàng),新東方智慧教育榮膺雙料殊榮 中科美菱發(fā)布2025年產(chǎn)品戰(zhàn)略布局!技術(shù)方向支撐產(chǎn)品生態(tài)縱深! 從雪域高原到用戶(hù)口碑 —— 復(fù)方塞隆膠囊的品質(zhì)之旅
您的位置:首頁(yè) >要聞 >

反向工程的合法性條件有哪些(反向工程)

關(guān)于反向工程的合法性條件有哪些,反向工程這個(gè)問(wèn)題很多朋友還不知道,今天小六來(lái)為大家解答以上的問(wèn)題,現(xiàn)在讓我們一起來(lái)看看吧!

1、首先聲明是轉(zhuǎn)來(lái)的,因?yàn)槲一卮鹉氵@個(gè)問(wèn)題帶了個(gè)網(wǎng)址,就一直提示"敏感"回答不上0?引言??? 隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,計(jì)算機(jī)技術(shù)應(yīng)用的領(lǐng)域也逐漸擴(kuò)大,人們希望計(jì)算機(jī)這一智能體能夠解決各個(gè)領(lǐng)域的更多、更復(fù)雜的問(wèn)題,從而也對(duì)計(jì)算機(jī)軟件產(chǎn)品的功能、質(zhì)量、開(kāi)發(fā)成本和時(shí)間提出了越來(lái)越多的要求,軟件技術(shù)受到了前所未有的挑戰(zhàn)。

2、傳統(tǒng)的軟件工程主要關(guān)注新軟件的分析與設(shè)計(jì),但隨著軟件系統(tǒng)的規(guī)模和復(fù)雜度日益增長(zhǎng),軟件的生命周期越來(lái)越長(zhǎng),軟件開(kāi)發(fā)的很大一部分工作集中于維護(hù)和改造現(xiàn)有的軟件系統(tǒng),而這些現(xiàn)有系統(tǒng)的需求、設(shè)計(jì)決策、業(yè)務(wù)規(guī)則、歷史數(shù)據(jù)等統(tǒng)稱(chēng)為遺產(chǎn)系統(tǒng)(LS,Legacy System),LS是一種巨大的、長(zhǎng)期的投資,因?yàn)槿绾纬浞掷眠@些有用的資產(chǎn)對(duì)新系統(tǒng)的開(kāi)發(fā)顯得尤其重要。

3、另一方面,隨著Internet技術(shù)的普及,Web用戶(hù)增多,很多軟件廠商需要將系統(tǒng)移植到Web上,進(jìn)一步加劇了對(duì)軟件維護(hù)的需求。

4、實(shí)踐研究表明,軟件資源預(yù)算的50%~80%消耗在對(duì)現(xiàn)有系統(tǒng)的維護(hù)上,而軟件維護(hù)者理解程序源代碼的時(shí)間要占整個(gè)軟件維護(hù)的47%~62%。

5、軟件維護(hù)已經(jīng)成為軟件工程面臨的重要課題之一,而正確和全面地理解軟件系統(tǒng)是對(duì)軟件進(jìn)行維護(hù)的前提,軟件逆向工程應(yīng)運(yùn)而生,成為軟件工程領(lǐng)域的一個(gè)新興分支,其目標(biāo)就是開(kāi)發(fā)幫助人們理解已有軟件系統(tǒng)的方法、工具,為軟件系統(tǒng)的維護(hù)和演化提供支持。

6、??? 文中主要介紹逆向工程的基本概念、主要步驟、分析方法、研究現(xiàn)狀、存在的問(wèn)題以及發(fā)展方向。

7、1 逆向工程的基本概念??? “逆向工程”這個(gè)名詞最早出現(xiàn)在對(duì)硬件產(chǎn)品的分析中,人們分析硬件產(chǎn)品以便改進(jìn)自己的產(chǎn)品。

8、M.G.Rekoffir將逆向工程定義為:對(duì)一個(gè)復(fù)雜的硬件系統(tǒng)實(shí)施有條理的檢查,以開(kāi)發(fā)出關(guān)于這個(gè)系統(tǒng)的一組規(guī)范說(shuō)明的過(guò)程。

9、在把這個(gè)概念應(yīng)用到軟件系統(tǒng)過(guò)程中,研究人員發(fā)現(xiàn)利用其中的許多方法可以獲得對(duì)系統(tǒng)以及系統(tǒng)結(jié)構(gòu)的理解。

10、然而,對(duì)一個(gè)硬件系統(tǒng)實(shí)施逆向工程,一般是為了得到這個(gè)系統(tǒng)的復(fù)制品,對(duì)一個(gè)軟件系統(tǒng)實(shí)施逆向工程,一般是為了獲得對(duì)這個(gè)系統(tǒng)在設(shè)計(jì)層次上的理解,以便于系統(tǒng)的維護(hù)、鞏固、移植、改進(jìn)。

11、??? 軟件逆向工程的基本原理是抽取軟件系統(tǒng)的主要部分而隱藏細(xì)節(jié),然后使用抽取出的實(shí)體在高層上描述軟件系統(tǒng)。

12、在軟件工程領(lǐng)域,迄今為止沒(méi)有統(tǒng)一的逆向工程定義,較為通用的是Elliot Chikofsky和Cross1990年定義的逆向工程的相關(guān)術(shù)語(yǔ)。

13、軟件工程通常被認(rèn)為是開(kāi)發(fā)一個(gè)新的系統(tǒng),盡管軟件工程也包括逆向工程和再工程,為了避免對(duì)軟件工程含義的誤解,引進(jìn)了正向工程的概念。

14、??? (1)正向工程(Forward Engineering):從系統(tǒng)的高層抽象和邏輯上獨(dú)立于實(shí)現(xiàn)的設(shè)計(jì)到系統(tǒng)的物理設(shè)計(jì)的傳統(tǒng)過(guò)程,具體地說(shuō)是從用戶(hù)的需求到高層設(shè)計(jì),再到底層設(shè)計(jì),最后到實(shí)現(xiàn)的過(guò)程。

15、??? (2)逆向工程(Reverse Engineering):對(duì)系統(tǒng)進(jìn)行分析,以確定系統(tǒng)的組件和組件之間的相互作用,以其他形式表示系統(tǒng),或在較高的抽象層次上表示系統(tǒng)的過(guò)程。

16、值得說(shuō)明的是,在對(duì)一個(gè)系統(tǒng)實(shí)施逆向工程時(shí),并不改變這個(gè)系統(tǒng)本身,也不包括在此系統(tǒng)上構(gòu)建新的系統(tǒng)的過(guò)程。

17、??? (3)重構(gòu)(Restructuring):保持系統(tǒng)外部行為(功能和語(yǔ)義)的前提下,在統(tǒng)一抽象層次上改變表示形式。

18、??? (4)再工程(Reengineering):通過(guò)逆向工程、重構(gòu)和正向工程對(duì)現(xiàn)有系統(tǒng)進(jìn)行審查和改造,將其重組為一種新形式。

19、??? (5)設(shè)計(jì)恢復(fù)(Design Recovery):結(jié)合目標(biāo)系統(tǒng)、領(lǐng)域知識(shí)和外部消息認(rèn)定更高層次的抽象。

20、其中,再工程、設(shè)計(jì)恢復(fù)不改變系統(tǒng),重構(gòu)改變了系統(tǒng)。

21、但不改變其功能,再工程涉及到正向工程與逆向工程的聯(lián)合使用,逆向工程解決程序的理解問(wèn)題,正向工程檢驗(yàn)?zāi)男┕δ苄枰黾?、保留和刪除,再工程改變了系統(tǒng)的功能和方向,是最根本和最有深遠(yuǎn)影響的擴(kuò)展。

22、??? 圖1顯示這些概念之間的關(guān)系。

23、2 主要步驟和分析方法??? 由逆向工程定義可知:軟件逆向工程的任務(wù)包括分析系統(tǒng)、抽象系統(tǒng)和展現(xiàn)系統(tǒng),從而實(shí)現(xiàn)協(xié)助用戶(hù)理解系統(tǒng)的目的。

24、??? 分析系統(tǒng)是指分析系統(tǒng)的結(jié)構(gòu)及運(yùn)行過(guò)程,但不管目標(biāo)系統(tǒng)面向何種應(yīng)用領(lǐng)域,分析系統(tǒng)不外乎是分析系統(tǒng)的靜態(tài)信息和動(dòng)態(tài)信息。

25、目標(biāo)系統(tǒng)面對(duì)不同的應(yīng)用領(lǐng)域,要實(shí)現(xiàn)抽象目標(biāo)系統(tǒng)的任務(wù),需要領(lǐng)域知識(shí)和專(zhuān)家的經(jīng)驗(yàn)。

26、展現(xiàn)系統(tǒng)最好的方式是使系統(tǒng)可視化。

27、圖1 關(guān)系圖??? 現(xiàn)有的逆向工程分析方法主要有以下4種:??? (1)詞法分析和語(yǔ)法分析。

28、??? 該方法主要是對(duì)程序源碼進(jìn)行分析,得到程序信息的多種有用表示,其中最常用的就是交叉引用列表。

29、通過(guò)語(yǔ)法分析可以得到兩類(lèi)表示:分析樹(shù)(parse tree)、抽象語(yǔ)法樹(shù)AST(abstract syntax tree),其中AST是更復(fù)雜的程序分析工具基礎(chǔ),包含了和程序的實(shí)際內(nèi)容相關(guān)的細(xì)節(jié)。

30、??? (2)圖形化方法。

31、??? 圖形化方法包括控制流分析、數(shù)據(jù)流分析以及程序依賴(lài)圖。

32、控制流分析是在確定程序語(yǔ)法結(jié)構(gòu)之后進(jìn)行。

33、數(shù)據(jù)流分析關(guān)注于解決程序中從定義到使用的過(guò)程的相關(guān)的問(wèn)題,比控制流分析要復(fù)雜得多。

34、程序依賴(lài)圖是數(shù)據(jù)流分析的進(jìn)一步改進(jìn),比數(shù)據(jù)流分析更復(fù)雜。

35、在程序依賴(lài)圖中,控制流和數(shù)據(jù)流依賴(lài)放在一起處理,程序依賴(lài)圖還具有這樣的結(jié)構(gòu)特性:一個(gè)程序依賴(lài)圖描述了一個(gè)控制依賴(lài)的區(qū)域。

36、??? (3)程序切片。

37、??? 切片技術(shù)來(lái)源于數(shù)據(jù)流分析方法,已經(jīng)成為很多程序理解工具的基礎(chǔ)。

38、一個(gè)程序切片是由程序中的一些語(yǔ)句和判定表達(dá)式組成的集合。

39、這些語(yǔ)句和判定表達(dá)式可能會(huì)影響在程序的某個(gè)位置上所定義或使用的變量的值。

40、利用切片技術(shù)可以將關(guān)注點(diǎn)確定在一個(gè)較小范圍而不是關(guān)注整個(gè)程序。

41、??? (4)動(dòng)態(tài)分析。

42、??? 靜態(tài)分析是對(duì)程序源碼進(jìn)行分析。

43、動(dòng)態(tài)分析則是在程序運(yùn)行時(shí)進(jìn)行分析,基本方法是對(duì)程序進(jìn)行植入。

44、植入是在一種在全局范圍內(nèi)更改源代碼以添加額外操作的過(guò)程。

45、這種方法的基本原理是:利用代碼的結(jié)構(gòu)信息,依據(jù)固定的規(guī)則,將軟件觸發(fā)器添加到代碼中。

本文分享完畢,希望對(duì)大家有所幫助。

標(biāo)簽:

免責(zé)聲明:本文由用戶(hù)上傳,與本網(wǎng)站立場(chǎng)無(wú)關(guān)。財(cái)經(jīng)信息僅供讀者參考,并不構(gòu)成投資建議。投資者據(jù)此操作,風(fēng)險(xiǎn)自擔(dān)。 如有侵權(quán)請(qǐng)聯(lián)系刪除!

最新文章