Správa reálnej pamäte

Výberstratégiíprideľovaniapamäti: 1.Prideľovanie reálnejpamäti:
11
·Prideľovaniejednejsúvislejoblasti ·Prideľovaniepamätiposekciách ·Dynamicképremiestňovaniesekcií ·Stránkovanie 2.Prideľovanie virtuálnejpamäti: ·Stránkovanienažiadosť ·Segmentácia ·Stránkovanienažiadosťa segmentácia Prideľovaniejednejsúvislejoblasti ·jednoduchátechnika, nevyžadujúcažiadnezvláštnetechnicképrost riedky ·pamäťsadelínačasťtrvalepridelenúOS a zostávajúcačasťjepridelenáprocesu ·memory managment: 1.sledovaniepamäte-celápridelenájednejúl ohe 2.výberstratégie-celápamäťjednejúlohe 3.prideleniepamäti-úlohesapridelícelápam äť uvoľneniepamati-poskončeníúlohysacelápam äťuvoľní ·technickévybavenie-ochranapamäti, HR ·programovévybavenie ·výhody: jednoduchosť, žiadnetabuľkyaniinénároky ·nevýhody: plnenevyužitápamäť, nedostatočnévyužitieprocesoru, obmedzenieveľkosťoupamäte ·Multiprogramovanie-swapping metódy(výmeny) Prideľovaniepamätiposekciách ·najjednoduchšiametódamultiprogramovéhos ystému ·OP sarozdelínasamostatnépamäťovéoblasti-sek cie, každáobsahujeadresovýpriestorjednejúlohy ·memory managment: 1.sledovaniestavusekcie 2.rozhodovanieo pridelení-plánovačúloh 3.vlastnépridelenie, voľnásekciadostatočnéhorozsahu uvoľnenie, poskončeníúlohysauvoľnísekcia ·niekoľkovariant určeniasekcií: ·statickéurčeniasekcií ·dynamickéurčeniesekcií prideľovanieoddelenýchsekcií Statickéurčeniesekcií 12
technikapriktorejjeOP prištarteOS pevnerozdelenánasekcie, každásekciamáštartovaciu adresua dĺžku. Rozdelenienasekciea informácieo stave sekciesúuloženév tabuľkestatickéhourčeniasekciípamäte. V každomkrokuúlohyjeudanýmaximálnyrozsahpo trebnejOP, vyhľadásavoľnásekciadostatočnéhorozsahuv tabuľkea pridelísa. Stratégiaprideleniavoľnejsekcie: ·first fit ·best fit ·worst fit fragmentácia Dynamickéurčeniesekcií niejedopreduurčenýpočetaniveľkosťsekciía sekciesavytvárajúbehomspracovaniaúloh. OS potrebujemiestokdegenerujetabuľkypridele nýchsekciía voľnýchsekciía obhospodarujeich. Úlohykončiav nerovnakomčase-probléms fragmentáciou(vytváraniedier). Spájeniesekcií. Stratégieprideľovaniasekcií: ·first fit, zoradeniepodľaadries ·best fit, zoradeniepodľaveľkosti ·worst fit Prideľovanieoddelenýchsekcií zníženiefragmentácie, úlohanemusíbyťv pamätispojitá, čokladiepožiadavkynasoftware. Technickynáročnátechnika, správapamätimusídostaťinformáciuo minimálnychveľkostiachspojitýchúsekov, zložitejšiezapamätávanieo stave pamäti. Výhody a nevýhody Výhodyprideľovaniapamätiposekciách ·zjednodušujemultiprogramovanie, efektívnejšievyužitieprocesorua V/V ·nevyžadujetechnickévybavenie ·použitéalgoritmysújednoduchéa ľahkoimplementovateľné Nevýhodyprideľovaniapamätiposekciách ·fragmentácia ·môžesastať, žesaúlohanemôževykonať, lebojejchýbapamäť ·informácieo tabuľkách, zložitejšíOS Dynamicképremiestňovaniesekcií ·umožňujepremiestňovaťsekciev pamäti(blitter), periodickézlučovanievšetkýchvoľnýchoblas tído jednejsúvislejoblasti
13
·odstraňujevonkajšiufragmentáciu Princípjejednoduchý, ale niektoréčastiprogramusúpozičnezávisléodu miestneniav pamäti: obsahyrelokačnýchbázovýchregistrov, absolútneadresy, zoznamyparametrov, dátovéštruktúryvyužívajúceadresovéukazov atele. Tietomusiabyťvhodnemodifikované. Požiadavkynatechnickévybavenie. Typovaniedát- súčasnes uloženímhodnotydo pamäťovéhomiestasazaznamenáajjejtyp, napr. pridaním2 bitovkukaždémuslovu. Pomalézhusťovanie. Dynamicképremiestnenie, relokácia- špeciálnybázový(relokačný) a medznýregister sú2 špeciálneregistreprogramovoprístupnélenO S. Prikaždomprístupedo pamätisak efektívnejadreseautomatickypripočítaobsa hregistruzačiatkuprogramu. Efektívnaadresaje“konečná”adresaz adresovéhopriestoruúlohy, vypočítanáprocesoromz adresovejčastiinštrukcie. * Zhusťovaniemožnovykonávaťhneďpouvoľneníp amäti, aleboažkeďniejek dispozíciidostatokvoľnejpamätipre úlohu. Výhody a nevýhody Výhody: -eliminujefragmentáciu, umožňujevytvorenieviacerýchsekcií. Nevýhody: -technickévybaveniezvyšujecenupočítača, spomaľujerýchlosť, môžezostaťčasťpamätinevyužitá. Stránkovanie Adresovýpriestor každej úlohy sa rozdelína rovnakéúseky -stránky. Operačnápamäťsa rozdelína takéistéúseky -bloky. Každástránka (logicky súvislá) potom môže byťuloženáv ľubovoľnom bloku, pričom bloky na seba nemusia naväzovať. Technickévybavenie -PMT(pagemaptables), tabuľky stránok (špec. reg., časťOP). Efektívnosťje zaručovanávhodným výberom veľkosti stránky. Rieši problém fragmentáciebez fyzických presunov sekcií. Operačný systém pracuje s •tabuľkou úloh: JT-pre každúúlohu existuje položka obsahujúca údaj o umiestnenía dĺžke jej tabuľky stránok + stavovúinf. •tabuľkou blokov: MBT-udáva stav každého bloku pamäti (pridelený, voľný) •tabuľkou stránok: PMT-transformácia adresovéhopriestoru úlohy do operačnej pamäti. Stránkovanie –výhody a nevýhody Výhody: 14
Eliminuje fragmentáciua tým umožňuje zvýšiťpočet úloh. Eliminuje zhusťovanie pri dynamickom premiestňovanísekcií. Nevýhody: Existencia tabuliek pre transformáciu stránok (čas, miesto, cena). Efektivita závisíod voľby veľkosti stránky (znalosťou priemernej veľkosti úloh) -vnútornáfragmentácia. Adresovýpriestor je limitovaný rozsahom operačnej pamäti. Správa virtuálnej pamäti v Linuxe vmstat-Report virtualmemorystatistics, vmstat[-n] [delay[ count]], vmstat[-V] vmstatreportsinformationaboutprocesses, memory, paging, blockIO, traps, and cpuactivity. Thefirstreport producedgivesaveragessincethelastreboot. Additionalreportsgiveinformationon a samplingperiodoflengthdelay. Theprocessand memoryreportsare instantaneousin eithercase. FIELD DESCRIPTIONS Procsr: Thenumberofprocesseswaitingforruntime. b: Thenumberofprocessesin uninterruptablesleep. w: Thenumberofprocessesswappedoutbutotherwi serunnable. This fieldiscalculated, butLinux never desperationswaps. Memoryswpd: theamountofvirtualmemoryused(kB). free: theamountofidlememory(kB). buff: theamountofmemoryusedasbuffers(kB). Swapsi: Amountofmemoryswappedin fromdisk (kB/s). so: Amountofmemoryswappedto disk (kB/s). IObi: Blockssentto a blockdevice (blocks/s). bo: Blocksreceivedfroma blockdevice (blocks/s). Systemin: Thenumberofinterruptsper second, includingtheclock. cs: Thenumberofcontextswitchesper second. CPUTheseare percentagesoftotalCPU time. us: user time sy: systemtime vmstat chuda@os:~$ vmstat-n 2 procsmemoryswapiosystemcpu r b w swpdfreebuffcachesi so bi bo in csussyid