Scheda programma d'esame
SISTEMI OPERATIVI E LABORATORIO
STEFANO CHESSA
Anno accademico2018/19
CdSINFORMATICA
Codice277AA
CFU12
PeriodoSecondo semestre

ModuliSettoreTipoOreDocente/i
LABORATORIOINF/01LABORATORI48
LUCA ONETO unimap
MASSIMO TORQUATI unimap
SISTEMI OPERATIVIINF/01LEZIONI48
STEFANO CHESSA unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Lo studente acquisirà conoscenze relative ai concetti principali dei sistemi operativi e della loro implementazione, e alla programmazione concorrente.

Knowledge

The student who successfully completes the course will demonstrate a solid knowledge of the fundamental concepts related to the operating systems, of the aspects related to their implementation and of concurrent programming in general.

 

Modalità di verifica delle conoscenze

La valutazione avverrà tramite una prova scritta e la discussione di un progetto.

Nella prova  scritta verrà valutata la capacità dello studente di comprendere e di risolvere alcuni esercizi che presentano situazioni ipotetiche in un sistema operativo e verrà valutata la capacità di presetare  contenuti del corso usando una terminologia appropriata.

Con il progetto verrà valutata la capacità dello studente di mettere in pratica le conoscenze acquisite, tramite la realizzazione di un progetto funzionante.

 

 

 

Assessment criteria of knowledge

- The student will be assessed on his/her demonstrated ability to discuss the main course contents using the appropriate terminology.

- During the written test the student must demonstrate his/her knowledge of the course material and be able to solve exercises and to discuss the reading matter thoughtfully and with propriety of expression.

- The student must also demonstrate the ability to put into practice and to execute, with critical awareness, the activities illustrated or carried out under the guidance of the teacher during the laboratory, by implementing a project on a subject proposed by the teacher.

Methods:

  • written test
  • project (with oral discussion)

Further information:
Students must produce a working project as result of the laboratories. 

Capacità

Lo studente acquisirà la capacità di scrivere programmi concorrenti che utilizzano chiamate di sistema per l'uso dei dispositivi e per l'interazione con il sistema operativo

Skills

the student will have the ability to write concurrent programs that use system calls for the interaction with the devices and with the operating system

Modalità di verifica delle capacità

Le capacità acquisite dallo studente verravvo verificate tramite la realizzazione di un progetto, su un argomento proposto dal docente di laboratorio.

 

Assessment criteria of skills

The student will demonstrate the ability to put into practice and to execute, with critical awareness, the activities illustrated or carried out under the guidance of the teacher during the laboratory, by implementing a project on a subject proposed by the teacher of the laboratory.

Comportamenti

Il corso non si pone obiettivi di apprendimento in termini di comportamenti attesi.

Behaviors

The course does not have specific objectives in terms of expected behaviours

Modalità di verifica dei comportamenti

Non sono previste prove per la verifica dei comportamenti.

Assessment criteria of behaviors

the course do not have specific tests to assess the extecpet behaviours

Prerequisiti (conoscenze iniziali)

sono utili basi di architetture degli elaboratori e di programmazione

Prerequisites

basic knowledge of computer architecture and programming 

Indicazioni metodologiche

Le lezioni avvengono in aula o in laboratorio alla presenza del docente. Le attività di apprendimenti comprendono: 

  • seguire le lezioni
  • attività pratica di laboratorio
  • studio individuale

Non c'è obbligo di presenza alle lezioni          

Teaching methods

Delivery: face to face

Learning activities:

  • attending lectures
  • individual study
  • Laboratory work

Attendance: Not mandatory

 

