lunedì 6 gennaio 2025

Corso Fondamenti di Informatica e Reti: 2 Software: sistemi operativi e applicativi

💻 Software: sistemi operativi e applicativi 

Immagina che il tuo dispositivo (computer, tablet, smartphone) sia una casa. Il sistema operativo è il proprietario e il custode: organizza le stanze, decide chi entra, controlla le utenze, e tiene in ordine gli armadi. Le applicazioni sono gli ospiti o gli strumenti che usi in casa: il frigorifero, la televisione, la macchina del caffè, il pianoforte. Tutti necessari, ma senza il proprietario che coordina (il sistema operativo) la casa sarebbe caotica.

Di seguito esploriamo in profondità cosa significa questa analogia: come funzionano le parti, che tipi di software esistono, come scegliere e usare, e soprattutto come imparare a farlo con attività pratiche.


1) Cos’è il software — definizione e ruolo centrale

Il software è l’insieme di istruzioni (codice) che dice all’hardware cosa fare. Se l’hardware è la parte fisica (schermo, tastiera, CPU, memoria), il software è l’intelligenza che la anima. Senza software, un computer è un mucchio di silicio e metallo; con il software diventa strumento creativo, di lavoro, informazione e divertimento.

Il software si divide grossolanamente in due grandi famiglie:

  • Software di sistema (o di base): il sistema operativo, i driver, i tool che mantengono il dispositivo funzionante e permettono alle applicazioni di parlare con l’hardware.
  • Software applicativo: i programmi che svolgono compiti concreti per gli utenti: scrivere testi, navigare il web, montare video, giocare, contare con una calcolatrice.

2) Software di sistema vs software applicativo — cosa fa ciascuno

Il sistema operativo (OS) — il direttore d’orchestra

Il sistema operativo è il cuore: gestisce processi, memoria, file, dispositivi di input/output, rete, sicurezza. Alcuni concetti chiave:

  • Kernel: il nucleo che parla direttamente con l’hardware. Regola risorse CPU, memoria e periferiche.
  • Shell / Interfaccia utente: il modo in cui interagisci con l’OS (interfaccia grafica o riga di comando).
  • Driver: piccoli programmi che permettono a stampanti, schede video, mouse e altro di funzionare.
  • File system: l’organizzazione dei file (cartelle, permessi).
  • Gestione dei processi: l’OS decide quale programma “usa” la CPU e per quanto tempo.
  • Gestione memoria: assegna RAM ai programmi e evita che si pestino i piedi l’uno con l’altro.

Il software applicativo — cosa usi per lavorare e divertirti

Programmi concreti: Word processor, browser, app mobili, videogiochi, editor video, strumenti di contabilità. Si appoggiano all’OS per accedere a file, rete e periferiche.

Sintesi: l’OS fornisce lo spazio e le regole; l’applicazione svolge il compito specifico.


3) Panoramica dei principali sistemi operativi

Windows (Microsoft)

  • Ambito: desktop/laptop aziendali e consumer.
  • Punti forti: ampia compatibilità software (giochi, applicazioni professionali), facilità d’uso per utenti non tecnici.
  • Quando sceglierlo: se usi programmi che girano solo su Windows (es. certe suite professionali), o giochi.

macOS (Apple)

  • Ambito: laptop e desktop Apple (MacBook, iMac).
  • Punti forti: integrazione hardware-software, stabilità, ecosistema Apple per creativi (video, foto, musica).
  • Quando sceglierlo: se lavori con multimedia professionale e ti piace l’ecosistema Apple.

Linux (famiglie: Ubuntu, Fedora, Debian, Mint, ecc.)

  • Ambito: server, desktop, sviluppatori, appassionati.
  • Punti forti: open source, altamente personalizzabile, efficiente, grande comunità.
  • Quando sceglierlo: se vuoi controllo, sicurezza, uso server o imparare come funziona un OS.

