Che cos'è Linux?

Definizione di Linux

Linux è un sistema operativo per computer sviluppato utilizzando il modello open source. I principi di sviluppo del software open source sono:

  • Trasparenza
  • Collaborazione
  • Rilasci anticipati e frequenti
  • Meritocrazia inclusiva
  • Community

Il modello di sviluppo open source significa anche che i miglioramenti provengono da molti diversi collaboratori aziendali e individuali, ragion per cui la direzione del prodotto è determinata in gran parte dalla community di utenti, piuttosto che da un singolo team di sviluppo in un singolo fornitore.

Che cos'è un kernel Linux?

Il kernel Linux è centrale per il sistema operativo per computer Linux. Il kernel è l'interfaccia principale tra l'hardware di un computer e i suoi processi, e garantisce che ci sia memoria disponibile per le applicazioni Linux da eseguire, ottimizza i processori e gestisce i requisiti di sistema tra le applicazioni.

Il kernel Linux comunica tra hardware e applicazioni tramite "interrupt". Quando l'hardware vuole interfacciarsi con l'applicazione e il sistema più ampio, viene emesso un interrupt tra il processore e il kernel per gestire le risorse in modo efficiente.

Il kernel, che esiste all'interno di una hard shell del sistema operativo, controlla tutte le funzioni primarie del rispettivo hardware, indipendentemente dal dispositivo, compresi cellulare, tablet, desktop o laptop, server, ecc. Il kernel Linux si focalizza su queste funzioni critiche:

  1. Gestione della memoria: monitora quanta memoria sfruttare e come farlo.
  2. Gestione dei processi: determina quali processi possono utilizzare l'unità di elaborazione centrale (CPU, central process unit) e come.
  3. Driver dei dispositivi: funge da intermediario tra hardware e applicazioni/processi.
  4. Chiamate di sistema e sicurezza: riceve richieste di servizio dai processi dell'applicazione.

Linux per sviluppatori

Gli sviluppatori hanno sempre amato Linux, ed è per una buona ragione. Linux è potente ed è stato collaudato nel corso del tempo. Con Oracle Linux, gli sviluppatori possono unirsi a una vasta community con cui condividere ciò che creano o a cui rivolversi ogni volta che sorgono opportunità di risoluzione dei problemi.

Proprio ora sul nostro portale per gli sviluppatori, puoi scoprire in che modo Oracle Linux fornisce vantaggi agli sviluppatori in più linguaggi (Python, Node.js, Go), offre tutorial su applicazioni e infrastrutture, e come puoi utilizzare Oracle Linux anche per modificare leggermente i casi d'uso dell'hardware.

Chi utilizza Linux?

Il sistema operativo Linux viene utilizzato in una vasta gamma di sistemi e ambienti. Supporta ambienti di infrastruttura cloud di grandi dimensioni, appliance di infrastruttura convergente on-premise, server di applicazioni, ambienti di calcolo desktop e sistemi integrati. Alcune distribuzioni di software Linux includono anche un hypervisor per l'hosting di macchine virtuali.


Video su sviluppatori e Linux (17:03)

Chi possiede Linux?

Nessuna persona o azienda "possiede" Linux. Molti individui e imprese contribuiscono agli aggiornamenti di Linux e in genere concedono in licenza il proprio contributo con una licenza software Open Source come GPLv2. Linus Torvalds ha il copyright per il nome Linux, ma chiunque può creare una distribuzione di Linux combinando vari componenti open source. Spesso le aziende ti fanno pagare per l'utilizzo della loro distribuzione; in alternativa, potrebbero far pagare unicamente per il supporto della distribuzione o rendere la distribuzione disponibile gratuitamente (generalmente senza supporto).


Video: In cosa è diverso Linux? (2:43)

Che cos'è una distribuzione Linux?

Una distribuzione Linux (a volte abbreviata come "Linux distro") è una raccolta di componenti chiave e opzionali che si uniscono per formare un sistema operativo completo. Tipicamente, una distribuzione Linux include componenti fondamentali come un bootloader, un kernel Linux, un sistema di inizializzazione, daemon, un server grafico e applicazioni. Alcune distribuzioni includono opzioni aggiuntive come un kernel Linux a prestazioni elevate, strumenti di gestione, un hypervisor o anche componenti per un ambiente cloud nativo.

Come e dove è possibile utilizzare varie distribuzioni Linux

Le distribuzioni di Linux differiscono in aspetti come i luoghi dove possono essere utilizzate, il modo in cui sono supportate, il modo in cui gestiscono gli aggiornamenti software e quali componenti aggiuntivi o opzionali includono. Considerando solo l'elenco delle distribuzioni sopra riportato, la maggior parte di queste viene utilizzata per server basati su rete (al contrario dei computer desktop), ma non tutte sono facilmente utilizzabili in ogni tipo di ambiente server.

