Kontrola posla je izraz za upravljanje raznim radnjama na računalnom sustavu. Računala su sposobna raditi više stvari u isto vrijeme, ali u mnogim slučajevima samo jedan proces može raditi u određenom području u bilo kojem trenutku. Računala koriste sustav kontrole poslova za upravljanje svojim zadacima, dopuštajući jednom procesu da koristi resurse u jednom području, dok drugi koristi resurse u drugom području. Ovi sustavi nadziru prioritet operacija i održavaju važnije zadatke brže, a manje važne zadatke u pozadini.
Sustavi kontrole poslova razvijeni su u ranoj fazi dizajna modernih računala kako bi se ublažili problemi brzine. U mnogim ranim sustavima, središnji sustavi računala bili su više nego sposobni za brzo izvršavanje zadataka koji su im dani. Problemi s brzinom dogodili su se u komunikaciji s perifernim sustavima. Ne samo da su sustavi bili sporiji, već je i vrijeme prijenosa između grupa sustava bilo prilično dugo. Dodaci perifernom hardveru, kao što su međuspremnici i sustavi predmemorije, samo su ubrzali određene procese i nisu riješili problem.
Multitasking je bio rani pokušaj kontrole posla. Računalo je dobilo novi sustav koji je pratio aktivne i neaktivne poslove. Kada je sustav bio prezauzet za rukovanje novim poslom, stavljen je u neaktivan red čekanja. Kada bi hardver mogao preuzeti novi proces, proces najvišeg prioriteta bi se aktivirao. Ovaj proces bi se zatim preselio u hardver.
Problem s ovim sustavom bio je u njegovoj decentraliziranoj prirodi. Dok je jedan red čekao sve aktivne i neaktivne procese, informacije koje se odnose na hardver dolazile su iz samog hardvera. Upravljački program za hardver izvijestio bi planer je li dostupan ili ne – ako je proces ušao u stanje pogreške i nastavio koristiti hardver, nikada ne bi postao dostupan. Osim toga, neki procesi su trebali samo središnji procesor ili određenu periferiju; to bi vezalo cijeli sustav dok se ti procesi ne završe. Kako bi se riješio ovaj problem, dizajnirani su moderni sustavi kontrole poslova.
Kontrola posla usredotočuje se na ideju preventivnog računanja. Svaki proces ima opći prioritet, a povremeno i sekundarne prioritete koji se odnose na određene sustave. Planer računala održava red procesa. Kada se pojavi jedan proces koji je važniji od onog koji je trenutno aktivan, aktivni će se obustaviti i novi proces će preuzeti. Kada je obustavljeni program najvažniji proces, on će se ponovno pokrenuti.