Android (Google)

  • Ambito: smartphone, tablet, alcuni TV e dispositivi embedded.
  • Punti forti: ampia diffusione, app store, personalizzazione.
  • Quando sceglierlo: smartphone/tablet, ecosistema Google.

iOS (Apple)

  • Ambito: iPhone, iPad (iPadOS).
  • Punti forti: sicurezza, integrazione con hardware Apple, app di qualità.
  • Quando sceglierlo: se apprezzi l’esperienza utente Apple e app coerenti.

Nota: esistono anche sistemi specializzati (embedded OS, RTOS) e derivazioni come ChromeOS (basato su Linux con forte orientamento web).


4) Applicazioni comuni — categorie e esempi concreti

  • Suite da ufficio: Microsoft Office (Word, Excel, PowerPoint), LibreOffice (Writer, Calc, Impress).
    Esempio pratico: scrivere una relazione con Word o con LibreOffice Writer.
  • Browser web: Google Chrome, Mozilla Firefox, Microsoft Edge, Safari.
    Esempio pratico: usare Chrome per accedere a Gmail, web app e fare il login sicuro.
  • Multimedia: VLC (lettore video), Spotify (musica), Photoshop / GIMP (grafica), Audacity (audio editing).
    Esempio pratico: tagliare il pezzo centrale di un file mp3 con Audacity.
  • Comunicazione: WhatsApp, Telegram, Zoom, Teams.
    Esempio pratico: schedulare una riunione Zoom e condividere lo schermo.
  • Sviluppo / tool: Visual Studio Code, Git, Node.js.
    Esempio pratico: aprire un progetto in VS Code e lanciare un’app locale.
  • Giochi: Steam su Windows, app store su mobile.
    Esempio pratico: configurare grafica su un gioco su PC.

5) Licenze software — concetti e cosa significano

Proprietaria

Software il cui codice non è accessibile. L’utente paga (o riceve gratis) una copia che usa sotto condizioni fissate dall’editore. Esempio: Microsoft Office (licenza d’uso), Adobe Photoshop.

Open source

Il codice sorgente è disponibile; chiunque può leggere, modificare e (a seconda della licenza) ridistribuire. Tipologie:

  • Copyleft (es. GPL): se ridistribuisci o modifichi, devi mantenere la stessa licenza (richiede condivisione).
  • Permissive (es. MIT, BSD, Apache): permettono di includere il codice in progetti proprietari; più “libere”.

Freeware vs Free (libertà)

  • Freeware = software gratuito ma proprietario (non puoi accedere al codice, es. alcuni giochi o utility gratuite).
  • Free software (libertà) = enfasi sulle libertà dell’utente: usare, studiare, modificare, ridistribuire (concetto FSF).

Esempio concreto

  • Firefox è open source (la comunità può vedere e contribuire).
  • Microsoft Office è proprietario (non puoi modificare il codice, devi rispettare licenza).

6) Modelli di distribuzione software moderni

  • Installazione tradizionale: scarichi un .exe o .dmg e installi.
  • App Store: Google Play, Apple App Store — app sotto controllo del provider, aggiornamenti centralizzati.
  • Software as a Service (SaaS): non installi nulla, usi tutto via web (Google Workspace, Office 365).
  • Container / Virtualizzazione: esegui ambienti isolati (Docker, VirtualBox) per testare o distribuire applicazioni. Utile in ambito sviluppo e server.

7) Sicurezza, aggiornamenti e manutenzione (best practices)

  • Aggiorna regolarmente: OS, browser e app. Le patch chiudono falle di sicurezza.
  • Usa software ufficiale: evita download da siti sospetti.
  • Backup: copia i dati importanti su cloud o hard disk esterno.
  • Antivirus & firewall: strumenti utili soprattutto su Windows.
  • Permessi app: su mobile (camera, posizione, rubrica) consenti solo ciò che serve.
  • Password & MFA: usa password robuste e autenticazione a due fattori.

8) Attività didattiche approfondite (per scuola, gruppo o autodidatta)