Ad esempio, Red Hat Enterprise Linux è popolare per i data center on-premise e in alcuni cloud, ma non è supportato in tutti. Amazon Linux è disponibile nel cloud Amazon Web Services (AWS), ma non è facilmente disponibile o supportato in altri cloud o nell'on-premise. Per gli utenti RHEL vale generalmente il contrario e pagano felicemente un costo di supporto annuale relativamente alto per ricevere aggiornamenti e supporto telefonico per i loro sistemi. Fedora è indicato per gli utenti che sono meno interessati a una configurazione stabile a lungo termine e sono desiderosi di incorporare costantemente le ultime funzionalità sperimentali nei loro sistemi.

Il miglior sistema operativo Linux per ogni caso d'uso

Le distribuzioni Linux sono tante quasi quanto i casi d'uso per Linux, quindi anche se è probabile che non ci sia un miglior Linux per ogni caso d'uso, potrebbe comunque esserci un miglior Linux per ogni caso d'uso. Le sezioni seguenti parlano delle differenze tra i tipi di Linux per aiutarti a identificare quale sistema operativo Linux potrebbe risultare il migliore per una determinata situazione.

Versioni di Linux

Poiché chiunque può creare una distribuzione Linux dal codice sorgente disponibile, e può scegliere tra alcune varianti di componenti, ci sono molte distribuzioni di Linux che sono molto simili. Alcune distribuzioni provengono da aziende diverse, ma sono di base intercambiabili.

Distribuzioni diverse possono anche essere ottimizzate per scopi diversi: alcune si focalizzano sull'essere il più piccole possibile; altre si focalizzano sul fornire un ampio supporto per l'hardware desktop. Alcune distribuzioni includono inoltre funzionalità specializzate, ad esempio l'applicazione automatica di patch o prestazioni più elevate per i database.

Fra le distribuzioni più popolari ci sono:

  • IBM Red Hat/Red Hat Enterprise Linux (RHEL o Red Hat Linux)
  • Amazon Linux
  • Fedora
  • Oracle Linux
  • SUSE Linux
  • Ubuntu

Come diversi sistemi operativi Linux gestiscono aggiornamenti e patch

Un'altra differenza è il modo in cui il sistema operativo gestisce gli aggiornamenti e le patch software opzionali. Molti (ma non tutti) dei sistemi dell'elenco precedente utilizzano l'RPM (precedentemente noto come Red Hat Package Manager). Altre distribuzioni Linux utilizzano il sistema Debian package (dpkg).

Il singolo package manager non è molto importante di per sé, ma crea una differenza di compatibilità tra i sistemi che utilizzano uno rispetto all'altro. Ad esempio, a seconda delle funzionalità che stai utilizzando, puoi facilmente scambiare sistemi che utilizzano il sistema RPM (a volte chiamato "rpm distros Linux") tra loro, perché possono scaricare pacchetti molto simili da server di distribuzione simili.

Puoi anche convertire facilmente le installazioni RHEL in loco in un'installazione Oracle indicando semplicemente il package manager a un nuovo server di aggiornamento. Questo perché, tra le altre cose, tutti usano il sistema RPM. (Nota che si tratta di una dichiarazione tecnica: i fornitori possono avere termini di licenza aggiuntivi che è necessario rispettare, ma tali termini esulano dall'ambito di questo documento.) Questa stessa transizione sarebbe più difficile con una distribuzione come Ubunto, che utilizza il sistema di pacchetti Debian.

Fattori da tenere in considerazione quando si sceglie una distribuzione Linux

Vantaggi del bottom-stack

Per molti clienti, il sistema operativo è alla base di uno stack di piattaforme software, con le loro applicazioni aziendali in cima. Questo può far sembrare che il sistema operativo sia meno importante dei livelli più alti nello stack, e che quindi non importi quale distribuzione scegli. Alcuni potrebbero persino pensare che tutte le distribuzioni siano effettivamente uguali.

Ma poiché il sistema operativo Linux è vicino (o esattamente) alla base dello stack, può influire su tutto ciò che sta sopra. Miglioramenti nelle funzionalità di sicurezza, performance, affidabilità e risoluzione dei problemi a questo livello base possono equivalere a miglioramenti in questi fattori per tutto lo stack. Ad esempio, una tecnologia denominata Ksplice può consentire a un amministratore di applicare patch di sicurezza e correzioni dei bug senza riavviare il server. Di per sé, questo sembra un vantaggio da poco. Ma quando si considera il costo della rimozione dell'applicazione aziendale e il rischio alternativo di lasciare il sistema senza patch per l'ultima minaccia alla sicurezza, la possibilità di applicare patch senza disturbare l'applicazione aziendale ha improvvisamente un impatto molto grande.

