Cos'è un sistema operativo?

Due donne che lavorano al computer

Autori

Stephanie Susnjara

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

Cos'è un sistema operativo?

Un sistema operativo (OS) è un insieme di software che gestisce l'hardware e le applicazioni di un computer allocando risorse tra cui memoria, CPU, dispositivi di input/output e file storage.

Un utente interagisce con un sistema operativo tramite un'interfaccia utente (UI), che emette comandi in un linguaggio comprensibile al sistema operativo. L'interfaccia utente può essere un'interfaccia utente grafica (GUI) o un'interfaccia a riga di comando (CLI). Miliardi di persone si affidano ai sistemi operativi come sistema di gestione sottostante per attività come l'invio di e-mail, la navigazione in Internet, i videogiochi e molto altro.

Tutti i sistemi informatici, dai mainframe ai desktop ai dispositivi mobili, necessitano di almeno un sistema operativo per svolgere attività, eseguire applicazioni e interagire con l'hardware.

In un rapporto di Statista, Microsoft Windows risulta il sistema operativo più utilizzato a livello mondiale e controlla il 67% del mercato dei sistemi operativi per desktop, tablet e console. 1 MacOS di Apple è al secondo posto in questa categoria.

Android è in testa con una quota di mercato pari a circa il 72,04% nella categoria dei sistemi operativi per dispositivi mobili, mentre iOS di Apple detiene il secondo posto con il 27,49%.2

Nel mondo del software open source, Linux è il più diffuso, ampiamente apprezzato sia dalle organizzazioni che dai privati per la sua flessibilità e sicurezza.

Design 3D di palline che rotolano su una pista

Le ultime notizie e insight sull'AI


Scopri notizie e insight selezionati da esperti in materia di AI, cloud e molto altro nella newsletter settimanale Think. 

L'evoluzione dei sistemi operativi

La storia del sistema operativo (OS) è iniziata con i primi computer che richiedevano un software di sistema personalizzato per la gestione delle attività. Inizialmente semplici e orientati al batch, i sistemi operativi si sono evoluti per supportare il multitasking e le interfacce interattive, grazie ai progressi dell'hardware e del software.

L'invenzione del circuito integrato (IC) negli anni '50 ha portato ai microchip, che hanno aumentato la potenza di elaborazione e ridotto le dimensioni dei computer, supportando attività più complesse. Nel 1964, IBM introdusse l'OS/360, che si basava sul linguaggio di programmazione assembly, per il loro IBM System/360. OS/360 standardizzava il software su tutti i suoi mainframe, influenzando i futuri progetti OS. Inoltre, l'OS/360 fu il primo sistema operativo con multiprogrammazione, in grado di eseguire numerosi programmi contemporaneamente su una macchina con un singolo processore.

Nel corso del tempo, OS/360 si è evoluto in z/OS , il moderno sistema operativo per i mainframe IBM. (I mainframe IBM Z attuali vengono eseguiti anche su Linux e z/TPF, con più sistemi operativi spesso in esecuzione su un unico mainframe).

Lo sviluppo del sistema operativo Unix negli anni '60 e '70 ha stabilito importanti precedenti per i moderni sistemi operativi, introducendo concetti come il multitasking, la portabilità e un file system gerarchico, fondamentali per i sistemi odierni.

Verso la fine degli anni '80 e negli anni '90 furono introdotte le unità di elaborazione grafica (GPU) per gestire l'elaborazione grafica. Con l'evoluzione delle GPU per supportare attività di calcolo di uso generale, soprattutto negli anni 2000, aziende come Apple e Microsoft hanno iniziato a integrarle sempre più nei propri sistemi operativi. Attualmente, le GPU sono una funzionalità standard nella maggior parte dei sistemi informatici e alimentano di tutto, dai giochi e contenuti multimediali all'elaborazione scientifica, fino al machine learning (ML).

Innovazioni come la virtualizzazione e la containerizzazione sono emerse in risposta alla crescente esigenza di maggiore efficienza e scalabilità, soprattutto nel cloud computing. La virtualizzazione consente l'esecuzione di più macchine virtuali (VM) su un'unica macchina fisica. Un hypervisor gestisce queste macchine virtuali, agendo come sistema operativo leggero e occupandosi della gestione delle risorse e dell'allocazione della memoria senza la necessità di un sistema operativo completo. VMware è considerata il leader nel mercato della virtualizzazione e degli hypervisor.

