Hvad er jobkontrol?
Jobkontrol er betegnelsen for styring af forskellige handlinger på et computersystem. Computere er i stand til at gøre flere ting på samme tid, men i mange tilfælde er det kun en enkelt proces, der kan fungere i et givet område på et hvilket som helst tidspunkt. Computere bruger et jobkontrollsystem til at styre deres opgaver og lader en proces bruge ressourcer i et område, mens et andet bruger ressourcer i et andet område. Disse systemer overvåger prioritering af operationer og holder vigtige opgaver kører hurtigere og mindre vigtige opgaver i baggrunden.
Jobkontrolsystemer udviklede tidligt i design af moderne computere for at afhjælpe hastighedsproblemer. I mange tidlige systemer var computerens centrale systemer mere end i stand til at fremskynde de opgaver, de fik. Hastighedsproblemerne skete i kommunikationen med perifere systemer. Ikke kun var systemerne langsommere, men overførselstiden mellem systemgrupperne var ret lang. Tilføjelser til perifer hardware, såsom buffere og cache-systemer, gjorde kun visse processer hurtigere og løste ikke problemet.
Multitasking var et tidligt forsøg på jobkontrol. Computeren fik et nyt system, der holdt styr på aktive og inaktive job. Når et system var for travlt til at håndtere et nyt job, blev det sat i en inaktiv kø. Når hardware var i stand til at tage en ny proces, blev processen med højeste prioritet gjort aktiv. Denne proces flyttes derefter ind i hardwaren.
Problemet med dette system var i dens decentrale karakter. Mens en enkelt kø indeholdt alle de aktive og inaktive processer, kom information vedrørende hardware fra selve hardwaren. Driveren til hardware rapporterer, om den var tilgængelig eller ikke for planlæggeren - hvis en proces indtastede en fejltilstand og fortsatte med at bruge hardware, ville den aldrig blive tilgængelig. Derudover havde nogle processer kun brug for den centrale processor eller en bestemt periferi; dette ville binde hele systemet indtil disse processer sluttede. For at bekæmpe dette problem blev moderne jobkontrolsystemer designet.
Jobkontrol fokuserer på ideen om forudgående computing. Hver proces får en overordnet prioritet og lejlighedsvis sekundære prioriteter, der vedrører visse systemer. Computerens planlægning opretholder køen af processer. Når der opstår en proces, der er vigtigere end en, der i øjeblikket er aktiv, suspenderes den aktive, og den nye proces overtager. Når det suspenderede program er den vigtigste proces, starter det igen.