Sistema operativo - Servizi
Un sistema operativo fornisce servizi sia agli utenti che ai programmi.
- Fornisce ai programmi un ambiente da eseguire.
- Fornisce agli utenti i servizi per eseguire i programmi in modo conveniente.
Di seguito sono riportati alcuni servizi comuni forniti da un sistema operativo:
- Esecuzione del programma
- Operazioni di I / O
- Manipolazione del file system
- Communication
- Rilevamento degli errori
- Assegnazione delle risorse
- Protection
Esecuzione del programma
I sistemi operativi gestiscono molti tipi di attività, dai programmi utente ai programmi di sistema come spooler di stampa, server dei nomi, file server, ecc. Ciascuna di queste attività è incapsulata come un processo.
Un processo include il contesto di esecuzione completo (codice da eseguire, dati da manipolare, registri, risorse del sistema operativo in uso). Di seguito sono riportate le principali attività di un sistema operativo rispetto alla gestione del programma:
- Carica un programma in memoria.
- Esegue il programma.
- Gestisce l'esecuzione del programma.
- Fornisce un meccanismo per la sincronizzazione dei processi.
- Fornisce un meccanismo per la comunicazione del processo.
- Fornisce un meccanismo per la gestione dei deadlock.
Operazione di I / O
Un sottosistema I / O comprende dispositivi I / O e il relativo software del driver. I driver nascondono agli utenti le peculiarità di specifici dispositivi hardware.
Un sistema operativo gestisce la comunicazione tra utente e driver di dispositivo.
- Per operazione di I / O si intende un'operazione di lettura o scrittura con qualsiasi file o qualsiasi dispositivo I / O specifico.
- Il sistema operativo fornisce l'accesso al dispositivo I / O richiesto quando richiesto.
Manipolazione del file system
Un file rappresenta una raccolta di informazioni correlate. I computer possono memorizzare file sul disco (memoria secondaria), per scopi di archiviazione a lungo termine. Esempi di supporti di memorizzazione includono nastro magnetico, disco magnetico e unità disco ottico come CD, DVD. Ciascuno di questi supporti ha le proprie proprietà come velocità, capacità, velocità di trasferimento dati e metodi di accesso ai dati.
Un file system è normalmente organizzato in directory per una facile navigazione e utilizzo. Queste directory possono contenere file e altre direzioni. Di seguito sono riportate le principali attività di un sistema operativo rispetto alla gestione dei file:
- Il programma deve leggere un file o scrivere un file.
- Il sistema operativo dà l'autorizzazione al programma per l'operazione su file.
- L'autorizzazione varia da sola lettura, lettura-scrittura, negata e così via.
- Il sistema operativo fornisce un'interfaccia all'utente per creare / eliminare file.
- Il sistema operativo fornisce un'interfaccia all'utente per creare / eliminare directory.
- Il sistema operativo fornisce un'interfaccia per creare il backup del file system.
Comunicazione
In caso di sistemi distribuiti che sono un insieme di processori che non condividono memoria, periferiche o un orologio, il sistema operativo gestisce le comunicazioni tra tutti i processi. Più processi comunicano tra loro attraverso linee di comunicazione nella rete.
Il sistema operativo gestisce le strategie di routing e connessione e i problemi di contesa e sicurezza. Di seguito sono riportate le principali attività di un sistema operativo rispetto alla comunicazione:
- Due processi richiedono spesso il trasferimento dei dati tra di loro
- Entrambi i processi possono essere su un computer o su computer diversi, ma sono collegati tramite una rete di computer.
- La comunicazione può essere implementata con due metodi, tramite Shared Memory o Message Passing.
Gestione degli errori
Gli errori possono verificarsi sempre e ovunque. Può verificarsi un errore nella CPU, nei dispositivi I / O o nell'hardware della memoria. Di seguito sono riportate le principali attività di un sistema operativo rispetto alla gestione degli errori:
- Il sistema operativo verifica costantemente eventuali errori.
- Il sistema operativo intraprende un'azione appropriata per garantire un'elaborazione corretta e coerente.
Gestione delle risorse
In caso di ambiente multiutente o multi-tasking, le risorse come la memoria principale, i cicli della CPU e l'archiviazione dei file devono essere allocate a ciascun utente o lavoro. Di seguito sono riportate le principali attività di un sistema operativo rispetto alla gestione delle risorse:
- Il sistema operativo gestisce tutti i tipi di risorse utilizzando gli scheduler.
- Gli algoritmi di pianificazione della CPU vengono utilizzati per un migliore utilizzo della CPU.
Protezione
Considerando un sistema informatico con più utenti e l'esecuzione simultanea di più processi, i vari processi devono essere protetti dalle attività degli altri.
La protezione si riferisce a un meccanismo o un modo per controllare l'accesso di programmi, processi o utenti alle risorse definite da un sistema informatico. Di seguito sono riportate le principali attività di un sistema operativo rispetto alla protezione:
- Il sistema operativo garantisce che tutti gli accessi alle risorse di sistema siano controllati.
- Il sistema operativo garantisce che i dispositivi I / O esterni siano protetti da tentativi di accesso non validi.
- Il sistema operativo fornisce funzionalità di autenticazione per ogni utente tramite password.