Questa sezione espande le attività proposte: ogni attività include obiettivi, istruzioni passo-passo e criteri di valutazione.

A — Mappa concettuale estesa (attività individuale o a gruppi)

Obiettivo: organizzare graficamente tutto il software della propria vita digitale. Materiali: carta grande o strumento digitale (MindMeister, Coggle). Istruzioni:

  1. Al centro scrivi “Il mio ecosistema digitale”.
  2. Crea rami per “Sistema operativo”, “Comunicazione”, “Produttività”, “Multimedia”, “Sicurezza”, “Sviluppo”.
  3. Sotto ogni ramo elenca i software usati (es. WhatsApp → app mobile; Google Docs → suite web).
  4. Collega ogni software al relativo tipo di licenza (proprietaria / open source) ed eventuali store (Play Store, App Store). Valutazione: chiarezza (30%), completezza (40%), correttezza delle licenze (30%).

B — Classificazione familiare (laboratorio pratico)

Obiettivo: riconoscere e classificare software su dispositivi reali. Istruzioni:

  1. Raccogli i dispositivi della famiglia (telefono, tablet, laptop).
  2. Per ogni dispositivo segnala: sistema operativo, 3 app principali, 1 gioco, 1 app di produttività; indica se sono gratuiti o a pagamento.
  3. Presenta i risultati in una tabella. Valutazione: accuratezza e presentazione (50%), riflessione sulla scelta delle app (50%).

C — Installazione guidata (laboratorio)

Obiettivo: imparare a installare un’app in sicurezza e conoscerne impostazioni. Esempio 1 (Android): installare una calcolatrice scientifica da Google Play. Passaggi:

  • Apri Play Store → cerca “calcolatrice scientifica” → leggi descrizione e recensioni → controlla permessi → installa → apri e prova funzioni (memoria, trigonometria).
  • Disinstalla o conserva. Criteri di valutazione: ricerca app: 30%, controllo permessi: 30%, prova funzionale: 40%.

Esempio 2 (PC): provare GIMP (software open source per grafica).

  • Vai al sito ufficiale (gimp.org) → scarica la versione per il tuo OS → controlla checksum se presente → avvia installazione → prova a ridimensionare un’immagine e salvarla. Attenzione: scarica solo da siti ufficiali.

D — Esercitazione avanzata: macchina virtuale

Obiettivo: eseguire Linux in una VM su Windows/Mac. Strumenti: VirtualBox (gratuito), ISO di Ubuntu. Passaggi sintetici:

  1. Scarica e installa VirtualBox.
  2. Scarica immagine ISO di Ubuntu dal sito ufficiale.
  3. Crea nuova VM in VirtualBox, assegna RAM e spazio disco.
  4. Monta ISO e avvia VM; procedi con installazione. Risultato atteso: poter accendere Ubuntu in finestra e installare un’app (es. LibreOffice).

Valutazione: capacità di seguire procedure, gestione risorse, risoluzione problemi.


9) Esercizi pratici (con soluzioni spiegate)

Esercizio 1 — Identifica e classifica

Compito: fai una lista di 10 software che usi e per ciascuno indica: tipo (sistema/app), licenza (proprietaria / open source / freeware), scopo (comunicazione / produttività / gioco). Soluzione (esempio):

  1. WhatsApp — applicazione mobile — freeware/proprietaria — comunicazione.
  2. Chrome — applicazione — freeware/proprietaria — browser.
  3. Firefox — applicazione — open source — browser.
  4. LibreOffice — applicazione — open source — produttività.
  5. VLC — applicazione — open source — riproduzione multimediale.
    (Spiegazione: si valuta il tipo in base a dove gira e cosa fa; la licenza si può verificare nella pagina ufficiale o nelle info dell’app.)

Esercizio 2 — Installazione sicura

