A munkakészlet egy számítástechnikai fogalom, amely meghatározza, hogy egy adott időintervallumban mekkora memóriaigényes egy folyamat .
Más szóval, egy folyamat munkakészlete a folyamat virtuális címterében lévő oldalak halmaza , amelyek jelenleg a fizikai memóriában vannak [1] (a folyamat címterére leképezve).
Peter Denning (1968) "egy folyamat egy adott időpontbanlévő információs halmazát olyan információhalmazként határozza meg, amelyre egy folyamat egy időintervallumban hivatkozik" [2] . Általában a memóriaoldalt információegységnek tekintik . Javasoljuk, hogy a munkakészletre úgy tekintsünk, mint azon oldalak durva becslésére, amelyekhez a folyamat a jövőben hozzá fog férni (például a következőidőegységeken belül), és ami még fontosabb, mutatója annak, hogy mely oldalakat érdemes a fő memóriában kell tartani, hogy a folyamat gyorsabban fusson.
A teljesítmény szempontjából számít, hogy mely oldalak maradnak a fő memóriában (ellentétben a kiegészítő memóriába lapozott oldalakkal): ha túl sok oldalt hagy egy folyamat tulajdonában a fő memóriában, az csökkenti az egyidejűleg futtatható folyamatok számát. Ha túl kevés folyamatoldal marad a fő memóriában, az oldalhiba aránya az egekbe szökik, és a jelenleg futó aktív folyamatok száma nullára szokott csökkenni.
A munkakészlet-modell szerint egy folyamat akkor és csak akkor lehet a RAM -ban , ha az összes aktuálisan használt oldal halmaza (vagy a legutóbb használt oldalak halmaza, amit gyakran használnak közelítésként) lehet a RAM-ban. A modell a „mindent vagy semmit” elven működik, vagyis ha a folyamathoz szükséges memóriaoldalak száma nő, és nincs szabad hely a RAM-ban, akkor a folyamat teljes egészében kiürül a memóriából, hogy memória szabaduljon fel egyéb folyamatok.
Egy erősen terhelt számítógépen gyakran olyan sok folyamat állhat a sorban, hogy ha ugyanabban az időszeletben futhatnak, akkor a hivatkozott memória mennyisége meghaladja a RAM mennyiségét, ami a virtuális memória feltörését eredményezi .
Egyes folyamatok memóriából való törlése azt eredményezi, hogy az összes folyamat végrehajtása, még a memóriából ideiglenesen kiürítettek is, sokkal korábban fejeződik be, mint amikor az összes folyamatot egyszerre próbálják elindítani. A folyamat végrehajtása sokkal hamarabb befejeződik, mint az egyes folyamatok futtatása, mivel a párhuzamosság lehetővé teszi egy folyamat futtatását, míg mások a merevlemezhez vagy más globális erőforrásokhoz való hozzáférésre várnak. Más szavakkal, a munkakészlet-stratégia megakadályozza a virtuális memória feltörését , miközben fenntartja a magas szintű többprogramozást . Így ez a stratégia optimalizálja a CPU kihasználtságát és a sávszélességet.
A leírt modell megvalósításának fő nehézsége a munkakészlet nyomon követése. Ehhez a folyamat-hozzáférések teljes folyamától a memóriaoldalakig az utolsó hozzáféréseket a munkakészlet ablakának nevezett időintervallumban követi nyomon. Minden memóriaeléréskor egy új hivatkozás kerül az oldalra az ablak elejére, a legrégebbi hivatkozás pedig azon kívül van. Egy oldal akkor tekinthető a munkakészlethez tartozónak, ha van rá hivatkozás a munkakészlet ablakban [3] .
A nagyszámú memórialaphivatkozás tárolásával járó többletköltség elkerülése érdekében a munkakészlet-számítást gyakran úgy hajtják végre, hogy nyomon követik a memóriaoldal legutóbbi elérését. Egy oldal akkor tekinthető a munkakészlethez tartozónak, ha az aktuális idő és az utolsó hozzáférési idő közötti különbség nem haladja meg a munkakészlet ablakának méretét. Ha ez a különbség meghaladja az ablak méretét, az oldal eltávolítható.
A munkakészlet-stratégia nem oldalcsere-algoritmus , azonban az oldalcsere-algoritmusok figyelembe vehetik egy folyamat munkakészletét, és nem távolítják el a tulajdonában lévő oldalakat. Például létezik az óraalgoritmusnak egy módosított változata , a WSClock.
Az operációs rendszerek szempontjai | |||||
---|---|---|---|---|---|
| |||||
Típusok |
| ||||
Sejtmag |
| ||||
Folyamatmenedzsment _ |
| ||||
Memóriakezelés és címzés | |||||
Betöltési és inicializálási eszközök | |||||
Héj | |||||
Egyéb | |||||
Kategória Wikimedia Commons Wikikönyvek Wikiszótár |