Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Algoritmo di scheduling EDF - Teknopedia
Algoritmo di scheduling EDF - Teknopedia

L'Earliest Deadline First (EDF), in italiano prima la scadenza più vicina, è un algoritmo di scheduling tipico dei sistemi operativi in tempo reale. Come dice il nome stesso, lo scheduler seleziona come prossimo processo da eseguire quello con la distanza minore dalla sua deadline. EDF è un algoritmo a priorità dinamica, in quanto la priorità assegnata ai processi cambia potenzialmente ad ogni esecuzione dello scheduler e il suo valore dipende unicamente dalle caratteristiche temporali degli stessi (tempo di arrivo, deadline, ecc.)[1].

La complessità dell'algoritmo è tradizionalmente O ( n 2 ) {\displaystyle O(n^{2})} {\displaystyle O(n^{2})}[2], anche se in letteratura scientifica è possibile trovare algoritmi che ammortizzano la complessità a O ( n log ⁡ n ) {\displaystyle O(n\log n)} {\displaystyle O(n\log n)}[3].

Caratteristiche dell'algoritmo

[modifica | modifica wikitesto]

La definizione formale dell'algoritmo di scheduling EDF può essere scritta come[1]:

Ad ogni istante temporale t, il job j è scelto per essere schedulato se la sua scadenza è la più vicina al tempo t.

Assumendo che ogni processo t {\displaystyle t} {\displaystyle t} diventi pronto a intervalli di tempo di periodo T t {\displaystyle T_{t}} {\displaystyle T_{t}} e che la scadenza corrisponda al periodo (scadenza implicita), allora è possibile calcolare analiticamente l'utilizzazione del sistema come:

U = ∑ t = 1 n C t T t {\displaystyle U=\sum _{t=1}^{n}{\frac {C_{t}}{T_{t}}}} {\displaystyle U=\sum _{t=1}^{n}{\frac {C_{t}}{T_{t}}}}

dove C t {\displaystyle C_{t}} {\displaystyle C_{t}} è il tempo di esecuzione worst-case. Se U ≤ 1 {\displaystyle U\leq 1} {\displaystyle U\leq 1}, lo schedule è ammissibile.

Ottimalità di EDF

[modifica | modifica wikitesto]

EDF è un algoritmo ottimo su sistemi uniprocessore preemptive: se non esiste uno schedule valido in EDF, non esisterà alcun altro algoritmo in grado di trovarlo.[4]

Esempio

[modifica | modifica wikitesto]

Si considerino i seguenti processi (si ipotizzi una scadenza implicita, ovvero equivalente al periodo):

Processo Tempo di esecuzione Periodo
P1 1 8
P2 2 5
P3 4 10

Lo scheduler al tempo 0 verificherà la distanza delle scadenze dei processi, è in questo caso la priorità assegnati ai processi è P 2 > P 1 > P 3 {\displaystyle P2>P1>P3} {\displaystyle P2>P1>P3}:

Uno schedule possibile dell'esempio, ipotizzando l'assenza di preemption

Note

[modifica | modifica wikitesto]
  1. ^ a b Sanjoy Baruah, Scheduling Real-time Tasks: Algorithms and Complexity, The University of North Carolina at Chapel Hill.
  2. ^ Michael O’Boyle, Embedded Software - Lecture 6: Scheduling (PDF), su inf.ed.ac.uk. URL consultato il 23 novembre 2016.
  3. ^ Jagbeer Singh, Bichitrananda Patra e Satyendra Prasad Singh, An algorithm to reduce the time complexity of earliest deadline first scheduling algorithm in real-time system (PDF), in International Journal of Advanced Computer Science and Applications, vol. 2, n. 2, 2011, pp. 32-37, DOI:10.14569/IJACSA.2011.020207.
  4. ^ Arezou Mohammadi, Selim G. Akl, Scheduling Algorithms for Real-Time Systems (PDF), School of Computing, Queen’s University, 2005.

Collegamenti esterni

[modifica | modifica wikitesto]
  • (EN) Denis Howe, earliest deadline first, in Free On-line Dictionary of Computing. Disponibile con licenza GFDL
  Portale Informatica: accedi alle voci di Teknopedia che trattano di informatica
Estratto da "https://it.wikipedia.org/w/index.php?title=Algoritmo_di_scheduling_EDF&oldid=141597028"

  • Indonesia
  • English
  • Français
  • 日本語
  • Deutsch
  • Italiano
  • Español
  • Русский
  • فارسی
  • Polski
  • 中文
  • Nederlands
  • Português
  • العربية
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022