Insegnamento
Course full name
Embedded Systems
Course ID number
2122-3-E3101Q124
Risultati degli esami, aggiornati al 15 dicembre 2023
Completion requirements
Per qualsiasi dubbio contattateci, senza farvi problemi.
matr RM come predic exec sched tot prog overall finale test EDF RM teor 827016 26 28 12 14 20.00 26 23.00 23 852002 32 24 30 32 29.50 24 26.75 27 852331 28 28 26 30 28.75 28 28.38 28 856608 32 33 27 30 30.50 29 29.75 30
commento su RM come test
- 827016: insomma... 26
- 852002: ok. 32
- 852331: commenti ok, ma privi di critica all'intervento proposto. 28
- 856608: buono. 32
aspetti che danno non - predicibilità
- 827016: alcuni commenti ok, alcune inesattezze (minor). 28
- 852002: insomma, davvero un po' scarno... 24
- 852331: un po'scarno, ma ok. 28
- 856608: ok. 33
exec schedule EDF
- 827016: no, errore grave ripetuto. 12
- 852002: ok. 30
- 852331: arriva fino a 30 nella simulazione e quindi non scopre nella simulazione che non è schedulabile: la simulazione fatta è ok: in un altro pezzo di soluzione in risposta ad altro questito trova che non è schedulabile con test su fattore utilizzo. 26
- 856608: spiegazione scarna, ma ok. 27
schedulabilità RM
- 827016: no, usa test di EDF. 14
- 852002: ok. 32
- 852331: usa solo test liu-leylans, ma ok. 30
- 856608: solo iperbolico, ok. 30
progettino
- 827016: Buongiorno a tutti e scusate per il ritardo. Ho controllato i vostri elaborati, e dal momento che avete svolto insieme il lavoro, e che non mi sembra che ci siano differenze troppo significative in quello che avete consegnato, mi sentirei di dare lo stesso voto ad entrambi. Seguono un po’ di commenti sull’elaborato.
La struttura dei task mi sembra buona, ed usate i lock al posto giusto. Sullo scheduling diversi task hanno le stesse frequenze/priorità, quindi non è proprio un rate monotonic da manuale (mi sembra che FreeRTOS usi round robin se ha più task con la stessa priorità, e non so come questo abbia impatto sulla schedulabilità). Non vedo inoltre come avete effettivamente calcolato i WCET dei task: dite che avete tenuto conto dei tempi di comunicazione, ma non trovo dei conti espliciti.
Riguardo alla stesura codice ci sono dei punti in cui usate delle acquisizioni nidificate dei lock, che possono portare ai deadlock. Siete stati abbastanza accorti da non creare circolarità, quindi deadlock non ce ne sono, ma il codice poteva tranquillamente essere scritto acquisendo un lock alla volta.
Riguardo al funzionamento, il codice compila senza errori e stampa dei valori sulla UART come deve fare, ma mentre le letture dell’accelerometro sembrano a posto quelle del giroscopio e del magnetometro non cambiano valore quando muovo il dispositivo (e non è un problema dello shield, ho provato con due shield diversi).
In sintesi, il voto che mi sentirei di darvi è 26.
Last modified: Friday, 15 December 2023, 12:08 PM