Capitolo 0 : Introduzione al corso CdL in Ingegneria Elettronica e delle Telecomunicazioni: Fondamenti dei S.O. (6CFU) Capitolo 0 : Introduzione al corso Giacomo PISCITELLI
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Qual è la funzione di un sistema operativo? Un sistema di calcolo: vista astratta e componenti. Che cosa è, cosa fa e come è fatto un sistema operativo. I pre-requisiti per la frequentazione del corso. Il materiale didattico. Il programma del corso. Il rapporto con gli studenti. Gli esami. Alcuni utili consigli per il corso. 2 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso IL SISTEMA OPERATIVO... è l’insieme dei programmi che agisce come intermediario tra un utente (o un programma) del computer e l’hardware Il sistema operativo consente, in generale, l’utilizzo di un calcolatore mono- processore da parte di più utenti «contemporaneamente». 3 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso IL SISTEMA OPERATIVO … il suo scopo è quello di rendere agevole l’uso dell’hardware, mascherando le caratteristiche delle risorse fisiche (interfaccia) gestire e allocare le risorse fisiche ottimizzandone l’uso con opportune politiche, controllare l’esecuzione dei programmi e condividere correttamente (nel tempo e nello spazio) le operazioni sulle risorse del sistema. (nucleo o kernel) Eseguire i programmi degli utenti 4 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso 5 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Hardware – fornisce le risorse computazionali di base: (CPU, memoria, dispositivi di I/O). Sistema operativo – controlla e coordina l’uso dell’hardware da parte dei programmi e dei diversi utenti Altri programmi di sistema (cioè indipendenti dall’applicazione, come compilatori, editor, etc., forniti con il sistema operativo) Programmi applicativi — definiscono il modo in cui le risorse del sistema sono usate per risolvere i problemi computazionali dell’utente (database, videogiochi, programmi di produttività personale,...) Utenti (persone, macchine, altri calcolatori) 6 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso A partire dagli anni ’50, si sono succeduti centinaia di SO, ciascuno dei quali con caratteristiche, funzioni ed obiettivi diversi: per rendere più conveniente l’uso del calcolatore, per renderne più efficiente il funzionamento, per rendere più facile il suo uso, per rendere possibile lo sviluppo di applicazioni in tempo reale stretto (hard real-time), …… Inizialmente ….. …per comprendere che cosa è un SO, ne esamineremo in breve l’evoluzione negli anni; …per sapere che cosa fa un SO, ne illustreremo le principali funzioni in rapporto a quelle del processore in cui opera; …per conoscere come è fatto un SO, ne studieremo l’architettura. 7 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Conoscere i componenti di un processore (CPU, Memoria centrale, Bus, Controllori, Dispositivi), la struttura interna di ciascuno di essi, il loro modo di funzionare e la modalità di esecuzione di un programma. Saper descrivere un algoritmo con un linguaggio strutturato o grafico (flow-chart). Saper tradurre un algoritmo descritto nella forma anzidetta in un linguaggio di programmazione (preferibilmente il linguaggio C) Conoscere l’organizzazione e l’uso dei dati sui supporti di memorizzazione secondaria Conoscere le principali strutture di dati e le relative modalità di memorizzazione e manipolazione Essere familiare con l’uso di Internet. 8 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Il libro di testo consigliato Operating System Concepts A. Silberschatz, P.B. Galvin, G. Gagne, 9th Edition International Student Version, WILEY, March 2013, ©2013 ISBN: Edizione in italiano Sistemi operativi: Concetti ed esempi Articoli tratti da riviste (*) Appunti e letture consigliate (*) Copia dei lucidi (*) Esercizi svolti (*) Tracce degli esercizi assegnati alle precedenti prove scritte (*) (*) cfr. lo “scaffale” del docente sul sito www-ictserv.poliba.it/piscitelli/scaffale.htmwww-ictserv.poliba.it/piscitelli/scaffale.htm 9 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Lezioni teoriche: Struttura di un sistema di calcolo e architettura/funzionamento di un sistema operativo: evoluzione, interfaccia, modelli del nucleo: 6 ore; Attività computazionali (job, job-step, task) e stati di un’attività computazionale: 2 ore; Nucleo e componenti del nucleo: 4 ore; Politiche di gestione delle risorse: 8 ore; Gestione dei processi: concorrenza, cooperazione, blocco critico, comunicazione: 8 ore; Sistemi a multiprocessori (cenni): 4 ore; protezione e sicurezza informatica (cenni): 4 ore. Esercitazioni: relative alle lezioni teoriche e alle caratteristiche dei S.O. WINDOWS E LINUX: 16 ore Laboratorio: Installazione ed uso sul proprio sistema di calcolo di una distribuzione di LINUX: 12 ore 10 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Il rapporto con gli studenti viene incoraggiato attraverso il dialogo diretto durante le ore di lezione e quelle di ricevimento, ma anche, per i più “ritrosi”, attraverso la posta elettronica. L’informazione su date e orari del ricevimento L’informazione relativa a esami (date, orari, aule, ecc.) è reperibile nella “bacheca” virtuale del sito www-ictserv.poliba.it/piscitelli/bacheca.htm Notizie dell’ultima ora (rinvii degli esami, orari ed aule) sono fornite nelle “warm news” del sito www-ictserv.poliba.it/piscitelli/news.htm 11 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso L’esame consiste in una prova scritta e, ove richiesta, in una prova orale, relativa ai contenuti del programma ufficiale dell'anno accademico corrente. Non sono previste prove intermedie o di “esonero”. Gli appelli d’esame sono dislocati, di norma, in 5 sessioni: al termine del 1° semestre (2 appelli), al termine del 2° semestre (2 appelli), dopo la pausa estiva (2 appelli) e nelle pause di maggio e novembre. Gli studenti che, in una prova scritta di una sessione d’esame, riportano una votazione inferiore a 8/30, sono invitati a presentarsi alla sessione successiva. 12 G. Piscitelli
Fondamenti dei Sistemi Operativi 0. Presentazione del corso Seguire le lezioni! Ascoltarla in diretta e non in differita (diffidate delle registrazioni) Studiare sul libro e mai solo e soltanto sulle slide! Domandarsi sempre quali sono i vantaggi e gli svantaggi delle soluzioni proposte Non aver paura di: Fare la domanda sbagliata in aula Dare la risposta sbagliata in aula Proporre alternative! Studiare in gruppo (due o tre) 13 G. Piscitelli