GNU/Linux >> Znalost Linux >  >> Linux

Diagnostika nedostatku paměti Windows

Tento článek se vztahuje na následující verze systému Microsoft® Windows Server®:2008, 2012, 2012 R2, 2016 a 2019.

Servery mají dva typy paměti:paměť s náhodným přístupem (RAM) a virtuální paměť. Všechny programy využívají paměť RAM. Pokud však programy nemají dostatek paměti RAM ke spuštění, systém Windows® dočasně přesune informace běžně uložené v paměti RAM do souboru na vašem pevném disku, který se nazývá stránkovací soubor. Toto dočasné úložiště dat ve stránkovacím souboru se nazývá virtuální paměť.

Použití virtuální paměti k přesunu informací do a ze stránkovacího souboru uvolní dostatek paměti RAM pro správné fungování programů. Problémy s nedostatkem paměti mohou nastat za následujících podmínek:

  • Když serveru dojde RAM a dojde k nedostatku virtuální paměti.

  • Když spustíte více programů, než RAM nainstalovaná na serveru může podporovat.

  • Když program neuvolní paměť, kterou již nepotřebuje, což se nazývá nadměrné využití paměti nebo únik paměti.

Určení využití paměti

K určení aktuálního využití paměti můžete použít následující skript PowerShell®:

$ln="--------------------";
$sp="       ";
$M="Memory";
$os=gwmi win32_operatingsystem;
$TPMS="TotalVisible$M`Size";
$FPM="FreePhysical$M";
$TVMS="TotalVirtual$M`Size";
$FVM="FreeVirtual$M";
$TP=[int]($os.$TPMS/1mb);
$FP=[math]::Round($os.$FPM/1mb,2);
$PP=[math]::Round((($os.$TPMS-$os.$FPM)/$os.$TPMS)*100,2);
$TV=[int]($os.$TVMS/1mb);
$FV=[math]::Round($os.$FVM/1mb,2);
$PV=[math]::Round((($os.$TVMS-$os.$FVM)/$os.$TVMS)*100,2);
echo "`n$ln$ln`nCurrent $M Utilization:`n$ln$ln`nPhysical $M ($TP GB)`nAvailable: $FP GB`n % in use: $PP`%`n`nVirtual $M   ($TV GB)`nAvailable: $FV GB`n % in use: $PV`%`n`n$ln$ln$ln$ln`nImage Name$sp$sp$sp`PID Session Name$sp Session#    Mem Usage`n$ln$ln$ln$ln";
cmd /C "tasklist /NH /FI "MEMUSAGE gt 100000"|sort /R /+64";echo "$ln$ln$ln$ln";

Výstup by měl být podobný následujícím informacím nalezeným ve Správci úloh:

----------------------------------------
Current Memory Utilization:
----------------------------------------
Physical Memory ("amount" GB)
Available: "amount" GB
% in use: "amount" %

Virtual Memory ("amount" GB)
Available: "amount" GB
% in use: "amount" %

-----------------------------------------------------------------
Image Name|     PID| Session Name|        Session#|    Mem Usage
-----------------------------------------------------------------
"service1"      1280 Console                    2      707,216 K
"service2"      1124 Console                    2      390,380 K
"service3"      6904 Console                    2      362,920 K
"service3"      1300 Console                    2      250,928 K
"service4"      7604 Console                    2      243,760 K
"service5"     12928 Console                    2      228,096 K
-----------------------------------------------------------------

Poté, co určíte hlavní proces, který využívá paměť, můžete prozkoumat jakékoli problémy se službou. Možná budete muset restartovat službu nebo server.

Následující služby mohou způsobit vysoké využití paměti:

  • Microsoft SQL Server®
  • Internet Information Services (IIS) pracovní procesy (w3wp)
  • CommVault®
  • Sophos®

Linux
  1. Jak zkontrolovat velikost RAM v příkazovém řádku Linuxu v GB

  2. Diagnostika nízkého disku ve Windows

  3. Jak zkontrolovat celkovou velikost RAM a využití paměti v Linuxu

  1. Jak zkontrolovat zatížení serveru na serveru Windows

  2. Měření využití Ram programu?

  3. Jak zjistit informace o RAM?

  1. Program Python zabírá RAM

  2. Proč by měla být velikost odkládacího oddílu dvojnásobkem velikosti RAM?

  3. logování paměti RAM je známkou nejvyšší úrovně linuxového procesu