Italiano
Italian
Nessuno
None
Lezioni di Teoria: 72 ore
Theory classes: 72 hours
L’insegnamento permette agli studenti di acquisire
conoscenze relative alle diverse architetture dei
calcolatori mono/multi-processore ai sistemi di cloud
computing che sono alla base di moltissimi
sistemi distribuiti che richiedono un elevato grado di
orchestrazione. Tali conoscenze, integrando le
nozioni acquisite negli insegnamenti di fondamenti di
informatica e sistemi operativi, permetteranno
di fornire una conoscenza più approfondita dei
principi alla base del funzionamento dei moderni
sistemi di elaborazione anche in ambiti cloud.
Al termine del corso lo studente sarà in grado
applicare le acquisite conoscenze per: analizzare
criticamente varie architetture di calcolatori per futuri
progetti; analizzare criticamente le componenti
HW, FW, SW che sono coinvolte nella realizzazione
di un sistema di elaborazione; proporre soluzioni
efficienti ed argomentate a problemi complessi;
decodificare e valutare i dati contenuti in documenti
tecnici come datasheet con particolare riferimento ai
microcontrollori micro-processori; conoscere
gli aspetti delle moderne infrastrutture di cloud
computing; valutare IaaS, PaaS, SaaS; analizzare
criticamente i servi di cloud computing; progettare
applicazioni in container e loro orchestrazione;
progettare soluzioni serverless.
Il corso svilupperà la capacità di svolgere analisi
progettuali che richiedono un approccio
multidisciplinare considerando l’elevata trasversalità
del corso che comprende le moderne
architetture ed organizzazione dei calcolatori con uno
sguardo verso i sistemi di cloud computing.
Grazie allo svolgimento di un lavoro di gruppo gli
studenti potranno incrementare le loro abilità
comunicative inserendosi in un team e presentando il
risultato del lavoro in modo strutturato. Questo
consente l’approfondimento di un tema specifico con
conseguente sviluppo di capacità di analisi e
sintesi di un problema anche complesso trattato
nell’ambito del corso.
The course enables students to get knowledge of the
different architectures of single/multi-processor
computers and cloud computing architecture that are
widely used to manage distributed and
orchestrated applications. This knowledge is
integrated in a larger framework with the foundations
on computer science and operative systems, driving
the student to a thorough understanding of the
principles underlying the functioning of modern
computer systems also in cloud scenarios.
At the end of the course the students will be able to
apply the acquired knowledge to: critically
analyze several architectures of computers for future
projects; critically analyze the HW, FW, SW
components that are involved in the implementation
of a processing/computing system; propose
efficient and reasoned solutions to complex
problems; decode and evaluate the data contained in
technical documents such as datasheets with
particular reference to the micro-microprocessor/
controller; know the aspects of modern cloud
computing infrastructures; evaluate IaaS,
PaaS, SaaS; critically analyze cloud computing
services; design of apps running in containers and
their orchestration; serverless design
The course enables students to reinforce the ability
for system analysis & design that usually requires
a multi-disciplinary approach also considering the
transversality of the course starting from the
modern computer architectures and organization to
the cloud computing systems. Small work groups
of students will be formed to increase their
communication skills becoming part of a team and
presenting the result of work in a structured way. This
allows the study of a specific theme / topic
that develops and enforces analytical and synthesis
skills.
Il corso si divide in due parti. Nella prima si intende fornire agli studenti una conoscenza di base sull'architettura dei calcolatori elettronici. Nella seconda si vuole fornire una conoscenza di base sulle reti di calcolatori.
Sezione Calcolatori:
1) Architetture dei calcolatori
2) Operazioni logiche in ALU
3) Registri e Cache
4) Bus e loro arbitraggio
5) Istruzioni e microistruzioni
6) Processori (pipeline, superscalare,.)
7) Memoria centrale
8) Memorie di massa
9) Interruzioni e dispositivi di I/O
Sezione Reti di calcolatori:
10) Introduzione alle reti di calcolatori
11) Protocolli di comunicazione
12) I livelli della pila ISO/OSI
13) Cloud Computing: infrastrutture, virtualizzazioni, automazione, orchestrazione, paradigmi della programmazione, ulteriori aspetti
The course is divided into two parts. The first is intended to give students a basic understanding of the architecture of computers. The second aims to provide a basic understanding of computer networks.
Topics
Computers part:
1) Computer Architectures
2) Logic Operations in ALU
3) Registers and Cache
4) Bus and arbitration
5) Instructions and Microinstructions
6) Processors (pipeline, superscalar,.)
7) Central Memory
8) Storage Memory
9) Interrupts and I/O devices
Computer Networks part:
10) Introduction to computer networks
11) Communication protocols
12) The ISO / OSI stack levels
13) Cloud Computing: infrastructures, virtualizations, automation, orchestration, programming paradigms, other aspects
La valutazione del livello di apprendimento degli studenti si basa su due prove:
- un progetto nel quale lo studente affronta i problemi dell'analisi di requisiti e definizione di architetture di reti di calcolatori e cloud utilizzando quanto introdotto nel corso. Il progetto conduce alla stesura di un elaborato che documenta le attività svolte e i risultati ottenuti;
- una prova orale, consistente nella esposizione di concetti e basi teoriche su uno o più temi trattati nel corso, anche a partire dalle eventuali lacune
evidenziatesi nello svolgimento della altre prove.
Il progetto può essere svolto in gruppi, composti al massimo da tre studenti. Alla prova orale si accede con valutazioni sufficienti dell'altra prova. Un progetto sufficiente rimane valido per le sessioni successive.
Per superare con esito positivo la valutazione dell'apprendimento, lo studente deve dimostrare, attraverso le prove prima descritte, di aver ben compreso i concetti esposti nel corso. In particolare la parte di elaborato tematico ha come obiettivo la acquisizione da parte dello studente della capacità di analisi critica sulle realizzazioni esistenti di sistemi di elaborazione in base alle specifiche tecniche disponibili pubblicamente da parte dei produttori. Un altro obiettivo è la capacità dello studente di agire nell'ambito di un gruppo di lavoro, ed attribuirsi un ruolo, per la realizzazione del tema che consisterà principalmente in un rapporto da realizzare in circa 10 ore, dopo uno studio preliminare di circa 10 ore. Nella prova orale lo studente deve dimostrare di aver ben compreso i concetti esposti nel corso, espressi con linguaggio tecnico corretto.
Durante la sessione di esame, lo studente viene dapprima invitato a parlare del suo elaborato. Durante la discussione, vengo posti quesiti e collegamenti con i temi della prima e seconda parte del corso, di crescente difficoltà e dettaglio. Oltre alla conoscenza delle nozioni di base, alla valutazione della accuratezza nello studio del materiale didattico e dei testi, viene in modo incrementale saggiata la capacità lettura critica dei testi, la comprensione profonda dei concetti di base e la cultura tecnica.
Perché l'esito complessivo della valutazione sia positivo, lo studente deve conseguire almeno la sufficienza, pari a diciotto punti su un massimo di trenta, ottenibile dalla produzione e discussione dell'elaborato scritto di qualità minima insieme alla corretta risposta ad un insieme di domande considerate di base e indispensabili. Per le attribuzioni di voto superiore alla sufficienza si valuterà la conoscenza e competenza dimostrate sia nel progetto che durante la discussione / approfondimento.
The assessment of the students' learning level is based on two tests:
- a project in which the student faces the problems of requirements analysis and definition of computer network and cloud architectures using what is introduced in the course. The project leads to the drafting of a paper that documents the activities carried out and the results obtained;
- an oral test, consisting in the presentation of concepts and theoretical bases on one or more topics covered in the course, also starting from any gaps
highlighted in the performance of the other tests.
The project can be carried out in groups, consisting of a maximum of three students. The oral exam is accessed with sufficient assessments of the other exam. A sufficient project remains valid for subsequent sessions.
To successfully pass the assessment of learning, the student must demonstrate, through the tests described above, that he / she has well understood the concepts presented in the course. In particular, the thematic part has as its objective the acquisition by the student of the ability of critical analysis on the existing realizations of processing systems based on the technical specifications available publicly by the producers. Another objective is the student's ability to act within a working group, and to assign himself a role, for the realization of the theme which will mainly consist of a report to be carried out in about 10 hours, after a preliminary study of about 10 hours. . In the oral exam, the student must demonstrate that they have well understood the concepts presented in the course, expressed with correct technical language.
During the exam session, the student is first invited to talk about his paper. During the discussion, questions and links are asked with the topics of the first and second part of the course, of increasing difficulty and detail. In addition to the knowledge of the basic notions, the evaluation of the accuracy in the study of the didactic material and the texts, the critical reading ability of the texts, the deep understanding of the basic concepts and the technical culture are incrementally tested.
For the overall outcome of the assessment to be positive, the student must achieve at least the sufficiency, equal to eighteen points out of a maximum of thirty, obtainable from the production and discussion of the written paper of minimum quality together with the correct answer to a set of questions considered. basic and indispensable. For the attributions of marks higher than sufficiency, the knowledge and competence demonstrated both in the project and during the discussion / in-depth analysis will be assessed.
William Stallings: “Computer Organization and Architecture – Designing for Performance, 11th/ed.”, Pearson
Andrew S. Tanenbaum, Nick Feamster, David Wetherall: “Computer Networks, 6th/ed.", Pearson
Douglas E. Comer: "The Cloud Computing Book", Taylor & Francis
William Stallings: “Computer Organization and Architecture – Designing for Performance, 11th/ed.”, Pearson
Andrew S. Tanenbaum, Nick Feamster, David Wetherall: “Computer Networks, 6th/ed.", Pearson
Douglas E. Comer: "The Cloud Computing Book", Taylor & Francis
no
no
Università Politecnica delle Marche
P.zza Roma 22, 60121 Ancona
Tel (+39) 071.220.1, Fax (+39) 071.220.2324
P.I. 00382520427