La containerizzazione si basa sulla virtualizzazione e offre un approccio più leggero all'esecuzione di applicazioni isolate. A differenza delle VM, i container non includono una copia completa del sistema operativo. Il motore di runtime del container (ad esempio, Docker) è invece installato sul sistema operativo del sistema host e funge da interfaccia attraverso la quale tutti i container condividono lo stesso sistema operativo. Questa funzionalità consente ai container di virtualizzare il sistema operativo, permettendo alle applicazioni e alle loro dipendenze di funzionare indipendentemente su un singolo sistema operativo e migliorando quindi l'efficienza delle risorse.

AI Academy

Prepararsi all'AI con l'hybrid cloud

Condotto dai migliori leader di pensiero di IBM, il programma di studi è stato progettato per aiutare i dirigenti aziendali ad acquisire le conoscenze necessarie per dare priorità agli investimenti in AI che possono favorire la crescita.

Funzioni di un sistema operativo

Sia in contesti di utente singolo che in contesti aziendali, un sistema operativo (OS) gestisce e coordina hardware e software, fornendo un ambiente in cui gli utenti possono interagire in modo efficace. In ambito aziendale, il sistema operativo facilita operazioni su larga scala per supportare più utenti, processi e servizi in un'organizzazione, tra cui:

  • Gestione dei processi: un sistema operativo gestisce l'esecuzione di più processi e thread, incluse attività come la pianificazione, la sincronizzazione e la comunicazione tra i processi. Le applicazioni utente interagiscono con il sistema operativo tramite chiamate di sistema per creare, gestire e terminare i processi e facilitare la comunicazione tra i processi. Ad esempio, nel business process management (BPM) orientato all'integrazione, il sistema operativo riveste un ruolo chiave nel garantire un'interazione fluida tra i vari sistemi software. Via via che i team IT o gli operatori di sistema integrano un sistema CRM con altre applicazioni aziendali, il sistema operativo gestisce le API, alloca le risorse e protegge il flusso di dati, supportando i processi automatizzati con un intervento umano minimo.
  • Gestione della memoria: il sistema operativo alloca e controlla la memoria del computer. Garantisce che i programmi dispongano di risorse sufficienti per l'esecuzione senza interferire con gli altri. Gestisce in modo efficiente sia la memoria principale (RAM) che lo storage ausiliario (unità disco rigido, solid-state drive), utilizzando il paging e lo scambio per spostare i dati in base alle necessità.
  • Gestione del file system: il sistema operativo organizza e recupera i file, gestendo le directory, la denominazione dei file e le autorizzazioni. Garantisce l'integrità dei dati attraverso meccanismi come la convalida dei dati, i checksum e i codici di correzione degli errori.
  • Gestione dei dispositivi: il sistema operativo gestisce i dispositivi di input/output (I/O) (ad esempio tastiera, unità disco, stampanti, monitor), fornendo al software un'interfaccia per interagire con i componenti hardware. In un ambiente virtuale, ciò include VM, switch virtuali e così via.
  • Sicurezza e controllo degli accessi: il sistema operativo applica i protocolli di sicurezza, tra cui autenticazione, crittografia e impostazione delle autorizzazioni utente, garantendo solo l'accesso autorizzato alle risorse informatiche.
  • Rete: il sistema operativo gestisce le reti, consentendo la comunicazione tra i computer tramite reti LAN o Internet e gestendo protocolli come TCP/IP.
  • Rilevamento e gestione degli errori: il sistema operativo monitora gli errori relativi al software e all'hardware, fornendo meccanismi per segnalarli e ripristinarli.
  • Allocazione delle risorse: il sistema operativo assegna in modo efficiente risorse come tempo della CPU (unità di elaborazione centrale), memoria e dispositivi I/O per ottenere prestazioni del sistema ottimali.
  • Monitoraggio delle prestazioni del sistema: il sistema operativo tiene traccia delle prestazioni del sistema (ad esempio, utilizzo della memoria, processi in esecuzione, registri di sistema) e regola i processi o le risorse per migliorare l'efficienza.

Componenti di un sistema operativo

Un sistema operativo è costituito da diversi componenti principali che lavorano insieme per garantire la funzionalità e l'efficienza del sistema:

  • Kernel
  • Scheduler dei processi
  • Memory manager
  • Input/Output manager
  • File system manager
  • Interfaccia utente
Kernel

Il kernel, il componente centrale del sistema operativo, gestisce i processi critici del sistema e consente l'interazione tra software e hardware. Si occupa di attività come I/O, gestione della CPU, driver di dispositivo, file system e comunicazioni di rete.

Nel sistema operativo Linux, ad esempio, il kernel Linux è un'interfaccia critica tra i livelli hardware e software e consente al sistema operativo di gestire molti componenti diversi contemporaneamente. 

Scheduler dei processi

Lo scheduler dei processi assegna il tempo della CPU ai processi, garantendo un uso efficiente delle risorse, prevenendo la monopolizzazione dei processi e gestendo il multitasking. Gestisce inoltre il cambio di contesto per garantire prestazioni fluide tra le applicazioni.

