www.wikidata.uk-ua.nina.az
Zbirannya smittya angl garbage collection odna z form avtomatichnogo keruvannya operativnoyu pam yattyu komp yutera pid chas vikonannya program Pidprograma pribiralnik smittya vivilnyaye pam yat vid ob yektiv yaki ne vikoristovuvatimutsya programoyu nadali 1 Zbirannya smittya bulo vinajdeno Dzhonom Makkarti priblizno 1959 roku dlya rozroblenoyi nim movi programuvannya Lisp 2 Zmist 1 Istoriya 2 Problemi ruchnogo keruvannya pam yattyu 3 Vpliv avtomatichnogo zbirannya smittya na shvidkodiyu 4 Vimogi do movi ta sistemi 5 Primitki 6 Div takozhIstoriya RedaguvatiPribirannya smittya vpershe zastosuvav Dzhon Makkarti 1959 roku v seredovishi programuvannya na rozroblenij nim funkcionalnij movi programuvannya Lisp Zgodom vono zastosovuvalosya v inshih sistemah programuvannya i movah perevazhno u funkcijnih ta logichnih Neobhidnist zbirannya smittya v movah cih tipiv obumovlena tim sho struktura takih mov robit ukraj nezruchnim vidstezhennya chasu zhittya ob yektiv u pam yati j ruchne keruvannya neyu U cih movah shiroko vikoristovuyutsya spiski i zasnovani na nih skladni strukturi danih pid chas roboti program postijno stvoryuyutsya nadbudovuyutsya rozshiryuyutsya kopiyuyutsya i pravilno viznachiti moment vidalennya togo chi inshogo ob yekta vazhko U promislovih procedurnih i ob yektnih movah pribirannya smittya dovgo ne vikoristovuvalasya Perevaga viddavalasya ruchnomu keruvannyu pam yattyu yak bilsh efektivnomu ta peredbachuvanomu Ale z drugoyi polovini 1980 h rokiv tehnologiya zbirannya smittya stala vikoristovuvatisya i v direktivnih imperativnih i v ob yektnih movah programuvannya a z drugoyi polovini 1990 h rokiv use bilshe chislo stvoryuvanih mov i seredovish oriyentovanih na prikladne programuvannya mistyat mehanizm zboru smittya abo yak yedinij abo yak odin z dostupnih mehanizmiv keruvannya dinamichnoyu pam yattyu Nini koli vona vikoristovuyetsya movami Oberon Java Python Ruby Perl C D F ta inshimi movami Osnovnij princip z yakim pracyuyut rizni algoritmi zbirannya smittya polyagaye v nastupnomu Viznachiti ob yekti sho ne potribni dlya podalshoyi roboti programi Vivilniti resursi zajnyati cimi ob yektami Chasto avtomatichne zbirannya smittya protistavlyayut ruchnomu keruvannyu pam yattyu yake na vidminu vid avtomatichnogo vimagaye vid rozrobnika samomu pisati instrukciyi vidilennya pam yati ta yiyi zvilnennya Nejtralnist ciyeyi statti pid sumnivom Bud laska oznajomtesya z vidpovidnim obgovorennyam ta za mozhlivosti vipravte nedoliki Cherven 2012 Problemi ruchnogo keruvannya pam yattyu RedaguvatiTradicijnim dlya direktivnih mov sposobom keruvannya pam yattyu ye ruchnij Jogo sutnist u takomu Dlya stvorennya ob yekta v dinamichnoyi pam yati programist yavno viklikaye komandu vidilennya pam yati Cya komanda povertaye vkazivnik na vidilenu dilyanku pam yati yakij zberigayetsya i vikoristovuyetsya dlya dostupu do neyi Do tih pir poki stvorenij ob yekt potriben dlya roboti programi programa zvertayetsya do nogo cherez ranishe zberezhenij vkazivnik Koli potreba v ob yekti znikaye programist yavno viklikaye komandu zvilnennya pam yati peredayuchi yij vkazivnik na stvorenij ob yekt U bud yakij movi sho dopuskaye stvorennya ob yektiv u dinamichnij pam yati potencijno mozhlivi dvi problemi zavisli vkazivniki i vitoki pam yati Zavislij vkazivnik Dokladnishe Zavisli vkazivniki Zavislij vkazivnik ce vkazivnik yakij zalishayetsya u vikoristanni dlya posilannya na ob yekt yakij uzhe vidalenij Pislya vidalennya ob yekta vsi zberezheni v programi posilannya na nogo stayut zavislimi Pam yat zajmana ranishe ob yektom mozhe buti peredana operacijnij sistemi i stati nedostupnoyu abo buti vikoristana dlya rozmishennya novogo ob yekta v tij samij programi U pershomu vipadku sproba zvernutisya po povislogo vkazivnika prizvede do spracovuvannya mehanizmu zahistu pam yati j avarijnoyi zupinki programi a v drugomu do neperedbachuvanih naslidkiv Poyava zavislih posilan zazvichaj staye naslidkom nepravilnoyi ocinki chasu zhittya ob yekta programist viklikaye komandu vidalennya ob yekta do togo yak jogo vikoristannya pripinitsya Vitik pam yati Dokladnishe Vitik pam yati Stvorivshi ob yekt u dinamichnij pam yati programist mozhe ne vidaliti jogo pislya zavershennya vikoristannya Yaksho na ob yekt nemaye posilan vin staye programno nedostupnim ale prodovzhuye zajmati pam yat oskilki komanda jogo vidalennya ne viklikana Cya situaciya i nazivayetsya vitokom pam yati Yaksho ob yekti posilannya na yaki gublyatsya stvoryuyutsya v programi postijno to vitik pam yati proyavlyayetsya v postupovomu zbilshenni obsyagu vikoristovuvanoyi pam yati yaksho programa pracyuye dovgo obsyag vikoristovuvanoyi neyu pam yati postijno zrostaye i cherez yakijs chas vidchutno spovilnyuyetsya robota sistemi cherez neobhidnist pid chas bud yakogo vidilennya pam yati vikoristovuvati pidkachuvannya storinok abo programa vicherpuye dostupnij obsyag adresnogo prostoru i zavershuyetsya z pomilkoyu Vpliv avtomatichnogo zbirannya smittya na shvidkodiyu RedaguvatiDoslidzhennya vplivu avtomatichnogo zbirannya smittya na shvidkodiyu program dlya mov programuvannya rozroblenih dlya zastosuvannya lishe razom z avtomatichnim zbirannyam smittya takih yak Java Objective Caml Python tosho uskladnyuyetsya brakom mozhlivosti vimiryuvati shvidkodiyu programi z ruchnim keruvannyam pam yattyu Odnak u doslidzhenni Metyu Gerca ta Emeri Bergera 3 porivnyano shvidkodiyu ruchnogo keruvannya pam yattyu ta pribiralnikiv smittya yak z kopiyuvannyam tak i bez kopiyuvannya Ci vimiryuvannya doveli sho najkrashij za shvidkodiyeyu pribiralnik smittya mozhe konkuruvati za shvidkodiyeyu z ruchnim keruvannyam pam yattyu yaksho jomu nadati dosit bagato pam yati Zokrema z vikoristannyam up yatero bilshoyi pam yati jogo shvidkodiya vidpovidaye ruchnomu variantu Za nayavnosti vtrichi bilshoyi vilnoyi pam yati vin pracyuye v serednomu na 17 povilnishe za ruchne keruvannya pam yattyu A z vikoristannyam udvichi bilshoyi pam yati shvidkodiya zmenshuyetsya na 70 V umovah braku fizichnoyi pam yati vikoristannya svop pam yati vpovilnyuye shvidkodiyu pribiralnika smittya v razi porivnyano z ruchnim keruvannyam Vimogi do movi ta sistemi RedaguvatiShob programa mogla vikoristovuvati zbirannya smittya neobhidno vikonannya nizki umov sho nalezhat do movi seredovisha vikonannya i samoyi rozv yazuvanoyi zadachi Neobhidnist seredovisha vikonannya zi zbiracha smittya Prirodno dlya zboru smittya neobhidne dinamichne seredovishe sho pidtrimuye vikonannya programi i nayavnist u comu seredovishi zbiracha smittya Pidtrimka z boku movi programuvannyaZbirach smittya mozhe normalno funkcionuvati tilki todi koli vin mozhe tochno vidstezhiti vsi posilannya na vsi stvoreni ob yekti Ochevidno yaksho mova dopuskaye peretvorennya posilan vkazivnikiv v inshi tipi danih cili chisla masivi bajtiv i tak dali na kshtalt S C vidstezhiti vikoristannya takih peretvorenih posilan staye nemozhlivo i zbirannya smittya staye bezgluzdim vona ne zahishaye vid zavislih vkazivnikiv i vitokiv pam yati Tomu movi oriyentovani na vikoristannya zbirannya smittya zazvichaj istotno obmezhuyut svobodu vikoristannya vkazivnikiv adresnoyi arifmetiki peretvoren tipiv vkazivnikiv do inshih tipiv danih U chastini z nih uzagali nemaye tipu danih vkazivnik u chastini vin ye ale ne dopuskaye ni peretvoren tipu ni zmini Tehnichna dopustimist korotkochasnih upovilnen u roboti program Pribirannya smittya vikonuyetsya periodichno zazvichaj u zazdalegid nevidomi momenti chasu Yaksho pripinennya roboti programi na chas porivnyannij iz chasom zbirannya smittya mozhe prizvesti do kritichnih pomilok vikoristovuvati v podibnij situaciyi zbirannya smittya ochevidno ne mozhna Nayavnist deyakogo rezervu vilnoyi pam yati Chim bilshe pam yati dostupno seredovishi vikonannya tim ridshe zapuskayetsya zbirach smittya i tim efektivnishe jogo robota Robota zbiracha smittya v sistemi de kilkist dostupnoyi zbirachevi pam yati nablizhayetsya do pikovoyi potrebi programi mozhe viyavitisya neefektivnoyu i neproduktivnoyu Chim menshe nadlishok pam yati tim chastishe vidbuvayetsya zapusk zbiracha i tim bilshe chasu vitrachayetsya na jogo vikonannya Padinnya produktivnosti programi v takomu rezhimi mozhe viyavitisya zanadto istotnim Primitki Redaguvati Shehovcov V A 10 6 Pidrahunok posilan i zbirannya smittya Operacijni sistemi BHV Publishing Group s 246 ISBN 9789665521570 Recursive functions of symbolic expressions and their computation by machine Part I Matthew Hertz and Emery D Berger Quantifying the Performance of Garbage Collection vs Explicit Memory Management Arhivovano z dzherela 27 lyutogo 2012 Procitovano 4 chervnya 2012 Div takozh RedaguvatiLisp persha mova programuvannya z avtomatichnim zbirannyam smittya Simula ta Smalltalk pershi ob yektno oriyentovani movi programuvannya takozh mali avtomatichne zbirannya smittya Java C suchasni populyarni movi programuvannya z avtomatichnim zbirannyam smittya Otrimano z https uk wikipedia org w index php title Zbirannya smittya amp oldid 40400394