← TIC — Tecnologie dell'informazione e della comunicazione  ·  Il computer e l'informazione digitale

Hardware e software: la differenza

In questa UDA abbiamo conosciuto l'hardware di un computer, pezzo per pezzo, e come i suoi componenti sono organizzati secondo l'architettura di von Neumann. Chiudiamo ora il quadro facendo chiarezza fino in fondo sul rapporto tra hardware e software — e su un aspetto che spesso si dà per scontato: chi possiede davvero un programma, e cosa possiamo farci legalmente.

Per riassumere in una frase: l'hardware è la parte fisica del computer, tutto ciò che puoi toccare; il software è l'insieme dei programmi che dicono all'hardware cosa fare. Senza software, l'hardware più potente è solo un oggetto inerte.

I livelli di un computer: dall'hardware fino a chi lo usa
I livelli di un computer: dall'hardware fino a chi lo usaSchema originale

Il software si divide in due grandi categorie. Il software di sistema — il più importante è il sistema operativo (Windows, macOS, Linux, Android, iOS) — gestisce le risorse hardware e fa da intermediario tra te e la macchina: si occupa di file, memoria, periferiche, sicurezza. Il software applicativo è invece tutto ciò che usi per fare qualcosa di specifico: un elaboratore di testi, un browser, un videogioco. Il software applicativo non parla direttamente con l'hardware: si appoggia sempre al sistema operativo.

Tux, la mascotte di Linux: forse il sistema operativo open source più famoso
Tux, la mascotte di Linux: forse il sistema operativo open source più famosoLarry Ewing, Simon Budig, Garrett LeSage — Wikimedia Commons, libero uso
Focus

Sistema operativo vs software applicativo

Il sistema operativo gestisce l'hardware e fa da intermediario (esempi: Windows, Linux, Android). Il software applicativo si appoggia al sistema operativo per svolgere un compito specifico (esempi: Word, un browser, un videogioco).

VideoIl Sistema Operativo in 5 minuti (Informaticaso)VideoCorso Informatica #3: Software e Sistemi Operativi (60 Secondi di Genio)VideoPerché usare software libero? (Andrea Cartotto, Linux Day 2018)

Non tutto il software si usa e si distribuisce allo stesso modo. Esistono diverse licenze, cioè le regole che stabiliscono cosa puoi fare con un programma:

  • il software proprietario ha un codice sorgente chiuso: puoi usarlo (spesso a pagamento) ma non vederlo né modificarlo;
  • il freeware è gratuito, ma resta comunque proprietario: non puoi modificarne il codice;
  • lo shareware si può provare gratis per un periodo limitato, poi richiede un pagamento per continuare a usarlo;
  • l'open source ha il codice sorgente aperto: chiunque può leggerlo, modificarlo e ridistribuirlo, di solito rispettando alcune condizioni.
Le principali tipologie di licenza software, dalla più chiusa alla più aperta
Le principali tipologie di licenza software, dalla più chiusa alla più apertaSchema originale
Focus

Il firmware: un software nascosto nell'hardware

Il firmware è un software speciale, scritto direttamente su un chip di memoria del componente hardware stesso (per esempio il BIOS/UEFI della scheda madre). A differenza dei normali programmi, resta nel dispositivo anche a computer spento ed è il primo software ad avviarsi quando accendi il computer.

Richard Stallman, fondatore del movimento del software libero
Richard Stallman, fondatore del movimento del software liberoWikimedia Commons, licenza libera
💡 Lo sapevi?

Il movimento del software libero

Nel 1983 il programmatore Richard Stallman lanciò il progetto GNU per creare un sistema operativo completamente libero. La sua idea, oggi alla base di Linux e di gran parte di Internet, è che il codice sorgente debba poter essere letto e migliorato da chiunque.

💡 Lo sapevi?

Da un garage a un impero del software proprietario

Nello stesso periodo in cui nasceva l'idea del software libero, nel 1975 Bill Gates e Paul Allen fondavano Microsoft puntando sul modello opposto: vendere licenze d'uso di software proprietario. Le due filosofie convivono ancora oggi, spesso nello stesso computer.

