Vad är kontextbyte?
Ett av de största stegen framåt i utformningen och driften av centrala processorenheter (CPU) kom när konstruktörerna av datoroperativsystem utvecklade tekniker för att låta användare multitask. Multitasking med hänvisning till datorer är praxis att köra två eller flera program samtidigt. Från en slutanvändares synvinkel verkar detta kanske inte komplicerat eller långsiktigt, men det representerar faktiskt ett betydande språng i systemdesign. Vid multitasking måste CPU-en jongla med alla funktioner för de olika aktiva programmen och spela in var den är med varje program när användaren växlar fram och tillbaka mellan dem. Kontextväxling är processen som gör att CPU: n kan komma ihåg och återställa tillstånd för en mängd aktiva program, vilket gör att den kan fullfölja denna jonglering.
Under kontextbyte släpper CPU-enheten vilket program den nu hanterar och lagrar den specifika platsen den var i det programmet så att den kan återuppta sina framsteg senare. För att sätta det i perspektiv är kontextbyte lite som att läsa flera böcker samtidigt, att ständigt växla fram och tillbaka mellan dem samtidigt som man alltid kommer ihåg sidnumren för varje. Informationen om "sidnummer" för program under en kontextväxlingsoperation hålls av processkontrollblocket (PCB). PCB benämns ibland även "switchframe". Denna information lagras i minnet i den faktiska CPU tills den behövs igen.
Kontextväxling sker under tre möjliga situationer: avbrottshantering, multitasking och användarväxling. Vid hantering av avbrott "avbryter" ett annat program det aktuella programmet medan det körs. När CPU: n har tagit avbrottet utför den en kontextomkopplare för att jongla mellan det löpande programmet och programmet som begär omedelbar data. Vid multitasking floppar CPU fram och tillbaka mellan programmen, vilket ger en tidsdel av behandlingstiden till var och en och utför en kontextväxlingsoperation för att ändra mellan de två. För vissa operativsystem utförs också en kontextomkopplare under en användaromkopplare för operativsystemet, även om detta inte uttryckligen krävs.
Antingen operativsystemet eller datorns hårdvara kan styra kontextbyte. Vissa moderna operativsystem och är utformade för att kontrollera kontekstomkoppling genom själva operativsystemet och ignorera allt inbyggt hårdvarusupport för proceduren. Detta gör det möjligt för operativsystemet att spara mer information under en kontextomkopplare, så att det kan bevara mer information om omkopplaren.