Programportabilitet

Betegner omfanget af de ændringer, det er nødvendigt at foretage i et program, såfremt programmet skal flyttes fra én type computer (en platform) til en anden og stadig være i stand til at fungere efter sin hensigt. Fuldstændig eller 100% portabilitet fordrer egentlig, at et program skal kunne flyttes som maskinkode; men i praksis hævdes (100%) portabilitet opfyldt, såfremt et program kan flyttes maskinelt, sædvanligvis ved at kildeprogrammet fra den gamle computer kan flyttes og derefter blot skal genoversættes på den nye computer. Fuld portabilitet er en af designkriterierne bag Java.

Manglende programportabilitet er især knyttet til anvendelsen af forskellige styresystemer, men skyldes også forskelle mellem forskellige fabrikater af det - tilsyneladende - samme programmeringssprog samt forsyndelser fra programmøren i form af små tricks, f.eks. anvendelse af fysiske adresser i stedet for symbolske navne på variable.

Programportabilitet på maskinkodeniveau findes i udbredt omfang kun på PC'er, hvor grundlaget er den omfattende anvendelse af standardiserede styresystemer og ensartet maskinel. Portabilitet på kildeprogramniveau findes især, hvor - tilnærmeligt - samme styresystem anvendes af flere computertyper, og er således et ofte fremført argument fra tilhængerne af UNIX-styresystemet.

Forfattere: 
Klaus Hansen
Casper Thomsen