Questi vantaggi possono facilmente moltiplicarsi in valore man mano che risalgono lo stack. Risparmiare tempo sul riavvio a livello di sistema operativo potrebbe apportare solo alcuni minuti di vantaggio all'amministratore. Ma evitare il problema organizzativo e il potenziale impatto sui ricavi derivante dalla pianificazione dei tempi di inattività in un'applicazione fondamentale rivolta ai clienti potrebbe valere migliaia di volte lo stipendio annuale dell'amministratore. Senza considerare il costo e il rischio in cui l'azienda incorre ignorando l'aggiornamento della sicurezza.

Vantaggi delle performance

In maniera simile, potrebbe sembrare poco importante migliorare le performance di un sistema operativo, perché gli amministratori in genere trascorrono poco tempo a lavorare direttamente sul sistema operativo e gli utenti ne passano ancora meno. Ma tradotti fino al livello di applicazione aziendale, piccoli miglioramenti delle prestazioni possono essere moltiplicati per milioni di transazioni di alto valore, con conseguente risparmio sui costi per transazione o persino un vantaggio competitivo per l'azienda, offrendo transazioni urgenti più velocemente rispetto ai competitor.

Perché scegliere Linux?

È aperto e completo

Un ambiente operativo aperto e completo, Oracle Linux offre strumenti di virtualizzazione, gestione e cloud computing nativi, insieme al sistema operativo, in un'unica offerta di supporto. Oracle Linux è un'applicazione binaria compatibile al 100% con RHEL. Per via di questa compatibilità, generalmente è anche un buon sostituto per altre distribuzioni basate su RPM.

È gratuito

Puoi utilizzare Oracle Linux gratuitamente in ambienti self-support o con un accordo di supporto Linux a pagamento per i carichi di lavoro di produzione.

Viene migliorato continuamente

Per supportare prestazioni elevate per Oracle Database, i tecnici Oracle hanno apportato continuamente miglioramenti a Unbreakable Enterprise Kernel. Sebbene questi miglioramenti fossero destinati a Oracle Database, in genere vanno a vantaggio di qualsiasi applicazione a uso intensivo di calcolo o memoria. Alcuni utenti hanno segnalato un miglioramento delle prestazioni di oltre il 30% da questa variante del kernel Linux.

Include l'applicazione di patch senza periodi di inattività

Oracle Linux include su richiesta una tecnologia di applicazione delle patch senza tempi di inattività denominata Ksplice, la quale permette di applicare regolarmente patch ai server senza richiedere il riavvio del server o, soprattutto, delle applicazioni aziendali in esecuzione su di esso. Questo porta a un'applicazione delle patch più frequente e quindi sistemi più sicuri e conformi. Inoltre riduce anche il sovraccarico amministrativo tipico delle applicazioni aziendali di grandi dimensioni, che richiedono sforzi significativi per la pianificazione e le approvazioni da parte di tutte le parti interessate prima di un riavvio. Oracle Linux include anche l'hypervisor KVM open source e (con un accordo di supporto) il virtualization manager (PDF).

Include molti strumenti cloud nativi

Molti carichi di lavoro stanno passando a un ambiente cloud in hosting e quelli che rimangono on-premise sono spesso progettati utilizzando modelli e tecnologie cloud native, Kubernetes, container Kata e Istio. Oracle Linux è il sistema operativo di base per Oracle Cloud Infrastructure (OCI) e include molti degli strumenti cloud nativi necessari per questa architettura. Ciò significa che Oracle Linux viene testato nell'ambiente più grande e impegnativo di tutti e che corrisponde al modello di progettazione della maggior parte delle applicazioni moderne. Le lezioni apprese in questa sfida si convertono direttamente in miglioramenti nel sistema operativo. Ma a differenza di altri fornitori di soluzioni cloud che hanno un sistema proprietario alla base del cloud, Oracle Linux è disponibile nella stessa configurazione per tutti gli utenti, sia che si trovino su OCI, su un altro cloud o nel data center del cliente.

È la base di Oracle Autonomous Linux

Oracle Linux è anche la base dell'unico sistema operativo autonomo al mondo, che si applica autonomamente patch ogni giorno per ridurre allo stesso tempo le minacce alla sicurezza e l'impegno amministrativo.

Dal 2006 il download e l'uso di Oracle Linux è completamente gratuito: sia il codice sorgente, che i binari, che gli aggiornamenti. Liberamente ridistribuibile. Gratuito per l'uso in produzione.