Sistemi operativi/Funzionalità dei sistemi operativi: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Pietrodn (discussione | contributi)
m Annullate le modifiche di 212.110.22.64 (discussione), riportata alla versione precedente di Ramac
Nessun oggetto della modifica
Riga 3:
In informatica, il termine "sistema operativo" è usato con diverse sfumature di significato.
 
Un significato molto usato è quello di ''software fornito in un unico pacchetto a tutti gli utenti di un modello di elaboratore''.
Secondo tale accezione, il sistema operativo comprenderebbe programmi di videoscrittura, interpreti o compilatori di linguaggi di programmazione, visualizzatori di immagini, programmi client di posta elettronica, e molto altro.
 
Questa definizione è commercialmente valida, ma priva di utilità teorica, in quanto la tipologia di programmi di utilità forniti insieme al software di base è praticamente sconfinata.
Riga 10:
 
In questo libro si usa un concetto molto più restrittivo.
PerQui per sistema operativo si intende un '''sistema software cheavente permettelo scopo di consentire la condivisione di risorse informatiche da parte di sistemi software sviluppati uno indipendentemente dall'altro e tutti indipendentemente dai dispositivi hardware'''.
 
Vediamo di spiegare il concetto.
Riga 16:
Supponiamo di voler utilizzare o progettare da zero un sistema informatico composto da uno o più elaboratori privi di qualunque software.
 
Ovviamente, dobbiamo scrivere il software appropriato, e; partire da zero significa affrontare un lavoro ciclopico, mache nontuttavia è un compito insormontabilefattibile per una grande azienda.
 
Per semplificare il lavoro, si possono usare dei moduli software già scritti da altri, cioè librerie e driver di dispositivi.
SebbeneLe esistanolibrerie e i driver di dispositivi hanno a che far con i sistemi operativi, ma non costituiscono un sistema operativo.

Infatti esistono librerie fornite con i sistemi operativi, e sebbene la maggior parte dei driver di dispositivi attualmente esistenti sono utilizzabili solo se integrati in un sistema operativo,; tuttavia esistono anche librerie e driver di dispositivi che non si appoggiano sua sistemi operativi.
Pertanto, per tale finalità non è strettamente necessario usare un sistema operativo.
 
E infatti molti sistemi informatici riescono a funzionare bene anche in assenza di un sistema operativo. Si tratta di sistemi in cui tutti i programmi sono stati progettati, configurati e installati da un'unica azienda. Per lo sviluppo di tale software, l'azienda tipicamente si avvale di librerie di routine e di driver di dispositivi (gestiti come librerie di routine) sviluppati da altre aziende, ma non di interi programmi sviluppati da altre organizzazioni.
 
La vera ragion d'essere del sistema operativo si ha quando in uno stesso sistema informatico si vogliono far coesistere sistemi software sviluppati da organizzazioni distinte, e quindi il cui sviluppo non è stato coordinato.
Line 26 ⟶ 30:
=== Esempi ===
 
Se uso un personal computer esclusivamente per scrivere e stampare documenti testuali, usando un programma di videoscrittura memorizzato in una memoria non volatile, come una ROM o un disco fisso, potrei fare a meno del sistema operativo, purché il personal computer sia impostato in modo da avviare automaticamente il programma di videoscrittura all'accensione, e di non fornire la possibilità di lanciare altri comandi.
 
Anche se uso un personal computer esclusivamente per disegnare e stampare schemi eletrici, usando un programma di CAD elettrico memorizzato in una memoria non volatile, potrei fare a meno del sistema operativo, purché il personal computer sia impostato in modo da avviare automaticamente il programma di CAD all'accensione.
Line 34 ⟶ 38:
L'installazione di software arbitrari e il loro lancio su scelta dell'utente sono funzioni che prescindono dai software applicativi stessi e quindi fanno necessariamente parte del sistema operativo.
 
Un sistema operativo che abbia il cuisolo compito èdi chiedere lall'esecuzioneutente inquale successioneprogramma lanciare, e poi di diversilanciare programmitale applicativiprogramma suè un elaboratoresistema èsoftware molto semplice.
La grande complessità dei sistemi operativi oggi esistenti emerge dalla necessità di far coesistere più software applicativi in esecuzione contemporanea, se non addirittura in comunicazione.
Tale comunicazione può avvenire tra programmi in esecuzione sullo stesso elaboratore, oppure tra programmi in esecuzione in elaboratori distinti collegati in rete.
Line 44 ⟶ 48:
Per la stessa famiglia di elaboratori, esistono centinaia di aziende che producono applicazioni grafiche, le quali contengono apposite istruzioni di visualizzazione grafica.
 
Per fare in modo che una data applicazioni funzioni correttamente con un dato adattatore grafico, in assenza di un sistema operativo, l'applicazione dovrebbe contenere la corretta sequenza di istruzioni specifica diper quell'adattatore grafico.
 
Per fare in modo che tutte le applicazioni funzionino con tutti gli adattatori grafici è necessario che:
Line 79 ⟶ 83:
In tali sistemi, i veri interrupt sono pertanto chiamati "interrupt hardware".
 
I tipi di interrupt hardware sono determinati dall'architettura dell'elaboratore.
 
Il sistema operativo può solamente gestirli, ma non crearne di nuovi. Esempi di interrupt hardware sono i seguenti:
* Un dispositivo (per esempio un disco, un'interfaccia di comunicazione con una periferica, un'interfaccia di comunicazione in rete) ha completato l'operazione richiesta precedentemente.
* Ad un dispositivo (per esempio la tastiera, il mouse) sono giunti dei dati da elaborare.
Line 95 ⟶ 99:
* Esecuzione di un nuovo programma applicativo.
* Terminazione del programma corrente.
* Invio di un pacchetto di dati a una altro computer.
* Attesa di un pacchetto di dati da una altro computer.
 
[[Categoria:Sistemi operativi|Funzionalità]]