Compito: scegli un’app open source (GIMP o Audacity). Elenca i 6 passaggi che esegui per una installazione sicura. Soluzione spiegata:

  1. Vai al sito ufficiale (es. gimp.org).
  2. Controlla la versione corretta per il tuo OS.
  3. Scarica il file; se disponibile, verifica checksum.
  4. Esegui l’installer come utente con permessi normali (non administrator se non richiesto).
  5. Durante installazione, rifiuta software aggiuntivo non desiderato.
  6. Avvia e prova le funzioni base.
    (Spiegazione: questi passaggi riducono rischio malware e assicurano che il software sia autentico.)

Esercizio 3 — Permissions & Privacy (smartphone)

Compito: scegli 5 app sul tuo telefono e scrivi quali permessi richiedono e se sono giustificati. Soluzione modello:

  • App fotocamera: accesso a fotocamera e microfono — giustificato.
  • Weather app: accesso a posizione — giustificato per meteo locale, attenzione a permessi in background.
  • Gioco semplice: accesso a contatti? — non giustificato, per cui revocare permesso.
    (Spiegazione: analizzare i permessi aiuta a proteggere dati sensibili.)

10) Test di verifica (domande + risposte spiegate)

Test rapido (10 domande, mix di scelta multipla e risposta breve)

1. Domanda: Qual è la differenza principale tra sistema operativo e applicazione?
Risposta corretta: Il sistema operativo gestisce l’hardware e risorse di sistema; l’applicazione usa quello che l’OS mette a disposizione per svolgere compiti specifici.
Spiegazione: L’OS è intermediario fra hardware e applicazioni; senza OS le app non possono accedere a periferiche in modo standard.

2. Domanda: Indica tre esempi di software open source.
Risposta possibile: Firefox, LibreOffice, VLC.
Spiegazione: Questi progetti rendono pubblico il codice sorgente e permettono contributi esterni.

3. Domanda: Cosa significa “licenza d’uso”? Fai un esempio.
Risposta corretta: È il contratto che specifica come si può usare, modificare e ridistribuire un software. Esempio: l’EULA di Microsoft Office impedisce la modifica del codice.
Spiegazione: La licenza governa i diritti legali d’uso e distribuzione.

4. Domanda: Android è software di sistema o applicazione? Motiva.
Risposta corretta: Android è un sistema operativo per dispositivi mobili perché coordina hardware, processi, memoria e fornisce servizi alle app.
Spiegazione: I singoli giochi o app su Android sono applicazioni; Android è la piattaforma che le ospita.

5. Domanda: Qual è l’uso tipico di una VM (macchina virtuale)?
Risposta corretta: Eseguire un sistema operativo isolato per testare software senza impattare il sistema principale.
Spiegazione: Le VM isolano ambienti per sicurezza e sperimentazione.

6. Domanda: Vero o falso — “Freeware implica sempre che puoi modificare il codice sorgente.”
Risposta corretta: Falso.
Spiegazione: Freeware è solo gratis, ma spesso proprietario; non garantisce accesso al codice.

7. Domanda: Quale funzione svolge un driver?
Risposta corretta: Traduce le richieste dell’OS in comandi comprensibili dall’hardware (es. stampante, scheda video).
Spiegazione: Senza driver, l’OS non saprebbe comunicare con la periferica.

8. Domanda (breve): Nomina due vantaggi del software open source.
Risposta possibile: Trasparenza del codice, possibilità di modifica e adattamento, grande comunità, costi spesso ridotti.
Spiegazione: Open source favorisce controllo e adattabilità.

9. Domanda: Cos’è il SaaS? Fornisci un esempio.
Risposta corretta: Software as a Service: software accessibile via web senza installazione locale. Esempio: Google Workspace.
Spiegazione: Con SaaS si paga (o si usa gratis) un servizio online, il provider mantiene il software.

