De centrale verwerkingseenheid ( CPU ) van een computer controleert de berekeningen en de bevelen van de lopende programma's op die computer uitvoert . Dit betekent dat de processor juggles vaak meerdere programma's tegelijk . Om het even welk programma , laat staan meerdere programma's te draaien , de CPU nodig heeft om bepaalde informatie van een programma, zodat het programma kan functioneren. Deze informatie , genaamd de staat , verschilt van programma tot programma . Bij het schakelen tussen programma's , moet de CPU veranderingen tussen de staten van de programma's , de zogenaamde context switching implementeren . Multitasking Bij het uitvoeren van meerdere programma's uit het geheugen , de processor van een computer lijkt alleen maar om daadwerkelijk gelijktijdig uit te voeren opdrachten . Bij het kijken naar de acties van het systeem , lijkt het erop dat alles loopt op hetzelfde moment . Echter , kan de processor alleen daadwerkelijk een programma uit te voeren op een moment . De processor schakelt tussen programma's voortdurend , afhankelijk van hun prioriteit , zo snel dat gebruikers nooit weten dat programma's onafhankelijk van elkaar . CPU Geheugen Registers Hoewel de processor werkt op commando van een bepaald programma, gegevens van die programma zich bevindt in speciale , lokaal geheugen registers . Deze registers houden programma variabele informatie en andere informatie over de stand van de uitvoering van het programma . Deze informatie wordt meestal gehouden in het cachegeheugen van de processor , een snelle maar dure type opslag doorgaans alleen gebruikt in kleine hoeveelheden in de processor zelf . Context Schakelen Als u meerdere actieve programma's te beheren , moet de processor te implementeren context switches . Wanneer de processor overschakelt context , alle informatie van een uitvoerende programma stond geladen in een deel van het geheugen . De informatie voor de volgende uitvoerende programma is in de lokale registers geladen en de opdrachten worden uitgevoerd . Door de stand van het ene programma onbelaste toestand van de andere gebruiken , ingenieurs noemen dit een verandering van context . De toestand van de machine wordt gewijzigd in de nieuwe programma behandelen . Voor elk segment van de tijd dat een programma krijgt op de CPU , moet een context switch optreden . CPU Scheduling Voor het beheren van context en context switching , een speciale routine in het besturingssysteem genaamd de scheduler beheert programma toegang tot de CPU . Er bestaan verschillende algoritmen om deze programma's te beheren en te zorgen dat ze allemaal de kans krijgen om de processor te gebruiken , deze algoritmes ook bepalen hoeveel context switches voordoen . Typisch , zal algoritmes die de prioriteit van een programma kan bepalen en laten uitvoeren van programma's op de processor het langst zonder het blokkeren van andere programma's processor efficiëntie te verhogen . Dit komt omdat alle programma's zullen nog steeds een kans met de processor , terwijl het vermijden van de overhead in verband met context switching .
|