Memory manager

Il memory manager assegna e riassegna la memoria ai processi, gestendo sia la RAM che la memoria virtuale. Nei sistemi aziendali, vengono utilizzate tecniche avanzate come il demand paging e la gestione della memoria distribuita per ottimizzare l'utilizzo delle risorse e garantire la scalabilità.

Input/output (I/O) manager

L'I/O manager facilita la comunicazione dei dati tra il sistema e i dispositivi esterni. Gestisce il trasferimento dei dati e l'accesso ai dispositivi, oltre a garantire una comunicazione senza errori. Nelle aziende, assicura un flusso di dati fluido tra server, storage di rete e periferiche.

File system manager

Il system manager organizza, recupera e protegge i file in vari file system (ad esempio, FAT, NTFS). Ottimizza le prestazioni di accesso, mantiene l'integrità dei dati e applica le autorizzazioni. Negli ambienti aziendali, la gestione dei file è spesso centralizzata per garantire l'efficienza su reti di grandi dimensioni.

Interfaccia utente

Il sistema operativo fornisce un'interfaccia (ad esempio, riga di comando o GUI) per consentire agli utenti di interagire con il sistema, eseguire programmi per computer, gestire file e configurare le impostazioni.

Tipi di sistemi operativi

I sistemi operativi possono essere classificati in diversi tipi in base alle loro caratteristiche, funzionalità e compatibilità con diverse applicazioni hardware e software. Eccone alcuni:

  • Sistemi operativi integrati
  • Sistemi operativi distribuiti
  • Sistemi operativi real-time
  • Sistemi operativi di rete
  • Sistemi operativi cluster

Sistemi operativi integrati

Un sistema operativo integrato è progettato per gestire le risorse hardware in dispositivi specializzati come smartphone, sistemi automobilistici ed elettrodomestici. A differenza dei sistemi operativi generici, i sistemi operativi integrati sono ottimizzati per le prestazioni, l'efficienza e l'affidabilità in ambienti con risorse limitate. In genere sono leggeri, con interfacce utente minime, e sono progettati per eseguire applicazioni specifiche in modo continuo o in tempo reale.

Sistemi operativi distribuiti

Un sistema operativo distribuito coordina più computer indipendenti affinché lavorino insieme come un sistema unificato. Consente di condividere risorse di macchine diverse, fornendo un'unica interfaccia trasparente per l'utente e i programmi applicativi. Il sistema operativo gestisce la comunicazione, la condivisione dei dati e la sincronizzazione delle attività tra vari nodi, garantendo che gli utenti possano interagire con il sistema senza doversi preoccupare della distribuzione fisica delle risorse.

Google File System (GFS), ad esempio, fa parte dell'architettura di sistema distribuita di Google e consente la distribuzione dei dati su molti server, oltre a garantire un'elevata disponibilità e tolleranza ai guasti.

Sistemi operativi real-time

Un sistema operativo real-time (RTOS) è progettato per gestire attività sensibili al tempo con precisi vincoli di temporizzazione. In un RTOS, il sistema assicura il completamento dei processi critici entro un periodo di tempo specifico, garantendo prevedibilità e stabilità.

Questi sistemi operativi vengono utilizzati in applicazioni quali l'automazione industriale, la robotica e i dispositivi medici, che dipendono da sistemi di controllo in cui ritardi o guasti potrebbero avere gravi conseguenze. I sistemi operativi real-time come VxWorks sono comunemente utilizzati nei sistemi integrati per applicazioni aerospaziali e di difesa, dove le risposte in tempo reale sono fondamentali per la sicurezza e le prestazioni.

Sistemi operativi di rete

Un sistema operativo di rete (NOS) è un software che gestisce e coordina le risorse hardware e software di più computer connessi in rete. Consente la comunicazione tra dispositivi, la condivisione di file e la gestione delle risorse in rete.

Un NOS in genere include caratteristiche come la sicurezza della rete, l'autenticazione degli utenti e l'amministrazione centralizzata, che consentono agli amministratori di sistema di controllare l'accesso e configurare le impostazioni su tutti i dispositivi connessi. Esempi di sistemi operativi di rete includono Microsoft Windows Server, Cisco IOS e macOS Server.

Sistemi operativi cluster

Un sistema operativo cluster gestisce un gruppo di computer interconnessi (nodi) che collaborano per eseguire attività come un unico sistema. Questi sistemi sono generalmente utilizzati in ambienti di high-performance computing (HPC) (ad esempio, web hosting, ricerca scientifica) e forniscono bilanciamento del carico, tolleranza ai guasti e condivisione delle risorse tra i nodi. I sistemi operativi cluster consentono agli utenti di scalare la potenza di calcolo combinando più macchine, migliorando così l'affidabilità e le prestazioni complessive del sistema.

