logo

Personsøgning i OS (operativsystem)

I operativsystemer er Paging en lagermekanisme, der bruges til at hente processer fra det sekundære lager ind i hovedhukommelsen i form af sider.

Hovedideen bag personsøgningen er at opdele hver proces i form af sider. Hovedhukommelsen vil også blive opdelt i form af rammer.

javascript søvn

En side af processen skal gemmes i en af ​​hukommelsens rammer. Siderne kan gemmes på de forskellige steder i hukommelsen, men prioriteringen er altid at finde de sammenhængende rammer eller huller.

Sider af processen bringes kun ind i hovedhukommelsen, når de er nødvendige, ellers ligger de i det sekundære lager.

Forskellige operativsystemer definerer forskellige rammestørrelser. Størrelserne på hver ramme skal være ens. I betragtning af det faktum, at siderne er knyttet til rammerne i Paging, skal sidestørrelsen være den samme som rammestørrelsen.


OS personsøgning

Eksempel

Lad os overveje hovedhukommelsesstørrelsen 16 Kb og rammestørrelse 1 KB, derfor vil hovedhukommelsen blive opdelt i samlingen af ​​16 frames á 1 KB hver.

byte array til streng java

Der er 4 processer i systemet, der er P1, P2, P3 og P4 på hver 4 KB. Hver proces er opdelt i sider på hver 1 KB, så en side kan gemmes i én ramme.

Til at begynde med er alle rammer tomme, derfor vil sider af processerne blive gemt på den sammenhængende måde.

Rammer, sider og kortlægningen mellem de to er vist på billedet nedenfor.


OS Paging Eksempel

Lad os overveje, at P2 og P4 flyttes til ventetilstand efter nogen tid. Nu bliver 8 rammer tomme, og derfor kan andre sider indlæses på det tomme sted. Processen P5 af størrelse 8 KB (8 sider) venter inde i klarkøen.

I betragtning af det faktum, at vi har 8 ikke sammenhængende rammer tilgængelige i hukommelsen, og personsøgning giver fleksibiliteten til at gemme processen på de forskellige steder. Derfor kan vi indlæse siderne i proces P5 i stedet for P2 og P4.


OS-personsøgningseksempel 2

Hukommelsesstyringsenhed

Formålet med Memory Management Unit (MMU) er at konvertere den logiske adresse til den fysiske adresse. Den logiske adresse er den adresse, der genereres af CPU'en for hver side, mens den fysiske adresse er den faktiske adresse på den ramme, hvor hver side vil blive gemt.

palindrom nummer

Når en side skal tilgås af CPU'en ved at bruge den logiske adresse, skal operativsystemet hente den fysiske adresse for at få adgang til siden fysisk.

Den logiske adresse består af to dele.

unix topkommando
  1. Sidenummer
  2. Offset

Hukommelsesstyringsenheden i OS skal konvertere sidetallet til rammenummeret.

Eksempel

I betragtning af ovenstående billede, lad os sige, at CPU'en kræver 10. ord af 4. side i proces P3. Da sidenummer 4 i proces P1 bliver lagret ved rammenummer 9, vil det 10. ord i 9. ramme blive returneret som den fysiske adresse.