Swapping är ett minneshanteringsschema där alla processer tillfälligt kan bytas från huvudminnet till sekundärt minne så att huvudminnet kan göras tillgängligt för andra processer. Det används för att förbättra användningen av huvudminnet. I sekundärt minne kallas platsen där den utbytta processen lagras swaputrymme.
Syftet med bytet i operativsystem är att komma åt data som finns på hårddisken och föra dem till RAM så att applikationsprogrammen kan använda den. Saken att komma ihåg är att byte endast används när data inte finns i RAM.
Även om bytesprocessen påverkar systemets prestanda, hjälper det att köra större och mer än en process. Detta är anledningen till att byte också kallas minneskomprimering.
Konceptet att byta har delat upp sig i ytterligare två begrepp: Swap-in och Swap-out.
- Swap-out är en metod för att ta bort en process från RAM och lägga till den på hårddisken.
- Swap-in är en metod för att ta bort ett program från en hårddisk och sätta tillbaka det i huvudminnet eller RAM-minnet.
Exempel: Anta att användarprocessens storlek är 2048KB och är en standardhårddisk där swapping har en dataöverföringshastighet på 1Mbps. Nu ska vi beräkna hur lång tid det tar att överföra från huvudminnet till sekundärminnet.
User process size is 2048Kb Data transfer rate is 1Mbps = 1024 kbps Time = process size / transfer rate = 2048 / 1024 = 2 seconds = 2000 milliseconds Now taking swap-in and swap-out time, the process will take 4000 milliseconds.
Fördelar med att byta
- Det hjälper processorn att hantera flera processer inom ett enda huvudminne.
- Det hjälper till att skapa och använda virtuellt minne.
- Genom att byta ut kan CPU:n utföra flera uppgifter samtidigt. Därför behöver processer inte vänta särskilt länge innan de exekveras.
- Det förbättrar det huvudsakliga minnesutnyttjandet.
Nackdelar med att byta
- Om datorsystemet tappar ström, kan användaren förlora all information som är relaterad till programmet i händelse av betydande bytesaktivitet.
- Om bytesalgoritmen inte är bra kan den sammansatta metoden öka antalet Page Fault och minska den totala bearbetningsprestandan.
Notera:
- I ett operativsystem med en enda uppgift upptar endast en process användarprogramområdet i minnet och stannar i minnet tills processen är klar.
- I ett multitasking-operativsystem uppstår en situation när alla aktiva processer inte kan samordnas i huvudminnet, då byts en process ut från huvudminnet så att andra processer kan komma in i det.