Како пронаћи и поправити цурење меморије у оперативном систему Виндовс 10

How Find Fix Memory Leaks Windows 10



Ако ваш рачунар са оперативним системом Виндовс 10 пати од проблема са перформансама, то може бити због цурења меморије. Ево како да пронађете и поправите цурење меморије у оперативном систему Виндовс 10. Када први пут инсталирате Виндовс 10, добра је идеја да покренете Проверу системских датотека. Ово ће проверити и поправити све оштећене системске датотеке. Да бисте то урадили, отворите командну линију и откуцајте: сфц ​​/сцаннов Када се скенирање заврши, поново покрените рачунар. Ако и даље видите проблеме са перформансама, време је да проверите да ли постоји цурење меморије. Да бисте то урадили, отворите Таск Манагер и идите на картицу Перформансе. У колони Меморија видећете колико меморије се користи. Ако се овај број стално повећава, вероватно је да имате цурење меморије. Да бисте поправили цурење меморије, морате да идентификујете који програм узрокује проблем. Да бисте то урадили, идите на картицу Детаљи и проверите колону ПИД. Ово ће вам показати ПИД (ИД процеса) сваког покренутог програма. Потражите програм са највећим ПИД бројем и завршите тај процес. Када завршите процес, поново покрените рачунар и проверите да ли је проблем решен. Ако не, поновите поступак док не пронађете кривца.



ДО Цурење меморије је погрешна алокација ресурса у рачунарском програму због неправилне алокације меморије. То се дешава када отишао неискоришћени простор остаје неослобођен. Цурење меморије не треба мешати са цурењем простора, што се односи на програм који користи више РАМ-а него што му је потребно. Пријављено је да се цурење меморије на Виндовс 10/8/7 систему дешава када меморија једноставно није доступна иако се не користи.





Цурење меморије у оперативном систему Виндовс 10

Пре него што почнете, требало би да знате да је цурење меморије софтверски проблем који треба да се отклони, као што су Јава, ЈаваСцрипт, Ц/Ц++, Виндовс, итд. Није потребна физичка замена РАМ-а или чврстог диска.





Цурење меморије у оперативном систему Виндовс 10



Зашто је то лоше

Очигледно је да је цурење меморије лоша ствар, јер је то грешка, мана у систему. Али хајде да сазнамо тачно како ово утиче на систем:

  1. Пошто се меморија не ослобађа чак и ако се не користи, то доводи до њеног исцрпљивања.
  2. Исцрпљеност меморије доводи до старења софтвера.
  3. Смањење доступне меморије доводи до повећаног времена одзива и смањених перформанси система.
  4. Неконтролисано цурење меморије може на крају да сруши апликацију.

Да би открио цурење меморије, програмеру је потребан приступ изворном коду програма.

Детекција цурења

Да бисмо решили проблем, прво га морамо идентификовати. Основни кораци за откривање цурења меморије:



  1. Потврда : Откривање цурења.
  2. Проналажење цурења меморије у режиму кернела : Потражите цурење узроковано компонентом драјвера у режиму језгра.
  3. Проналажење цурења меморије у корисничком режиму : Откривање цурења изазваног апликацијом драјвера или корисничког режима.

Алокација меморије

Постоје различити начини алокације РАМ-а по апликацијама. Ако се простор не ослободи након употребе, доћи ће до цурења меморије без обзира на режим доделе. Ево неких уобичајених образаца дистрибуције:

  1. ХеалАллоц функција за додељивање меморије на хрпу. Еквивалената Ц/Ц++ времена извршавања су маллоц и нев.
  2. ВиртуалАллоц функција за директну алокацију из ОС-а.
  3. Кернел32 АПИ-ји за складиштење меморије кернела за апликацију. Пример: ЦреатеФиле, ЦреатеТхреад.
  4. АПИ Усер32 и АПИ Гди32.

Спречавање цурења меморије

Сви знамо да је превенција боља од лечења, па ево неколико начина да спречите цурење меморије.

Праћење навика

Цурење меморије у оперативном систему Виндовс 10

надоградња система Виндовс 10 не успева и враћа се на систем Виндовс 7