Ogni volta che installi un programma, prima o poi compare un lungo testo che quasi nessuno legge fino in fondo: la EULA (End User License Agreement, "contratto di licenza con l'utente finale"). È un vero contratto: accettandolo, ti impegni a rispettare le regole d'uso stabilite da chi ha creato il software. Il software, come un libro o una canzone, è protetto dal diritto d'autore (copyright): copiarlo o distribuirlo senza permesso non è solo scorretto, è illegale, e si chiama pirateria informatica.

Focus

Copyright e licenza open source

Il copyright protegge automaticamente ogni software creato: nessuno può copiarlo senza permesso. Una licenza open source non elimina il copyright, ma è il modo in cui l'autore concede in anticipo il permesso di leggere, modificare e ridistribuire il codice, a certe condizioni.

💡 Lo sapevi?

Il click più veloce del mondo

Alcuni studi stimano che meno del 10% delle persone legga davvero una EULA prima di accettarla: nel 2010 un negozio online inserì per gioco una clausola che prometteva 1000 sterline a chi l'avesse notata e contattata — solo una persona su migliaia di acquirenti se ne accorse.

💡 Lo sapevi?

Il bug che fece paura al mondo intero

Alla fine degli anni '90 molti programmi salvavano l'anno con solo due cifre ("99" invece di "1999"): si temeva che al 1° gennaio 2000 i computer di tutto il mondo potessero "impazzire" pensando di essere tornati al 1900. Il cosiddetto "Millennium Bug" costò miliardi di dollari in correzioni preventive, e alla fine i disagi reali furono minimi.

🧪 Attività pratica⏱ 15 min

Licenza detective

In coppia, per ciascuno di questi casi stabilite quale tipo di licenza è coinvolta e se è una situazione legale o no: (1) scarichi gratis un film da un sito pirata; (2) installi Linux e modifichi il suo codice; (3) usi la versione di prova di un programma per 30 giorni; (4) copi e rivendi un software proprietario senza permesso. Motivate ogni risposta.

Nella prossima UDA lasceremo il "corpo" del computer per entrare nel dettaglio di come rappresenta davvero le informazioni al suo interno: il sistema binario.

HARDWARE E SOFTWARE Software di sistema Software applicativo Licenze Copyright e EULA

Mettiti alla prova

1. Qual è la differenza tra software di sistema e software applicativo?

Il software di sistema (come il sistema operativo) gestisce le risorse hardware; il software applicativo svolge un compito specifico appoggiandosi al sistema operativo.

2. Fai un esempio di sistema operativo e uno di software applicativo.

Esempi di sistema operativo: Windows, Linux, Android. Esempi di software applicativo: Word, un browser, un videogioco.

3. Cos'è il software open source?

Software con codice sorgente aperto, che chiunque può leggere, modificare e ridistribuire, di solito a certe condizioni.

4. Cos'è una licenza proprietaria?

Una licenza che permette di usare il software (a pagamento o gratis) ma non di vederne o modificarne il codice sorgente.

5. Cosa significa EULA e a cosa serve?

End User License Agreement: il contratto che accettiamo installando un software, che stabilisce le regole d'uso.

6. Perché copiare e distribuire un software senza permesso è illegale?

Perché il software è protetto dal diritto d'autore (copyright); copiarlo senza permesso è pirateria informatica.

7. Vero o falso: il freeware ha sempre il codice sorgente aperto.

Falso: il freeware è gratuito ma resta proprietario, con codice sorgente chiuso.

8. Chi ha fondato il movimento del software libero, e con quale progetto?

Richard Stallman, con il progetto GNU nel 1983.

9. Che cos'è il firmware, e in cosa differisce dal software che installiamo di solito?

È un software scritto direttamente su un chip hardware (es. il BIOS/UEFI), che resta nel dispositivo anche spento ed è il primo ad avviarsi all'accensione.

10. Che cos'era il "Millennium Bug" (Y2K)?

Il rischio che i computer, salvando l'anno con solo due cifre, interpretassero erroneamente il 2000 come 1900 al cambio di millennio.

Per chiarimenti su questo argomento è possibile scrivere via email