Sistemi Operativi Menù: 1) Introduzione al sistema operativo 2) Sistemi Monoprogrammati e Multiprogrammati 3) Portabilità e sistemi dedicati 4)Processi dei sistemi operativi 5) Modello a strati e shell 6) Protezione 7) Sistemisti PRESENTAZIONE FATTA DA DAVIDE VALENTI E SALVATORE PIPITONE IL 21 GENNAIO 2008
Introduzione al sistema operativo Torna al menù Introduzione al sistema operativo Il sistema operativo è un insieme di programmi e di moduli che gestiscono l’hardware del computer, per essere utilizzati dagli applicativi (vedi modello a strati) Per gestire al meglio l’hardware (ed impedire all’utente di fare danni) sono stati realizzati i dispositivi in plug and play (inserisci e usa), cioè periferiche che si installano in automatico tramite dei driver standard che il sistema operativo possiede
Sistemi monoprogrammati e multiprogrammati Torna al menù Sistemi monoprogrammati e multiprogrammati Per elaborare i vari processi è necessario che i dati da processare siano allocati nella memoria fisica del computer, nel corso della storia abbiamo assistito a 2 diversi modi di elaborazione: il sistema monoprogrammato e il multiprogrammato. Il primo il metodo piu’ vecchio permetteva di allocare in memoria i dati provenienti da un solo processo (e quindi impediva l’utilizzo all’utente di più processi, Il secondo, metodo piu’ recente permette di allocare in memoria dati provenienti da processi diversi elaborandoli (quasi in contemporanea) ciò permette all’utente di eseguire più programmi simultaneamente. vedi multitasking)
Portabilità e sistemi dedicati Torna al menù Portabilità e sistemi dedicati Un sistema operativo (o un applicativo) si dice portabile, quando è possibile usarlo in diversi tipi di macchine (con hardware differente), quindi indica un livello di compatiblilità dell’hardware con il software. Esistono diversi gradi di portabilità, dal software che funziona su hardware differenti ma per una stessa macchina (ad esempio i vari distributori di bibite non hanno tutti lo stesso hardware, un software può essere portabile se non considerano le differenze minime tra i vari pezzi che lo compongono). Il grado massimo di portabilità è quando un software non tiene conto della macchina su cui è stato installato, ad esempio linux funziona sia su un personal computer che su un lettore DVD, ovvero 2 macchine nate per 2 scopi differenti. Il sistema dedicato è invece quel software che è nato per funzionare su una macchina specifica.
Processi dei sistemi operativi Torna al menù Processi dei sistemi operativi Il processo è un insieme finito di azioni da eseguire in sequenza e dei dati che vengono elaborati dalle stesse azioni. L’oggetto che esegue il processo è chiamato processore I vari processi che un processore deve eseguire vengono messi in coda ed eseguiti. In passato l’utente poteva eseguire un solo processo per volta, ora grazie a nuovi processori più veloci è nata un nuovo metodo di elaborazione, il multitasking.
Torna al menù Multitasking Il multitasking è un nuovo metodo di elaborazione in cui il processore elabora un insieme di processi, non tutti assieme, ma dedicando frammenti di secondo ad ognuno di loro e dando l’illusione all’utente che i vari processi che sta utilizzando scorrano fluidamente e senza interruzione. Questa condivisione di tempo è chiamata time-sharing, e funziona tramite una coda, dove tutti i processi sono accodati in ordina di importanza, aspettando la loro elaborazione (quindi un processo di antivirus sarà sicuramente tra i primi della coda) Torna a “Sistemi monoprogrammati e multiprogrammati” Torna a “Processi dei sistemi operativi”
Modello a strati e shell parte 1 Torna al menù Modello a strati e shell parte 1 Computer è costituto da vari pezzi, hardware e software. Ora per motivi di sicurezza, nel corso della storia è stato impedito agli applicativi di interfacciarsi direttamente con l’hardware, il motivo è nato per una questione di sicurezza per proteggere l’hardware. Il modello a strati (guscio di cipolla) è nato appunto per dare sicurezza all’hardware e il sistema operativo è stato usato per fare da tramite tra l’hardware e il software applicativo. Continua
Modello a strati e shell parte 2 Torna al menù Modello a strati e shell parte 2 Quindi lo strato finale di questo modello è l’applicativo che si va da interfacciare con l’utente, l’utente non vede nulla di ciò che ci sta dietro, l’interfaccia finale è chiamata shell (guscio) Possiamo anche immaginare il modello a strati con un puzzle, questo aiuta a capire la differenza tra portabilità e sistema dedicato, un modello a strati a puzzle fa capire come un determinato software può essere compatibile solo in un determinato sistema operativo Creando questo modello a strati l’applicazione usa l’hardware tramite ciò che gli mostra il sistema operativo, questo fa si che l’hardware utilizzato dall’applicazione non sia quello fisico ma quello virtuale che il sistema operativo gli vuole fare vedere (ecco cosa si intende quando si parla di memoria virtuale o di periferiche virtuali, sono oggetti che realmente non esistono ma vengono mostrati dal sistema operativo all’applicazione e poi sarà il sistema operativo che sbrigherà le varie operazioni nel vero hardware fisico) Indietro Guarda immagine Vedi interprete di comandi
Rappresentazione di un modello a strati Torna al menù Rappresentazione di un modello a strati Indietro
Torna al menù Interprete di comandi Tra uno strato ed un altro è necessario che ci sia un programma adatto che interpreti i comandi che l’interfaccia superiore invia a quello inferiore, questi interpreti di comandi sono delle liste con una serie di operazioni da fare collegate ad un comando; Per fare un esempio il Prompt dei Comandi è anche un interprete di comandi, esso esegue delle operazioni collegate in base alle parole chiavi che vengono inseriti nella riga di comando, anche l’interprete di comandi di SQL che viene usato su C# è un interprete di comandi. Indietro
Torna al menù Protezione Nei punti precedenti la presentazione chiarisce come il sistema operativo sia in grado di gestire l’hardware al meglio per evitare danni, tuttavia a volte possono subentrare alcuni problemi causati da crackers e virus; i crackers sono utenti non desiderati che tramite la rete riescono ad entrare in una macchina l’adeguata autorizzazione e quindi illegalmente, riuscendo a prelevare dati presenti nella macchina, oppure possono anche fare di peggio, per esempio possono pure danneggiare l’hardware del computer bruciando molte delle sue schede. I virus invece sono piccoli programmi eseguibili che hanno funzione di danneggiare il sistema operativo, le loro funzioni possono essere la moltiplicazione per intasare lo spazio su disco, il cancellamento di alcuni dati e file importanti di sistema e l’email. Per difendersi da questi attacchi esistono programmi chiamati antivirus in grado di schermare il PC da virus e crackers.
Torna al menù Sistemisti Il sistemista (amministratore di sistema) è un individuo che ha il compito di controllare il corretto funzionamento del sistema operativo, i suoi compiti riguardano: dal controllo del hardware, controllo degli errori, controlla i vari utenti, la sicurezza e tante altre situazioni che devono essere controllate per mantenere una buona continuità del sistema operativo. Sono spesso richiesti in una azienda.