10. Domanda (pratica): Scegli tra le seguenti attività: aggiornare l’OS, installare un’app, fare backup — quale è più urgente se il tuo antivirus segnala una minaccia?
Risposta corretta: Fare backup dei dati prima di qualsiasi operazione rischiosa; aggiornare l’antivirus e pulire sistema.
Spiegazione: Il backup previene perdita dati; procedere comunque con cautela.


11) Esempi concreti di mini-progetti (per imparare “facendo”)

Progetto 1 — “Il mio PC è lento: diagnostica e soluzione”

Obiettivo: scoprire e risolvere rallentamenti su Windows o macOS. Passi:

  1. Controlla uso CPU/RAM (Task Manager / Monitor attività).
  2. Chiudi app che usano risorse inutili.
  3. Disinstalla software obsoleto.
  4. Verifica aggiornamenti OS e driver.
  5. Esegui scansione antivirus.
    Valutazione: miglioramento tempi di avvio e uso CPU.

Progetto 2 — “Costruisci un mini-lab open source”

Obiettivo: installare GIMP, Audacity, LibreOffice e creare materiale (poster, podcast, brochure).
Prodotto finale: un podcast di 3 minuti + poster in PDF realizzato con GIMP.
Valutazione: qualità audio, layout, uso corretto delle licenze per musica e immagini.


12) Errori comuni e come evitarli

  • Scaricare da siti non ufficiali → rischio malware. Sempre sito del progetto.
  • Ignorare aggiornamenti → vulnerabilità.
  • Permessi app eccessivi → rischio privacy. Controlla e revoca.
  • Confondere freeware e open source → non sono la stessa cosa.
  • Non fare backup → perdita dati irreversibile.

13) Domande frequenti (FAQ rapide)

D: Posso passare da Windows a Linux senza perdere dati?
R: Sì, con backup e pianificazione: salva i tuoi file, prepara USB di installazione, scegli se dual-bootare o sostituire.

D: Open source è meno professionale?
R: No. Molti servizi e aziende usano software open source in produzione (server, infrastrutture, sviluppo).

D: È sicuro usare app non presenti sugli store ufficiali?
R: È più rischioso: gli store forniscono controlli minimi. Se devi installare APK Android fuori dallo store, verifica firma e provenienza.


14) Risorse utili (strumenti e link raccomandati)

  • Per montaggio video/mobile: CapCut, InShot.
  • Per grafica: GIMP (open source), Canva (web).
  • Per audio: Audacity.
  • Per ufficio: LibreOffice (open source), Google Docs (SaaS), MS Office (proprietario).
  • Per sviluppatori: VS Code, Git.
  • Per sicurezza: Malwarebytes, Windows Defender (preinstallato su Windows).
  • Per VM: VirtualBox (gratuito).
    (Nota: cerca sempre i siti ufficiali dei progetti.)

15) Rubrica di valutazione per progetti e compiti (esempio scuola / corso)

  • Progettazione & chiarezza (25%): lo scopo è chiaro, i passaggi logici.
  • Esecuzione tecnica (30%): installazione, configurazione, prova.
  • Documentazione & riflessione (20%): spiegazione scelte, problemi risolti.
  • Sicurezza & licenze (15%): fonti ufficiali, permessi corretti, attenzione a copyright.
  • Creatività & presentazione (10%)

Conclusione

Il software è la lingua con cui parliamo ai dispositivi. Capirlo non è solo competenza tecnica: è una piccola cittadinanza digitale. Sapere che cosa gira sotto il cofano del tuo laptop o del tuo smartphone ti rende più libero, più sicuro e più creativo. Che tu scelga Windows per i giochi, Linux per sperimentare o iOS per la praticità, l’importante è capire i ruoli: il sistema operativo orchestra, le applicazioni eseguono: insieme ti consentono di lavorare, creare e divertirti.

Nessun commento:

Posta un commento

Come sopravvivere con l'informatica: Neurosimulators: deep learning ispirato al cervello

  📌 Neurosimulators: deep learning ispirato al cervello La prossima rivoluzione dell’intelligenza artificiale potrebbe arrivar...