Mikä on Round-Robin-ajoitus?

Round-robin-ajoitus on algoritmi, jota käytetään prosessi- tai työaikataulujen luomisessa, jotta varmistetaan, että jokainen työn suorittamiseen tarvittava prosessi saa runsaasti käyttöaikaa. Tietokoneiden suorittimet voivat käyttää aikaviipalointia antaakseen tietyn ajan kullekin prosessille käytettäväksi syklin aikana.

Ympäröivän ajoituksen käyttäminen antaa jokaiselle käynnissä olevalle prosessille viipaleen aikaa. Esimerkiksi tietokoneessa käyttäjä käynnistää kolme sovellusta, sähköpostin, verkkoselaimen ja tekstinkäsittelyohjelman. Nämä sovellukset ladataan järjestelmämuistiin prosesseina ja jokainen saa toimia ilman, että käyttäjä ottaa huomioon taustalla toimivat sovellukset.

Round-robin-aikataulutus hoitaa resurssien jakamisen kolmen sovellusprosessin (ja lukemattomien muiden taustalla käynnissä olevien käyttäjille täysin näkymättömien) välillä. Tämä ajoitus toimii hyvin, koska jokainen sovellus saa tietyn ajan prosessorijaksoa kohden. Prosessorisykli on aika, jonka suorittimella kuluu yhden prosessin hallintaan.

Aiemman esimerkin käynnissä olevat sovellukset tarjoavat prosessorille lyhyen syklin ja kullekin näistä kolmesta prosessista varataan enemmän aikaa, jolloin ne näyttävät toimivan paremmin loppukäyttäjälle. Ilman pyöreää aikataulua ensin muistiin ladattu sovellus monopolisoi prosessorin, kunnes se oli suorittanut kaikki sille annetut tehtävät. Kun sovellus suljettiin, seuraava sovellus voi käynnistyä ja käsitellä keskeytyksettä. Tämä haittaisi monen ikkunan ympäristöjä, joista tietokoneen käyttäjät ovat tulleet riippuvaisiksi. Pyöreän aikataulun käyttö auttaa tietokonetta pysymään loppukäyttäjän kanssa ja hallitsemaan tehokkaasti kaikkia kolmea sovellusprosessia.

Ympäröivä aikataulutus pitää kaikki käynnissä olevat työt tai prosessit etenemässä hieman kerrallaan jokaisen prosessosyklin aikana, mikä auttaa heitä kaikkia toimimaan yhdessä ja parantamaan järjestelmän kanssa työskentelevän henkilön käytettävyyttä. Suoritin kyselee sitten jokaisen jakson aikana suoritettavan tehtävän selvittääkseen, onko prosessi päättynyt.

Oletetaan, että käyttäjä päättää, että hän on suorittanut työnsä tekstinkäsittelyohjelmassa, ja sulkee sen. Tällöin vain sähköposti- ja verkkoselainsovellukset ovat käynnissä. CPU: lla ei olisi mitään keinoa seurata tätä tosiasiaa ilman pyöreää aikataulua sovellusten kyselyyn ja huomata, että tekstinkäsittelyohjelma on suljettu eikä tarvitse enää prosessorin aikaa.