Test del mio modello per la pianificazione ibrida nei sistemi incorporati

4

Sto lavorando a un progetto per la scuola, dove devo analizzare le prestazioni di alcuni algoritmi di server a priorità fissa (server di polling, server deferrabile, scambio di priorità) utilizzando un simulatore in caso di pianificazione ibrida, dove abbiamo sia compiti periodici difficili sia compiti aperiodici soft.

Nel mio modello, considero che:

  • le attività complesse hanno un periodo uguale alla loro scadenza, con un noto tempo di esecuzione nel caso peggiore (wcet) . Il tempo di esecuzione effettivo potrebbe essere inferiore al wcet.
  • i compiti soft hanno un wcet noto e tempi di interarrivazione casuali. Il tempo di esecuzione effettivo potrebbe essere inferiore al wcet.

Per testare questi algoritmi ho bisogno di casi di studio realistici. Per questo motivo sto scavando nella letteratura scientifica ma sto affrontando diversi problemi:

  • A volte trovo un elenco di compiti difficili con wcet, ma non viene specificato come vengono trovati i parametri delle attività soft.
  • Dato il wcet di un'attività, come posso modellarne l'effettivo tempo di esecuzione? Ciò significa, quale distribuzione casuale dovrei usare considerando il wcet?
  • Come posso modellare i tempi di interarrivazione casuale di compiti aperiodici morbidi?
posta markusian 08.11.2013 - 09:57
fonte

1 risposta

0

Sul WCET - non c'è una risposta definitiva a questo. I WCET tendono ad essere altamente pessimisti poiché, per un compito difficile, il compito assolutamente deve essere completato prima della scadenza o l'intera applicazione è un fallimento (ovviamente le attività fisse possono consentire una certa flessibilità in questo). Vorrei suggerire semplicemente una codifica rigida di una distribuzione che va fino al WCET, ma dove la maggior parte delle attività si completa in qualcosa come il 50% di WCET.

Sugli orari inter-arrivo casuali dei compiti molli dovrebbe essere sufficiente una semplice distribuzione normale / binomiale dei tempi inter-arrivo. Se lo desideri puoi semplicemente codificarlo dando la probabilità che l'attività arrivi in un determinato periodo (ad es. 1 secondo) come p e imposta p ad un valore es. P = 0.1 (in questo caso significa un inter-arrivo medio tempo di 10 secondi). Quindi prova contro il valore generato dalla tua funzione pseudo-casuale (cioè, in questo caso se RND () o qualsiasi cosa ha dato meno di 0.1, allora il tuo compito arriva).

    
risposta data 27.01.2014 - 13:43
fonte

Leggi altre domande sui tag