Käyttöjärjestelmän ajoitus on prosessorille lähetettyjen viestien hallinnan ja priorisoinnin prosessi. Sisäinen käyttöjärjestelmäohjelma, nimeltään ajastin, suorittaa tämän tehtävän. Tavoitteena on ylläpitää jatkuvaa työtä prosessorille, eliminoida työkuorman ylä- ja alamäet ja varmistaa, että jokainen prosessi suoritetaan kohtuullisessa ajassa. Vaikka ajoitus on tärkeä kaikille järjestelmille, se on erityisen tärkeää reaaliaikaisessa järjestelmässä.
Koska lähes jokaisessa tietokoneen toiminnassa on vähintään pieni prosessorin aika, prosessori voi olla merkittävä hidastumisten ja pullonkaulojen lähde. Suorittimen kuormituksen lievittämiseksi ja tehtävien suorittamiseksi ajoissa useimmat käyttöjärjestelmät käyttävät jonkinlaista tehtävien ajoitusta. Käyttöjärjestelmän ajoitusprosessi vaihtelee järjestelmän mukaan, mutta ne kuuluvat yleensä tuttuihin luokkiin.
Ajoitus on tyypillisesti jaettu kolmeen osaan: pitkän, keskipitkän ja lyhyen aikavälin aikataulutus. Kaikki käyttöjärjestelmät eivät täysin käytä kutakin tyyppiä-keskipitkä ja pitkäaikainen yhdistetään usein-mutta ne käyttävät jonkinlaista yhdistelmää. Jokainen ajoitustyyppi tarjoaa hieman erilaisen hyödyn järjestelmälle.
Pitkäaikainen aikataulutus perustuu ohjelmien hyväksymiseen ajoitusprosessiin. Kun uusi ohjelma käynnistyy, pitkäaikainen ajastin määrittää, onko uudelle tulokkaalle riittävästi tilaa. Jos ei, ajastin viivästyttää ohjelman aktivointia, kunnes tilaa on riittävästi.
Väliaikataulu päättää, mitkä prosessit ovat olleet käyttämättömiä ja mitkä ovat aktiivisia. Se jättää aktiiviset prosessit rauhaan ja kirjoittaa käyttämättömät kiintolevylle. Tämä vapauttaa muistia muille ohjelmille pitkäaikaisen ajastimen kautta. Kun keskipitkän ja pitkän aikavälin aikatauluttajat yhdistetään, ajastaja yksinkertaisesti vaihtaa sen sen sijaan, että viivästyttäisi uuden prosessin aktivointia.
Lyhytaikainen ajastin on osa, joka toimii suoraan prosessorin kanssa. Tämä osa aktivoi prosesseja, asettaa prioriteetit ja valvoo prosessorin kuormitusta. Lyhyen aikavälin ajastin yrittää jatkuvasti ennakoida tietokoneen tarpeita, jotta prosessori toimii sujuvasti.
Useimmissa tapauksissa käyttöjärjestelmän ajoitus on tapa saada tietokone toimimaan tehokkaammin, mutta reaaliaikaisessa käyttöjärjestelmässä se on elintärkeää sen tarkoituksen kannalta. Reaaliaikaisen järjestelmän on suoritettava prosessit tietyn ajan kuluessa, ja jos nämä prosessit viivästyvät, niiden tarkoitus menetetään. Nämä tärkeät ohjelmat edellyttävät erittäin tarkkaa järjestelmän ajoitusta, jotta voidaan varmistaa, että tiedot ja vastaukset ovat siellä, missä niiden on oltava, kun niiden on oltava.