Principali sistemi operativi

Esistono centinaia di sistemi operativi per una vasta gamma di scopi, dai personal computer e dispositivi mobili agli ambienti aziendali e cloud. Questi sono alcuni dei più diffusi:

  • Linux
  • macOs
  • iOS
  • Android

Linux

Linux è un sistema operativo open source ampiamente utilizzato su desktop, server e sistemi integrati. È particolarmente utilizzato per la gestione dei server, per l'infrastruttura cloud e per lo sviluppo di software.

Importanti versioni aziendali come Red Hat Enterprise Linux (RHEL) e SUSE Linux Enterprise Server (SLES) sono comunemente utilizzate negli ambienti aziendali grazie alla loro stabilità e al supporto.

Inoltre, esistono numerose distribuzioni Linux su misura per vari casi d'uso, tra cui Ubuntu, Fedora e Debian. Queste distribuzioni rendono Linux altamente versatile e adatto all'uso per personal computer, sviluppo e applicazioni specializzate.

Microsoft Windows

Microsoft Windows è uno dei sistemi operativi più utilizzati a livello globale per uso personale e aziendale. Noto per la sua interfaccia intuitiva e la sua versatilità, supporta varie applicazioni software, da strumenti di produttività come Microsoft Office a programmi specializzati per giochi, ingegneria e design.

macOS

macOS (in precedenza OS X) è un sistema operativo proprietario simile a Unix e progettato per funzionare su desktop, laptop e workstation Apple (ad esempio, iMac, MacBook, MacBook Pro). macOS è particolarmente apprezzato dai professionisti dei settori creativi in quanto eccelle in aree come la progettazione grafica, l'editing video, la produzione musicale e lo sviluppo di software.

iOS

Apple iOS è un sistema operativo mobile proprietario che funziona sui dispositivi mobili Apple come iPhone e iPad.

Android

Sviluppato da Google, Android è un sistema operativo mobile open source ampiamente utilizzato sui dispositivi smartphone personali e aziendali.

Sistemi operativi e AI

Il mercato dei sistemi operativi AI è destinato a una crescita significativa; una ricerca di Knowledge Sourcing Intelligence prevede un aumento da 12,496 miliardi di dollari USA nel 2024 a 29,297 miliardi di dollari USA entro il 2029, con un tasso di crescita annuo del 18,58%.3

Negli ambienti aziendali, i sistemi operativi basati su AI utilizzano il machine learning e l'automazione per prevedere i comportamenti degli utenti, ottimizzare l'allocazione delle risorse e adattarsi ai cambiamenti dei workload in tempo reale. Le funzionalità di correzione automatica riducono i tempi di inattività rilevando e risolvendo automaticamente i problemi, mentre i sistemi di sicurezza basati sull'AI identificano e mitigano le minacce informatiche, garantendo che i dati aziendali rimangano protetti.

I principali sistemi operativi, come Windows e macOS, incorporano l'AI per ottimizzare la gestione delle risorse, migliorare la sicurezza (ad esempio, Windows Defender Face ID) e offrire esperienze personalizzate.

Soluzioni correlate
IBM Cloud Infrastructure Center 

IBM Cloud Infrastructure Center è una piattaforma software compatibile con OpenStack per gestire l'infrastruttura di cloud privati su IBM zSystems e IBM LinuxONE.

Esplora Cloud Infrastructure Center
Soluzioni per l'infrastruttura IT

Scopri i server, lo storage e il software progettati per l'hybrid cloud e la strategia AI della tua azienda.

Scopri le soluzioni per le infrastrutture IT
Soluzioni per l'infrastruttura cloud

Trova la soluzione di infrastruttura cloud adatta alle esigenze della tua azienda e scala le risorse on-demand.

Soluzioni cloud
Fai il passo successivo

Trasforma la sua infrastruttura aziendale con l'hybrid cloud e le soluzioni pensate per l'AI di IBM. Scopri i server, lo storage e i software progettati per proteggere, scalare e modernizzare la tua azienda o ascolta i pareri degli esperti per migliorare la tua strategia di AI generativa.

Scopri le soluzioni per le infrastrutture IT Scarica l'ebook
Note a piè di pagina

(Tutte le note a piè di pagina sono esterne a ibm.com)

1. Operating systems – statistics & facts, Statista, 19 marzo 2024

2. Market share of mobile operating systems worldwide from 2009 to 2024, by quarter, Statista, 16 gennaio 2025

3. AI in the Operating Systems Market Size, Knowledge Sourcing Intelligence, ottobre 2024