Морате пазити на ненормалну употребу РАМ-а од стране појединачних програма и апликација. Можете да одете у Виндовс Таск Манагер тако што ћете кликнути ЦТРЛ + СХИФТ + ЕСЦ и додајте колоне као што су ручке, кориснички објекти, ГДИ објекти итд.

Ово ће вам помоћи да лако пратите коришћење ресурса.

Мицрософт алати за дијагностицирање цурења меморије

Различити алати дијагностикују цурење меморије за различите режиме алокације:

  1. Апплицатион Верифиер дијагностикује цурење гомиле.
  2. УМДХ (компонента Виндовс алата за отклањање грешака) дијагностикује цурење по процесу праћењем алокације гомиле.
  3. Траце Цаптуре за детаљну анализу употребе РАМ-а.
  4. Ксперф такође прати обрасце доделе гомиле.
  5. ЦРТ Дебуг Хеап не само да прати алокацију гомиле, већ вам такође омогућава да примените технике кодирања како бисте минимизирали цурење.
  6. ЈаваСцрипт детектор цурења меморије отклања грешке у меморији у кодовима.

Савети за коришћење

  1. Користите кернел НОСИТИ СЕ СА с и други паметни показивачи за Вин32 ресурсе и хеап алокације.
  2. Преузмите класе за аутоматско управљање ресурсима за доделу језгра из АТЛ библиотеке. Стандард Ц++ има ауто_птр за алокацију гомиле.
  3. Инкапсулирајте показиваче ЦОМ интерфејса у 'паметне показиваче' са _цом_птр_т или _бстр_т или _вариант_т .
  4. Надгледајте .НЕТ код за абнормалну употребу меморије.
  5. Избегавајте више излазних путања за функције да бисте омогућили ослобађање променљивих алокација у већини блокова до краја функције.
  6. Користите прилагођене изузетке само након што су све доделе у блоку _финалли ослобођене. Умотајте целу хрпу и третирајте алокације у паметне показиваче да бисте користили Ц++ изузетке.
  7. Увек зови ПропВариантЦлеар пре реиницијализације или брисања објекта ПРОПВАРИАНТ.

Поправите цурење меморије у Виндовс-у

Баш као и различити начини за спречавање цурења меморије, постоје различити начини за спречавање цурења меморије. Али пре него што почнете, не заборавите прво направите тачку за враћање система .

1] Затворите процесе и поново покрените.

Ако видите да непотребан процес заузима превише РАМ-а, можете га прекинути у Таск Манагер-у. Мораћете да поново покренете уређај како би ослобођени простор био доступан за коришћење другим процесима. Без поновног покретања, проблем са цурењем меморије неће бити решен. Један посебан процес који има грешке које успоравају рачунар је Рунтиме Брокер. Покушајте да видите да ли само онемогућавање овога функционише.

2] Алати за дијагностику меморије

Виндовс дијагностика меморије

диск непознат није иницијализован

За приступ уграђеном Алат за дијагностику меморије за Виндовс:

  1. Сачувајте сав ваш важан посао.
  2. Кликните Вин + Р отворен трцати прозор.
  3. Унесите команду мдсцхед.еке ИН трцати прозор.
  4. Поново покрените рачунар.
  5. Након поновног покретања, извршите основно скенирање или изаберите ' Напредно 'Опције као што су' Тест мешавина ' или ' Број пролаза '.
  6. Кликните Ф10 за почетак теста.

Ово су за сада привремене поправке.

3] Проверите да ли постоје ажурирања драјвера

Ажурирање софтвера драјвера

Застарели драјвери узрокују цурење меморије. Ажурирајте све драјвере :

  1. Кликните Вин + Р и отворен трцати прозор. Тип девмгмт.мсц и притисните Ентер. Ово ће вас одвести до Менаџер уређаја .
  2. Проверите да ли постоје застарели драјвери и ажурирајте их све.
  3. За ажурирања која сте можда пропустили, погледајте Виндовс Упдате.

Било је лако.

4] Оптимизација перформанси

Подесите за најбоље перформансе

Подешавање перформанси оперативног система Виндовс ће управљати свиме, укључујући заказивање процесора и коришћење меморије како би спречио цурење меморије. Пратите ове кораке:

  1. Десни клик ' Овај рачунар »и изаберите« Напредно „На левом панелу.
  2. Испод ' Напредно на картици ' Перформансе
Популар Постс