Vad är Round-Robin-schemaläggning?

Round-robin-schemaläggning är en algoritm som används för att hjälpa till att skapa process- eller jobbscheman för att säkerställa att varje process som krävs för att slutföra ett jobb får en riklig mängd körtid. CPU:er i datorer kan använda tidsdelning för att ge en viss tid för varje process att använda per cykel.

Att använda round-robin-schemaläggning tilldelar en del av tiden till varje process som körs. I en dator till exempel startar användaren tre applikationer, e-post, en webbläsare och en ordbehandlare. Dessa applikationer laddas in i systemminnet som processer och var och en tillåts köras utan att användaren överväger vilka applikationer som körs i bakgrunden.

Round-robin-schemaläggning hanterar delning av resurser mellan de tre applikationsprocesserna (och de otaliga andra som körs i bakgrunden helt osynliga för användaren). Denna schemaläggning fungerar bra eftersom varje applikation får en viss tid per processorcykel. En processorcykel är den tid det tar för processorn att hantera varje process som körs, en gång.

De körande applikationerna i det tidigare exemplet ger en kort cykel för processorn och mer tid skulle tilldelas var och en av dessa tre processer, vilket gör att de verkar fungera bättre för slutanvändaren. Utan round robin-schemaläggning skulle applikationen som laddas först i minnet sannolikt monopolisera processorn tills den var klar med att utföra någon av de uppgifter som den hade tilldelats. När den applikationen stängdes kunde nästa applikation starta och bearbetas utan avbrott. Detta skulle komma i vägen för miljöer med flera fönster som datoranvändare har kommit att vara beroende av. Användningen av round-robin-schemaläggning hjälper datorn att hålla jämna steg med slutanvändaren och effektivt hantera alla tre ansökningsprocesser.

Round-robin-schemaläggning håller alla pågående jobb eller processer framåt lite i taget, under varje processorcykel, för att hjälpa dem alla att köras tillsammans och förbättra användarupplevelsen för den person som arbetar med systemet. CPU:n kommer sedan att polla varje uppgift som körs under en cykel för att hjälpa till att avgöra om processen har avslutats.

Anta att användaren bestämmer sig för att ha slutfört sitt arbete i ordbehandlingsprogrammet och stänger det. Detta gör att endast e-post- och webbläsarapplikationerna körs. CPU:n skulle inte ha något sätt att hålla reda på detta faktum utan round-robin-schemaläggning för att polla applikationerna och upptäcka att ordbehandlaren har stängts och inte längre behöver någon processortid.