軟體可移植性

軟體可移植性指一種計算機上的軟體轉置到其它計算機上的能力(也可稱作軟體自動搬家)。軟體移植是實現功能的等價聯繫,而不是等同聯繫。軟體可移植性的主要標誌是:這類軟體有個通用的標準文本;它們獨立於具體的計算機。

基本介紹

  • 中文名:軟體可移植性
  • 外文名:Software portability
  • 定義:軟體轉置到其它計算機上的能力
  • 困難:軟體對宿主機硬體及作業系統接口
定義,性質,特性,移植 (軟體),系統平台,

定義

軟體相對於具體計算機的獨立性,從狹義上講,是指可移植軟體應獨立於計算機的硬體環境;從廣義上講,可移植軟體還應獨立於計算機的軟體,即高級的標準化的軟體,它的功能與機器系統結構無關,可跨越很多機器界限。從一種計算機向另一種計算機移植軟體時,首先要考慮所移植的軟體對宿主機硬體及作業系統的接口,然後設法用對目標機的接口代換之。因此,接口的改造容易與否,是衡量一個軟體可移植性高低的主要標誌之一。
可移植性是軟體質量之一,良好的可移植性可以提高軟體的生命周期。代碼的可移植性主題是軟體;可移植性是軟體產品的一種能力屬性,其行為表現為一種程度,而表現出來的程度與環境1密切相關。(注1:環境包括軟體環境,硬體環境和系統的組織環境)。軟體可移植性指與軟體從某一環境轉移到另一環境下的難易程度。為獲得較高的可移植性,在設計過程中常採用通用的程式設計語言運行支撐環境。儘量不用與系統的底層相關性強的語言。

性質

軟體工程中,可移植性(英語:Portability),又譯為移植性可攜性,是指使用高階語言寫成的軟體,在不同環境下,是否具備可以被重複使用的性質。一般來說,軟體是否具備可移植性的衡量標準,在於進行軟體移植時,需要付出多少工時為代價。具備高可移植性的軟體,在移植到不同系統平台時,並不需要做太多事情,因此能夠減少軟體開發及布署時的成本。為了使軟體具備高度可移植性,程式設計師需要使應用程式界面抽象化以及模組化。
以低階語言,例如彙編語言,寫成的軟體,一般來說,其可移植性都較低。

特性

其質量子特性有:適應性、易安裝性、共存性、易替換性和依從性。
可移植性並不是指所寫的程式不作修改就可以在任何計算機上運行,而是指當條件有變化時,程式無需作很多修改就可運行。

移植 (軟體)

軟體工程中,移植(英語:Porting)是一種軟體發展程式,將某個可執行的程式,由它原先的環境中,遷移到另一個環境,讓它可以重新運作。改變的環境可能是硬體軟體,包括處理器架構作業系統軟體庫等。
是當你進行軟體移植時,需要重新改寫的原始碼越少,需要做的工時越少,這個軟體的可移植性就越高。

系統平台

系統平台(英語:computing platform)是指在計算機里讓軟體運行的系統環境,包括硬體環境和軟體環境。典型的系統平台包括一台計算機的硬體體系結構(computer architecture)、作業系統運行時庫等。
系統平台可能包括:
  • 硬體本身,如一些嵌入式系統,不需要作業系統,直接訪問硬體。
  • 基於Web的軟體使用的瀏覽器。瀏覽器本身也是在一個系統平台上運行的,但是瀏覽器里的套用並不關心。
  • 應用程式,應用程式中可以支持一些腳本語言,比如Excel中的宏。
  • 提供一些功能的軟體框架。
  • 作為服務的雲集算平台。社交網路 Twitter和facebook等也可以看作一個開發平台。
  • 虛擬機(VM)如 Java 虛擬機。套用被編譯成和機器碼類似的位元組碼,可以被虛擬機執行。
  • 完整系統的虛擬化版本。包括虛擬硬體、作業系統、軟體和存儲。

相關詞條

熱門詞條

聯絡我們