Scheda programma d'esame
SISTEMI OPERATIVI E LABORATORIO
STEFANO CHESSA
Anno accademico2017/18
CdSINFORMATICA
Codice277AA
CFU12
PeriodoSecondo semestre
LinguaItaliano

ModuliSettore/iTipoOreDocente/i
LABORATORIOINF/01LABORATORI48
MASSIMO TORQUATI unimap
SISTEMI OPERATIVIINF/01LEZIONI48
STEFANO CHESSA unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

Lo studente acquisirà conoscenze approfondite relative ai concetti fondamentali dei sistemi operativi e agli aspetti legati alla loro implememtazione. Inoltre, lo studente acquisirà conoscenze relative 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, un progetto e una prova orale.

Nella prova  scritta verrà valutata la capacità dello studente di comprendere e di risolvere alcuni esercizi che presentano situazioni ipotetiche in un sistema operativo.

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

Nella prova orale lo studente verrà valutato in base alla sua capacità di discutere i contenuti del corso usando una terminologia appropriata.

Il peso delle varie prove nella valutazione finale è orientativamente progetto (50%) - prova scritta e prova orale (50%)

 

 

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 and oral exam the student must be able to 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 sucject proposed by the teacher.

Methods:

  • Final oral exam
  • Final written exam
  • Laboratory report

Further information:
Students must produce a working project as result of the laboratories. The weighting of the different parts of the exam is: - project (50%) - final written and oral exam (50%)

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

Prerequisites

basic knowledge of computer architecture is suggested (although not mandatory)

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 una prova scritta, un progetto e una prova orale.

Nella prova  scritta verrà valutata la capacità dello studente di comprendere e di risolvere alcuni esercizi che presentano situazioni ipotetiche in un sistema operativo.

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

Nella prova orale lo studente verrà valutato in base alla sua capacità di discutere i contenuti del corso usando una terminologia appropriata.

Il peso delle varie prove nella valutazione finale è orientativamente progetto (50%) - prova scritta e prova orale (50%)

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 and oral exam the student must be able to 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 sucject proposed by the teacher.

Methods:

  • Final oral exam
  • Final written exam
  • Laboratory report

Further information:
Students must produce a working project as result of the laboratories. The weighting of the different parts of the exam is: - project (50%) - final written and oral exam (50%)

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 11/07/2017 17:06