Il software

I programmi in un sistema di elaborazione

Un programma è una sequenza di istruzioni elementari che un computer, o più in generale un dispositivo digitale, deve eseguire per svolgere un determinato compito. Ogni programma elabora una serie di dati e informazioni che gli vengono forniti in ingresso (input) e restituisce risultati in uscita (output).

Un programma in esecuzione viene detto processo.

Il Software (dall’inglese soft morbido e ware componente) è l’insieme di tutti i programmi installati e utilizzabili in un sistema di elaborazione e costituisce dunque la componente logica del sistema, in contrapposizione alla parte fisica detta hardware. In realtà il termine software è normalmente utilizzato come sinonimo della parola programma.

Software di base e software applicativo [indice]

Il software di un sistema informatico viene normalmente suddiviso in due categorie:

Software di base o di sistema: dedicato alla gestione delle funzioni elementari dell’elaboratore, ne consente quindi il funzionamento.

Software applicativo: questo tipo di programma può agire esclusivamente con il tramite del software di base ed è utilizzato per implementare nuove funzionalità nel sistema di elaborazione, permettendo così all’utente di realizzare le proprie esigenze. Ad esempio un programma di elaborazione testi permette di realizzare lettere, relazioni, documenti, un foglio elettronico consente di effettuare operazioni matematiche semplici o complesse, un programma per presentazioni è generalmente utilizzato per mostrare contenuti relativi a un determinato argomento, e così via.

Il sistema operativo [indice]

Il sistema operativo o SO, è un insieme di programmi di base che rende possibile la gestione, l’elaborazione e l’immagazzinamento delle informazioni ed è l’intermediario tra gli utenti e il sistema informatico.

Il sistema operativo infatti si occupa di:

  • gestire le risorse hardware del sistema informatico: la memoria, il processore, le periferiche, ecc.
  • consentire la comunicazione con il computer, agendo da interfaccia, cioè da intermediario tra l’utente e la macchina.
  • controllare e gestire l’esecuzione dei programmi applicativi installati
  • controllare e gestire gli errori software e hardware che potrebbero verificarsi

Se un sistema operativo è in grado di esegue contemporaneamente più programmi si parla di multiprogrammazione o multitask.

Esistono sistemi operativi molto diversi per struttura, prestazioni e in relazione al dispositivo digitale utilizzato.

I principali sistemi operativi per computer sono:

  • Windows: sistema operativo con interfaccia grafica, prodotto dalla Microsoft nelle versioni 3.0, 3.1, 3.11, 95, 98, NT (New Technology), 2000, Millenium Edition, XP (eXPerience),Vista, Windows 7, Windows 8, Windows 10, Windows 11.
  • Mac OS: prodotto dalla Apple per i computer Macintosh e PowerPC, ha avuto una diffusione inferiore rispetto a Windows, anche se i computer Apple restano i più utilizzati da chi opera in ambito grafico: studi di architettura, studi grafici, case editrici, ecc.
  • Unix: nato negli anni ’60 nei laboratori della AT&T, molto utilizzato nei server Internet e nelle workstation, è stato anche la base di partenza per altri sistemi operativi, come ad esempio Linux.
  • Linux: la sua diffusione rappresenta il simbolo del “software libero”, infatti Il suo inventore, il finlandese Linus Torvalds, lo ha distribuito gratuitamente in tutto il mondo, facendo in modo che il suo codice sorgente fosse accessibili a tutti (open source). In questo modo qualsiasi utente può contribuire ad apportare miglioramenti al programma, tant’è vero che esistono moltissime versioni diverse di Linux: Ubuntu, Debian, Mint, Manjaro, Elementary OS, Arch, Kali, EndeavourOS, Slackware, Fedora …

Tablet e smartphone, che hanno caratteristiche hardware diverse dai computer, dispongono di sistemi operativi propri, ad esempio: Android, iOs usato solo sui prodotti Apple, BlackberryOs, Windows phone, Symbian, ecc.

I sistemi operativi possono essere suddivisi anche in base al modo con cui l’utente interagisce con il dispositivo, ovvero in base al tipo di interfaccia computer-utente utilizzata:

Sistemi ad interfaccia testuale o a linea di comando (Command Line): i comandi sono forniti dall’utente tramite stringhe di caratteri seguendo una grammatica e una sintassi ben definite. Un SO di questo tipo è MS-DOS (Microsoft Disk Operating System) o più semplicemente DOS. Commercializzato dalla Microsoft, è stato il sistema operativo più diffuso al mondo fino al 1995, oggi non è più in produzione, ma all’interno di Windows è presente un programma che lo emula, chiamato Prompt dei comandi. Questo SO presentava una schermata nera e vuota con una lineetta bianca lampeggiante, detta prompt, dopo la scritta C:\>. Non esistevano quindi icone su cui fare clic con il mouse e tutti i comandi dovevano essere digitati da tastiera. Il sistema MS-DOS è giunto sino alla versione 6, dopo di che è stato definitivamente sostituito dal sistema operativo Windows.

dos