Programma (contenuti dell'insegnamento)

Il corso è strutturato in due moduli: il primo modulo presenta i fondamenti dei sistemi operativi e il secondo modulo di laboratorio mostra un’applicazione concreta dei concetti teorici presentati nel primo modulo.
Il primo modulo introduce i principi ed i concetti su cui si basano i sistemi operativi e analizza la loro realizzazione nei sistemi reali. In particolare, vengono presentate le tecniche che consentono di coordinare e gestire le risorse di un sistema di elaborazione e che permettono di trasformare la macchina fisica in una macchina astratta, dotata di funzionalità più convenienti per l'utente. Il corso lascia ampio spazio alla descrizione e all'esemplificazione di come i vari concetti presentati sono realizzati nei sistemi Unix/Linux e in quelli della famiglia Microsoft Windows. Il secondo modulo fornisce le conoscenze di base relative alla programmazione C con chiamate di sistema Unix/POSIX. In particolare, vengono prese in considerazione le chiamate standard per il trattamento di file e directory, processi, thread, segnali, pipe, socket e vari meccanismi di sincronizzazione.

Syllabus

The course is organized in two moduli: one theoretical (named Operating Systems), and one practical (named laboratory). The Operating Systems module introduces the main concepts of operating systems and discusses their implementation in real systems. Specific topics covered are concurrency and the management of processor, memory and device management, the file system and the case studies of Unix/Linux and Windows. The module of laboratory gives a broad view of standard tools for sequential C programs addressing debugging, testing, compiling, making libraries, using makefiles to manage large programs. Precisely, the module presents the Bash shell scripting language and develop simple scripts for routine tasks. In the last part of the course we present Posix programming and develop a small client-server system using Posix threads.

Bibliografia e materiale didattico

T. Anderson, M. Dahlin : "Operating Systems: principles and practice", Recursive Books Ltd, 2013 Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.

Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004

Bibliography

T. Anderson, M. Dahlin : "Operating Systems: principles and practice", Recursive Books Ltd, 2013 Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004.

Marc J. Rochkind. Advanced UNIX Programming 2nd Edition, Addison-Wesley Professional Computing Series, 2004

Indicazioni per non frequentanti

gli studenti non frequentanti hanno accesso a tutto il materiale didattico (inclusa la registrazione delle lezioni) al sito web del corso

Non-attending students info

All the students have access to all material (included recordings of the classes) on the web site of the course

Modalità d'esame

La valutazione avverrà tramite la discussione di un progetto assegnato durante il corso e realizzato dagli studenti, e tramite una prova scritta che verterà sugli argomenti di entrambi i moduli di laboratorio e di teoria. In ogni appello d’esame, l’ammissione alla prova scritta è vincolata alla presentazione (almeno 5 giorni prima della data dell’appello) di un progetto che deve essere valutato ammissibile per poter proseguire l'esame. Nel caso di un numero limitato di iscritti all’appello i docenti si riservano di sostituire la prova scritta con una prova orale equivalente, avvisando preventivamente gli iscritti tramite l’e-mail indicata dagli stessi all’iscrizione.

Nella prova scritta verrà valutata la capacità dello studente di comprendere e di risolvere alcuni esercizi che presentano situazioni ipotetiche in un sistema operativo e verrà valutata la capacità di presentare contenuti del corso usando una terminologia appropriata.

Con il progetto verrà valutata la capacità dello studente di mettere in pratica le conoscenze acquisite, tramite la realizzazione di un progetto funzionante.

Durante il corso si svolgeranno inoltre due prove (scritte) di verifica intermedia (orientativamente a metà del corso e alla fine del corso). Lo studente che ottiene un voto sufficiente alle prove di verifica intermedia è esentato dalla prova scritta, e dovrà solo discutere il progetto realizzato in uno degli appelli dello stesso anno accademico.

La validità del voto conseguito con le prove di verifica intermedia cessa al termine dell’anno accademico (quindi dopo l’ultimo appello straordinario, che si svolge normalmente ad Aprile dell’anno successivo). Ogni prova di verifica intermedia consiste nello svolgimento di alcuni esercizi riguardanti entrambi i moduli (di teoria e di laboratorio) e può essere sostenuta prima della presentazione del progetto.

Si fa presente che per l’ammissione a tutte le prove d’esame, incluse le prove di verifica intermedia, è obbligatoria l’iscrizione secondo le modalità stabilite dal corso di laurea.

Assessment methods

- The student will be assessed on his/her demonstrated ability to discuss the main course contents using the appropriate terminology.

- During the written test the student must demonstrate his/her knowledge of the course material and be able to solve exercises and to discuss the reading matter thoughtfully and with propriety of expression.

- The student must also demonstrate the ability to put into practice and to execute, with critical awareness, the activities illustrated or carried out under the guidance of the teacher during the laboratory, by implementing a project on a subject proposed by the teacher.

Methods:

  • written test
  • project (with oral discussion)

Further information:
Students must produce a working project as result of the laboratories. In order to be admitted at the written test the student must deliver his/her project at least 5 days before the test, and the project should be assessed as admissible by the instructor.

The written test can be replaced by two intermediate, written tests (one at half of the semester and one at the end of the semester). In this case the two intermediate tests can be done without presenting a project in advance. The project can be presented by the student later during the academic year.  The grade of the two tests obtained in this way remains valid one academic year.

 

Altri riferimenti web

http://didawiki.cli.di.unipi.it/doku.php/informatica/sol/start

Additional web pages

http://didawiki.cli.di.unipi.it/doku.php/informatica/sol/start

Ultimo aggiornamento 25/01/2019 08:39