Diferența cheie - Planificator vs Dispecer
Scheduler și Dispatcher sunt asociate cu planificarea proceselor unui sistem de operare. Diferența cheie dintre planificator și dispecer este că planificatorul selectează un proces din mai multe procese care urmează să fie executat în timp ce dispecerul alocă CPU pentru procesul selectat de către planificator.
Într-un sistem informatic, se execută mai multe procese. Programarea este procesul sistemului de operare pentru a decide ce proces ar trebui alocat CPU-ului pentru executarea mai multor procese.
CUPRINS
1. Prezentare generală și diferența cheie
2. Ce este Planificatorul
3. Ce este Dispecerul
4. Relația dintre Programator și Dispecer
5. Compararea alăturată - Planificator vs Dispecer în formă tabelară
6. Rezumat
Ce este Scheduler?
Există trei tipuri de planificatoare într-un sistem de operare. Acestea sunt programatorul pe termen lung, programatorul pe termen scurt și programatorul pe termen mediu. Programatorul pe termen lung este, de asemenea, cunoscut sub numele de programator de joburi. În sistemul informatic, există o serie de procese care așteaptă executarea. Aceste procese sunt plasate în stocarea secundară sau în coada de lucru pentru a fi executate ulterior. Obiectivul programatorului pe termen lung este de a selecta un proces din coada de lucru și de a aduce acel proces în coada pregătită din memoria principală.
Planificatorul pe termen scurt este, de asemenea, cunoscut sub numele de programator CPU. Sarcina programatorului pe termen scurt este de a selecta un proces în coada pregătită care ar trebui alocat procesorului. Planificatorul pe termen scurt ar trebui să aleagă un proces din coada pregătită în timp ce procesul anterior trece în starea de așteptare. Ar trebui să fie rapid, altfel timpul CPU va fi irosit.
Figura 01: Programarea proceselor
Procesul de executare ar putea necesita o operație de I / O. Deci, procesul trece la starea de așteptare. Se spune că acest proces este suspendat. Pentru utilizarea maximă a procesorului, ar trebui să ruleze un alt proces. Procesul suspendat este transferat înapoi în memoria secundară. După ceva timp, procesul transferat poate reveni în memoria principală și poate continua execuția de unde a fost terminat. Transferul procesului suspendat în memoria secundară se numește swapping out. Aducerea procesului înapoi în memoria principală este cunoscută sub numele de swapping in. Această swapping in și out este realizată de programatorul mediu.
Ce este Dispatcher?
Când programatorul pe termen scurt selectează din coada gata, dispecerul îndeplinește sarcina de alocare a procesului selectat procesorului. Un proces care rulează trece la starea de așteptare pentru operația IO etc. Apoi procesorul este alocat unui alt proces. Această comutare a procesorului de la un proces la altul se numește comutarea contextului. Un dispecerat efectuează diverse sarcini, inclusiv comutarea contextului, configurarea registrelor utilizatorilor și maparea memoriei. Acestea sunt necesare pentru ca procesul să execute și să transfere controlul procesorului în acel proces. La expediere, procesul se schimbă de la starea de pregătire la starea de rulare.
Uneori, dispecerul este considerat ca o parte a planificatorului pe termen scurt, astfel încât întreaga unitate este numită planificator pe termen scurt. În acest scenariu, sarcina programatorului pe termen scurt este de a selecta un proces din coada gata și, de asemenea, de a aloca CPU pentru acel proces.
Care este relația dintre programator și dispecer?
Dispecerul atribuie procesului selectat de către programatorul pe termen scurt CPU
Care este diferența dintre programator și dispecerat?
Difuzarea articolului din mijloc înainte de tabel
Planificator vs Dispecer |
|
Un programator este un software special de sistem care se ocupă de planificarea proceselor prin selectarea procesului de executat. | Dispecerul este modulul care oferă controlul procesorului procesului selectat de programatorul pe termen scurt. |
Tipuri | |
Există trei tipuri de planificatoare cunoscute sub numele;
|
Nu există o clasificare pentru un dispecer. |
Sarcini principale | |
Planificatorul pe termen lung selectează procesul din coada de lucru și îl aduce la coada gata. Programatorul pe termen scurt selectează un proces în coada pregătită. Planificatorul mediu efectuează swap in, swap din proces. |
Dispecerul alocă CPU procesului selectat de programatorul pe termen scurt. |
Rezumat - Planificator vs Dispecer
Scheduler și Dispatcher sunt utilizate în planificarea proceselor unui sistem de operare. Diferența dintre planificator și dispecer este că planificatorul selectează un proces din mai multe procese pentru a fi executat în timp ce dispecerul alocă CPU pentru procesul selectat de către planificator.