320 likes | 1.19k Views
Kujtesa virtuale. Sisteme shfrytezimi Leksion 11. Kujtesa virtuale. Kujtesa virtuale eshte nje teknike qe lejon ekzekutimin e proceseve qe nuk ndodhen plotesisht ne kujtese Virtual memory – ndarja e kujteses logjike te perdoruesit nga kujtesa fizike
E N D
Kujtesavirtuale Sistemeshfrytezimi Leksion 11 Iralda Mitro
Kujtesavirtuale • Kujtesavirtualeeshtenjeteknikeqelejonekzekutimin e proceseveqenukndodhenplotesisht ne kujtese • Virtual memory – ndarja e kujteseslogjiketeperdoruesitngakujtesafizike • Vetemnjepjese e programit ka nevojetejete ne kujtese per tuekzekutuar • Ne ketemenyrehapsira e kujteseslogjikemundtejete me e madhe se ajo e adresesfizike • Kjokujteselejonqehapsira e kujtesestendahet midis disaproceseve • Lejonkrijimin me eficentteproceseve • Virtual memory mundteimplementohetnepermjet: • Demand paging • Demand segmentation Iralda Mitro
Virtual Memory / Physical Memory Iralda Mitro
Hapsira e adresimit virtual Iralda Mitro
Faqet e perbashketa me kujtesenvirtuale Iralda Mitro
Demand Paging • Njefaqe do tengarkohet ne kujtesevetemnese ka referencambi ate faqe • Ne sistemetqeperdorinDemandPaging • Cdofaqe do teruhet ne njehapsire ne kujtesensekondare • Kurtebehet reference ne adresat e faqeve, faqet do tekopjohen ne adresenfizike, dhe do teaksesohennjellojsi ne rastin e faqezimit • Cdo element itabeles se faqeve, do teketeedhenje bit shteseicilieshtebiti in/out , icilipercaktonnesefaqjandodhet ne kujtese Iralda Mitro
Si funksionon Demand Paging • Njesia e administrimittekujteses do tenxjerrengaadresanumrin e faqes • Me pas do tekontrollojetabelen e faqeve per ketefaqe • Nqsfaqjanevojitet reference per tekfaqja • reference e pavlefshme abort • not-in-memory e sjell ne kujtese Iralda Mitro
Transferimiikujteses se faqezuar ne hapsiren e diskut • Fillimishtshikonbitin in/out -> Nqseshtengarkuar ne kujtesenfizike (in), mundtevazhdojegjenerimiiadresesfizike Iralda Mitro
Page Table kurfaqetnukgjenden ne kujtese Iralda Mitro
Page Fault • Nqsbitieshte (out), dometheneqefaqjanukeshtengarkuar ne kujtesenfizike, do tegjenerohetnjepage fault, dhekontrolli do tikalojerutines se Sistemitteoperimitqeeshtepergjegjese per trajtimin e ketijrasti. • S.SH kontrollonnese ka ne kujtesenje frame te lire • Nese ne kujtesenuk ka vend te lire per tevendosurketefaqe, atehere do tezgjidhetnjengafaqetqendodhet ne kujtese per tularguarngakujtesa • Cfarendodh me elementinqeiperketkesajfaqeje? • Ne tabelen e faqeve do temodifikohetvlera e bitit in/out per faqen e ngarkuar -> do tebehet IN. • Do teruhetedhenumrii frame kueshtengarkuarkjofaqe • Kurteperfundojerutina do teriekzekutohetinstruksioniqegjeneroi page fault Iralda Mitro
Hapat e trajtimitte Page Fault Iralda Mitro
Avantazhet e Demand Paging • Nevojitet me pak I/O • Nevojitet me pakkujtese • Pergjigje me e shpejte • Me shumeperdorues Iralda Mitro
Cfarendodhnesenukkemihapsirate lira? • Zevendesimifaqes – gjendetnjefaqe ne kujtesedhezevendesohet me njefaqetjeter • Me algoritem • Performanca – duhetnjealgoritem I ciliterezultoje me sa me pak page fault • E njejtafaqemundtesillet ne kujtesedisa here Iralda Mitro
Performanca e Demand Paging • Page Fault Rate 0 p 1.0 • p= 0, nuk ka page faults • p= 1, cdo reference eshtenje fault Iralda Mitro
Zevendesimiifaqeve • Duhetteshmangethuazimiitepertikujteses duke modifikuarrutinen e trajtimitte page-fault • Perdoretbitimodify (dirty) bit per tereduktuarhumbjet e kohes me transferimet e faqeve – vetemfaqet e modifikuara do teshkruhen ne disk • Sa here qe ka referenca per shkrim ne njefaqe, ky bit do tebehet 1 Iralda Mitro
Nevoja per zevendesimin e faqeve Iralda Mitro
Page Replacement Iralda Mitro
Algoritmat e perzgjedhjes • Per tearriturnivelin me teulette page-fault • Algoritmivleresohet duke u ekzekutuar ne njevije me referencakujtese, dhe duke llogariturnumrin e page fault ne ate vije • Ne shembujt tone do tekemi: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 Iralda Mitro
Algoritmi First-In-First-Out (FIFO) • Pervecbititmodifyduhetteruhetedhekoha e ngarkimittefaqes ne kujtese • Algoritmizgjedhfaqenqe ka kohen me tehershme • Kyalgoritemnukeshteshumeipershtatshempasifaqetqeqendrojne ne kujtesejanefaqetqeperdoren me shume, dhe page fault rritetkurzevendesohenkeq Iralda Mitro
FIFO Page Replacement • Numrii frame = 3 • Page faults = 15 Iralda Mitro
Algoritmi Optimal • Zgjidhet per tuzevendesuarfaqjaqenuk do teperdoret per njekohetegjate 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 • Eshteiveshtire per tuimplementuar, por ka numertevogel page faults 1 4 2 6 page faults (sa here ngarkohetnjefaqeqenukeshte) 3 4 5 Iralda Mitro
Optimal Page Replacement • Page faults = 9 Iralda Mitro
Algoritmi Least Recently Used (LRU) • Algoritmiruangjurmeteheres se funditqeeshteperdorurfaqja • Kynumratorinkrementohetsa here qekemi reference per faqen. Faqja me vleren me tevogeltenumratorit do tezgjidhet per tuhequr. • Reference string: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5 1 5 2 3 5 4 4 3 IraldaMitro
LRU Page Replacement • Page faults = 12 Iralda Mitro
Algoritmi Second Chance • Algoritmizgjedhfaqen me tehershmedhe do taheqeketefaqenese ka bitin e references =0. • Nqsky bit nukeshte 0, atehere do tabeje = 0, dhe do tezgjedhefaqentjeter me tehershme e cila e ka bitin 0. • Perveckesajmodifikonedhekohenkurai e benbitin 0. Kjokoheduhetbere = kohenkorrente. Iralda Mitro
AlgoritmatNumerues • Mbahetnje counter(numerues) per numrin e referencaveqeijaneberecdofaqeje • LFU Algorithm: zevendesonfaqen me numrin me tevogel • MFU Algorithm: bazohet ne argumentinqefaqja me numrin me tevogelsapoeshtesjelle ne kujtese, keshtuqeajo ka akomanevojeteperdoret Iralda Mitro
Perzgjedhjaglobaledhelokale • Global replacement – procesizgjedhnje frame per tuzevendesuarngabashkesia e tegjithe frame-ve • Njeprocesmundtemarrenje frame nganjetjeter • Local replacement – cdoproceszgjedhvetemngabashkesia e tij e frame-vetehuazuar • Zgjidhetnjengafaqetqeiperketprocesitqegjeneroi page fault Iralda Mitro
Thrashing • Nqsnjeprocesnuk ka “mjaftueshem” faqe, nivelii page-fault eshteshumeilarte. Kjosjell: • Perdorimteulette CPU • Sistemiioperimitmendonqenevojitetqeterritetniveliimultiprogramimit • Shtohetnjeprocestjeter ne sistem • Thrashing njeproceseshteizene me zevendesimin e faqeve Iralda Mitro
Thrashing Iralda Mitro
Skema e frekuences se Page-Fault • Percaktohetnjenivel “ipranueshem” page-fault • Nqsniveliaktualeshteshumeiulet, procesihumbet frame • Nqsnivelieshteshumeilarte, procesifiton frame Iralda Mitro