Sistemi distribuiti dedicati (2008/2009)

Course partially running

Course code
4S01924
Credits
5
Coordinator
Andrea Acquaviva
Teaching is organised as follows:
Unit Credits Academic sector Period Academic staff
Teoria 4 ING-INF/05-INFORMATION PROCESSING SYSTEMS 2° Q Andrea Acquaviva
Laboratorio 1 ING-INF/05-INFORMATION PROCESSING SYSTEMS 2° Q Andrea Acquaviva

Learning outcomes

Module: Teoria
-------
The course will first provide an overview of embedded distributed systems, ranging from multicore platforms for media gateways to sensor networks for automotive, industrial applications and for personal and environmental monitoring. Then, it will concentrate on the issues of scalability of applications, load balancing, and communication efficiency. For each of these issues the strategies adopted to provide a suitable quality of service level and to match real-time requirements at the level of compiler, operating system and communication libraries will be explored.


Module: Laboratorio
-------
The purpose of Lab classes is to give students some pratictal instruments to configure, control and optimize software of distributed embedded systems

Syllabus

Module: Teoria
-------
Introduction

0.1 Multimedia and QoS oriented architectures for personalized and multimedia services: enterprise networks, small office and home networks, pervasive computing, body area networks
0.2 Network and multimedia applications: routing, packet filtering, security, video-conferencing, video-transcoding.


1 System and network architectures

1.1 On-chip distributed systems: media gateway, routers, base stations
1.2 Networked distributed systems: sensor networks


2 Software development
2.1 Techniques for application modeling: data-flow, control-flow
2.2 Parallel compilers: OpenMP, MachSuif
2.3 Programming models: Pthreads, message passing, shared memory


3 Operating systems and middleware

3.1 Operating systems for multiprocessors: Linux SMP, embedded RTOS
3.2 Middleware and libraries for communication and synchronization
3.3 Virtual machines: Hypervisor, JVM
3.4 Object oriented computation on distributed systems


4 Optimization

4.1 Scalability
4.2 Load balancing: SMP, BMP, AMP techniques
4.3 Energy and thermal optimization
4.4 Reliability management


Module: Laboratorio
-------
Lab.0 Distributed systems simulation tools howto

Lab.1 Parallel compilers (OpenMP, Sieve)

Lab.2 Linux SMP: SMP scheduling configuration and control

Lab.3 Parallelization and scalability analysis of a specific application

Assessment methods and criteria

Module: Teoria
-------
oral exam
lab project


Module: Laboratorio
-------
--