-
向後移植
鎖定
- 中文名
- 向後移植
- 性 質
- 對現有軟件進行更改的動作
- 目 的
- 修復舊版軟件中的安全性錯誤
- 領 域
- 計算機
向後移植軟件介紹
向後移植最簡單也最常見的情況是,在新版軟件中有一個已經被修復的安全性漏洞,而舊版軟件也存在這個漏洞。下面是一個簡化過的例子:
- 軟件v2.0版有一個已被修復的計算機安全隱患,只要將字符串 'is_unsecured' 更換成 'is_secured' 就可以修復。
- 同樣的安全漏洞也存在軟件v1.0版中,雖然是基於較新版本的代碼庫,但該字符串仍為 'is_unsecured'。
做出這些修改修復軟件v2.0版,並更改使其可以應用在軟件v1.0版上,此即稱為向後移植。
在現實生活中,這些改變可能非常容易(只需要更改幾行源代碼),也可能需要大規模的修改(修改分佈在許多文件中的源代碼)。在後面這一種情況下,向後移植可能會繁瑣且效率不彰,所以通常只在軟件的舊版本比新版本更加的被需要的情況下才會發生(例如,新版本可能仍有穩定性問題存在時)。
[1]
向後移植步驟
向後移植大致可分為以下這幾個步驟:
- 找出舊版軟件需要利用向後移植修復的問題
- 找出修復(通常是最近的)這個問題的源代碼更動
- 在舊版代碼的基礎上進行適應性修改(正確的向後移植)
- 一或多層次的質量控制- 測試產出的版本是否保持了先前的功能並正確實現了新的功能。
通常來説,多個此類型的修改都會集合成補丁套裝。
向後移植可以由核心軟件設計師提供。因為向後移植需要軟件源代碼的訪問權,這是閉源軟件向後移植的唯一方法-向後移植通常伴隨着二進制文件的升級。而開源軟件的部分,向後移植有時候會由Linux發行版做出,然候送到上游(就是提交到受影響的軟件的核心開發人員)。
[2]
向後移植示例
在Windows XP的Service Pack 3發佈時,許多Windows Vista的特性被向後移植到Windows XP上,讓許多最低要求是Windows Vista的應用程序(多數是遊戲)得以在Windows XP SP3上運行。
[1]
向後移植軟件維護
一般認為軟件維護只和修正錯誤有關。不過有研究指出80%的軟件維護工作是用在非糾正性的行動。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:6次歷史版本
- 最近更新: Good丶Hao