Sistemi ad interfaccia grafica: o GUI (Graphical User Interface), è una interfaccia più amichevole o user-friendly, poichè consente all’utente di interagire in maniera più semplice, veloce e intuitiva con il computer grazie all’utilizzo di oggetti grafici (finestre e icone) che consentono di rappresentare i comandi, i file e le applicazioni. Tutte le operazioni (impartire comandi, scegliere opzioni, etc.) possono essere svolte utilizzando il mouse o varie combinazioni da tastiera.

Il software applicativo [indice]

Il software applicativo rappresenta quell’insieme di programmi che l’utente installa nel sistema digitale in base alle proprie esigenze. Può essere classificato in:

software a scopo generale o general purpose: sono utilizzabili e adattabili in ambiti e per esigenze diverse, si usano ad esempio per l’automazione d’ufficio (Microsoft Office), la progettazione, il publishing e la multimedialità.

programmi a scopo specifico o special purpose: utilizzati per funzioni più specifiche, ad esempio, gestione di magazzini, gestione dei conti correnti bancari, contabilità, fatturazione, anagrafe comunale, ecc.

Le tipologie di software applicativo più utilizzate sono:

  • elaboratore di testo o word processor: consente di scrivere, correggere e stampare qualsiasi tipo di documento di testo: lettere, relazioni, curriculum vitae, articoli, tesi, libri di centinaia di pagine, il più diffuso è senza dubbio Microsoft Word.
  • foglio elettronico o spreadsheet: consente di elaborare tabelle divise in tante caselle, dette celle, in cui è possibile inserire numeri, date e altri valori su cui effettuare calcoli anche molto complessi, tramite l’utilizzo d semplici formule, ma anche sofisticate funzioni matematiche, finanziarie, contabili e commerciali. I risultati di questi calcoli possono essere inoltre rappresentati attraverso grafici e diagrammi di vario tipo. Il programma per fogli elettronici più diffuso è sicuramente Excel prodotto dalla Microsoft.
  • database o DBMS (Database Management System): consente di gestire archivi di dati di tipo diverso, tramite efficaci operazioni di ordinamento, selezione, e recupero delle informazioni richieste;
  • programma di presentazione: strumento multimediale che permette di comunicare e condividere progetti, idee e contenuti tramite la creazione e gestione di diapositive, o slide, contenenti testo, suoni, immagini video. Il più diffuso è Microsoft PowerPoint.
  • browser: programma che consente di navigare in internet, sfogliando le innumerevoli pagine ipertestuali che compongono il web. Alcuni esempi di browser sono: Google Chrome, Mozilla Firefox, Microsoft Edge.

Ma esistono anche programmi:

  • per la compressione dei file (Winzip, Winrar, etc.);
  • antivirus (Norton, McAffee, Panda, etc.);
  • per la gestione della posta elettronica (Eudora, Outlook Express, etc.);
  • per il ritocco fotografico (Photoshop, PaintShop Pro, etc.);
  • lettori audio/video (Quick Time Player, Real Player, etc.);

I software con funzionalità elementari che si installano unitamente al sistema operativo, prendono il nome di programmi accessori. In Windows, ad esempio programmi di questo tipo sono Blocco note, Calcolatrice, WordPad, etc.

Le licenze per l’utilizzo dei software [indice]

Tutte le opere frutto dell’ingegno e dell’intelletto umano con caratteristiche artistiche e culturali, ad esempio musiche, video, libri, ecc., sono tutelate dalle legge sul diritto d’autore o legge sul copyright. I programmi informatici non fanno eccezione e sono anch’essi ritenuti opere dell’ingegno e dunque tutelati dalla legge sul diritto d’autore.

I programmi non possono essere usati e duplicati senza autorizzazione e in generale non è permesso:

  • fare delle copie non autorizzate di un software o di parte di esso;
  • installarlo sul computer o cederlo ad altri senza avere l’autorizzazione

Quando si acquista un programma, infatti, non si diventa proprietari del programmi, ma si acquisisce soltanto la licenza d’uso, detta EULA, End User License Agreement (accordo di licenza con l’utente finale), ovvero il contratto tra il fornitore di un programma e l’utente.

EULA solitamente permette:

  • di utilizzare il software su un solo computer, salvo diverse indicazioni;
  • la possibilità di fare un’unica copia di sicurezza, del supporto con cui il software è distribuito.

La licenza software è in definitiva un documento legale senza il quale un programma non può essere distribuito o modificato senza il consenso esplicito dell’autore. Esistono però alcune licenze d’uso particolari:

  • shareware: licenza per programmi che possono essere utilizzati gratuitamente per un determinato periodo di tempo, oppure in modalità limitata nelle funzionalità. Per poter utilizzare il programma in modo completo e illimitato sarà necessario acquistare la licenza d’uso.
  • freeware: la licenza d’uso è completamente gratuita e senza limite di tempo. Non è però consentito modificare o rivendere il programma come proprio.
  • di pubblico dominio o public domain: se in presenza di un software freeware che può essere liberamente modificato, con l’autorizzazione dell’autore.
  • open source: è libero da ogni vincolo commerciale, l’uso è gratuito e il codice con cui è stato scritto, il codice sorgente, è a disposizione di chiunque lo voglia modificare.

Guido Mondelli

Docente formatore informatico

Download dell’articolo in formato PDF