Programarea sistemului de operare este procesul de control și prioritizare a mesajelor trimise unui procesor. Un program intern al sistemului de operare, numit planificator, efectuează această sarcină. Scopul este menținerea unei cantități constante de muncă pentru procesor, eliminând înaltele și scăzutele volumului de lucru și asigurându-vă că fiecare proces este finalizat într-un interval de timp rezonabil. În timp ce programarea este importantă pentru toate sistemele, este deosebit de importantă într-un sistem în timp real.
Deoarece aproape fiecare operațiune pe un computer are cel puțin o cantitate mică de timp de procesor implicată, procesorul poate fi o sursă majoră de încetiniri și blocaje. Pentru a reduce presiunea asupra procesorului și pentru a vă asigura că sarcinile sunt finalizate în timp util, majoritatea sistemelor de operare folosesc o anumită formă de programare a sarcinilor. Procesul de programare a sistemului de operare variază în funcție de sistem, dar tind să se încadreze în categorii familiare.
Programarea este de obicei împărțită în trei părți: programare pe termen lung, mediu și scurt. Nu orice sistem de operare folosește pe deplin fiecare tip – termenul mediu și termenul lung sunt adesea combinate – dar vor folosi o combinație a acestora. Fiecare tip de programare oferă un beneficiu ușor diferit sistemului.
Programarea pe termen lung se învârte în jurul admiterii programelor în procesul de programare. Când inițiază un nou program, programatorul pe termen lung determină dacă există suficient spațiu pentru noul participant. Dacă nu există, atunci programatorul întârzie activarea programului până când este suficient spațiu.
Programatorul la mijlocul perioadei decide care procese au fost inactive și care sunt active. Lasă procesele active în pace și le scrie pe cele inactive pe hard disk. Acest lucru eliberează memorie pentru ca alte programe să vină prin programatorul pe termen lung. Când programatoarele pe termen mediu și lung sunt combinate, în loc să întârzie activarea unui nou proces, planificatorul pur și simplu îl schimbă în stocare.
Programatorul pe termen scurt este partea care lucrează direct cu procesorul. Această porțiune activează procesele, stabilește prioritățile și supraveghează volumul de lucru al procesorului. Programatorul pe termen scurt încearcă în mod constant să anticipeze nevoile computerului pentru ca procesorul să funcționeze fără probleme.
În majoritatea circumstanțelor, programarea sistemului de operare este o modalitate de a face un computer să funcționeze mai eficient, dar într-un sistem de operare în timp real, este vitală pentru scopul său. Un sistem în timp real trebuie să execute procese într-un timp stabilit, iar dacă aceste procese întârzie, atunci scopul lor este pierdut. Aceste programe importante necesită o programare a sistemului foarte specifică pentru a se asigura că informațiile și răspunsurile sunt acolo unde trebuie, când trebuie să fie.