Sistemi Operativi

Funzionalità di un sistema operativo

Le funzionalità principali di un sistema operativo sono:



Gestione dei processi

Un processo è un programma in esecuzione che necessita di certe risorse, tra cui tempo di CPU, memoria e dispositivi di I/O, per assolvere il suo compito. Il sistema operativo è responsabile delle seguenti attività, relative alla gestione dei processi:

– creazione e cancellazione dei processi;
– sospensione e riesumazione dei processi;
– fornire meccanismi per sincronizzazione dei processi;
- comunicazione tra processi;
- evitare, prevenire e risolvere le situazioni di stallo (deadlock).

Gestione della Memoria Principale

Il sistema operativo è responsabile delle seguenti attività relative alla gestione della memoria principale:

– Tener traccia di quali parti della memoria sono correntemente utilizzate, e da chi.
– Decidere quale processo caricare in memoria, quando dello spazio si rende disponibile.
– Allocare e deallocare spazio in memoria, su richiesta.

Gestione della Memoria Secondaria

Il sistema operativo è responsabile delle seguenti attività relative alla gestione della memoria secondaria:

– Gestione dello spazio libero
– Allocazione dello spazio
- Schedulazione dei dischi

Gestione dell’I/O

Uno tra gli scopi di un sistema operativo è nascondere all’ utente le caratteristiche degli specifici dispositivi di I/O. Per nascondere queste caratteristiche viene realizzato un sottosistema di I/O che è composto da:

– un componente di gestione delle regioni di memoria riservate ai trasferimenti di I/O;
– una interfaccia per i driver dei dispositivi;
– i driver per ogni specifico dispositivo hardware;

Gestione dei file

Un file è una collezione di informazioni correlate, definite dal suo creatore. Comunemente, i file rappresentano programmi e dati. I file sono generalmente organizzati in direttori (directory), che ne facilitano l’ uso. Il sistema operativo è responsabile delle seguenti attività connesse alla gestione dei file:

– Creazione e cancellazione dei file
– Creazione e cancellazione delle directory
– Supporto di funzioni per la manipolazione di file e directory
– Allocazione dei file nella memoria secondaria
– Salvataggio dei dati (backup) su supporti non volatili

Sistemi di protezione

Per protezione si intende un meccanismo per controllare l’accesso di programmi, processi e utenti sia al sistema, sia alle risorse degli utenti. Il meccanismo di protezione deve:

– distinguere tra uso autorizzato e non autorizzato.
– fornire un modo per specificare i controlli da imporre
– forzare gli utenti e i processi a sottostare ai controlli richiesti

Networking (Sistemi Distribuiti)

Un sistema distribuito è una collezione di processori che non condividono memoria o clock, ogni processore ha una memoria propria ed è connesso agli altri processori attraverso una rete di comunicazione. Il sistema operativo deve gestire l’ accesso alla rete come una forma di accesso ai file, dove i particolari riguardanti l’ interconnessione sono contenuti nel driver del dispositivo di interfaccia della rete stessa.

Sistema di interpretazione dei comandi

Uno dei programmi più importanti di un sistema operativo è l’ interprete dei comandi. Si tratta di un’ interfaccia tra l’ utente e il sistema operativo. Spesso viene chiamata shell. Molti sistemi operativi si differenziano proprio per l’ interprete dei comandi. Esistono interpreti amichevoli che rendono il sistema più adatto a certi utenti: ad esempio sistemi basati su mouse, finestre e menu come Windows. In altri di questi interpreti invece i comandi si immettono con la tastiera e appaiono su uno schermo. Il tasto invio segnala la fine di un comando, indicando che il comando è pronto per essere eseguito. Gli interpreti dei comandi dell’ MS-DOS e dello UNIX funzionano cosi.























































Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.