Portabilita

Enciclopedia della Scienza e della Tecnica (2008)

portabilità

Mauro Cappelli

Proprietà di un sistema, tipicamente software, di poter essere utilizzato su diverse piattaforme. La portabilità (porting) di un software può essere anche definita in termini relativi: un programma si dice allora portabile se il costo di tale operazione (corrispondente alla scrittura di modifiche, dette appunto port, al codice sorgente) è inferiore al costo di riscrittura dell’intero codice. Il livello di portabilità risulta pertanto una grandezza inversamente proporzionale al suo costo. Oggi, l’uso esteso di pochissime CPU (Central processing unit) e di un ridottissimo numero di sistemi operativi, rende la portabilità del software un problema secondario per le applicazioni legate ai personal computer. Essa può diventare invece rilevante per il mercato dell’elettronica di consumo, che fa sempre più largo uso di embedded systems. L’ISO (International standard organization) e l’ANSI (American national standards institute) hanno promulgato degli standard che consentono di facilitare la portabilità in ambienti diversi, riducendola sostanzialmente all’operazione duplice di caricamento e ricompilazione del software sulla nuova piattaforma. In tal caso la portabilità può essere considerata come caso particolare della riusabilità del software. Nel caso più semplice della portabilità di dati, l’impiego del codice ASCII ha ormai reso tutti i file di dati leggibili quale che sia la piattaforma impiegata. Nel caso della portabilità dei programmi, occorre operare una distinzione sulla base del linguaggio di programmazione impiegato per scriverli. Vi sono infatti alcuni linguaggi che non prevedono l’esistenza di compilatori per tutte le piattaforme. È pertanto necessario anche in tal caso ricorrere a un processo di standardizzazione che renda la compilazione possibile in qualsiasi ambiente (come è accaduto al linguaggio C, di cui esistono la standardizzazioni sia ANSI sia ISO). Linguaggi non compilati ma interpretati o parzialmente interpretati, come Java, possono essere eseguiti in qualsiasi ambiente e non presentano pertanto problemi di portabilità.

© Istituto della Enciclopedia Italiana - Riproduzione riservata

CATEGORIE