Conectați-vă cu Microsoft
Conectați-vă sau creați un cont
Salut,
Selectați un alt cont.
Aveți mai multe conturi
Alegeți contul cu care doriți să vă conectați.

Simptome

Întâmpinați probleme de performanță în aplicații și servicii în diverse versiuni de Windows XP, Windows Vista, Windows Server 2003, Windows Server 2008 și Windows Server 2008 R2. În plus, observați următoarele simptome:

  • Memoria disponibilă este aproape epuizată.

  • Memoria cache a fișierelor de sistem consumă majoritatea memoriei RAM fizice.

  • Există un volum continuu și mare de solicitări de citire în cache pe hard disk.

Cauză

Gestionarea memoriei în sistemele de operare Microsoft Windows utilizează un algoritm bazat pe cerere. Dacă un proces solicită și utilizează un volum mare de memorie, dimensiunea setului de lucru (numărul de pagini de memorie din memoria RAM fizică) a procesului crește. Dacă aceste solicitări sunt continue și debifate, setul de lucru al procesului va crește pentru a consuma toate BERBECele fizice. În această situație, seturile de lucru pentru toate celelalte procese sunt paginate pe hard disk. Acest comportament scade performanța aplicațiilor și serviciilor, deoarece paginile de memorie sunt scrise continuu pe hard disk și citesc de pe hard disk.

Acest comportament se aplică și setului de lucru din memoria cache a fișierelor de sistem. Dacă există un volum continuu și mare de solicitări de citire în cache din orice proces sau de la orice driver, dimensiunea setului de lucru din memoria cache a fișierelor de sistem va crește pentru a îndeplini această solicitare. Memoria cache a fișierelor de sistem consumă RAM-ul fizic. Prin urmare, cantități suficiente de RAM fizic nu sunt disponibile pentru alte procese.

Pe versiunile pe 32 de biți de sisteme de operare Microsoft Windows anterioare versiunii Windows Vista, seturile de lucru din memoria cache a fișierelor de sistem au o limită teoretică de memorie de mai puțin de 1 gigaoctet (GB). Limitarea zonei de adrese virtuale împiedică Seturile de lucru din memoria cache a fișierelor de sistem să epuizeze RAM-ul fizic.

Pe versiunile pe 32 de biți de sisteme de operare Windows Vista, resursele de nucleu sunt alocate în mod dinamic. Setul de lucru din memoria cache a fișierelor de sistem crește pentru a consuma zona de adrese virtuală din modul kernel în detrimentul altor resurse de nucleu. Limitarea acestei zone de memorie este mai mică decât 2 GB. În cazul în care computerul are mai mult de 2 GB de RAM fizic, memoria cache nu poate epuiza toate RAM-ul fizic. Cu toate acestea, memoria cache poate epuiza spațiul de adrese virtuale din kernel. Acest lucru poate provoca erori de alocare pentru alte componente de nucleu.

Pe versiunile pe 64 de biți de sisteme de operare Windows, dimensiunea zonei de adrese virtuale este de obicei mai mare decât RAM-ul fizic. În această situație, setul de lucru pentru memoria cache a fișierelor de sistem poate crește pentru a consuma majoritatea memoriei RAM fizice.

Rezolvare

Algoritmii de gestionare a memoriei din sistemele de operare Windows 7 și Windows Server 2008 R2 s-au actualizat pentru a aborda mai multe probleme de memorare în cache a fișierelor care au fost găsite în versiunile anterioare de Windows. Există doar anumite situații unice în care trebuie să implementați acest serviciu pe computerele care execută Windows 7 sau Windows Server 2008 R2.

Cum se determină dacă sistemul este afectat

Pentru a determina dacă sistemul este afectat de această problemă, instalați instrumentul SysInternals RamMap. Puteți obține instrumentul de pe următorul site Web Windows Sysinternals:

http://TechNet.Microsoft.com/en-US/Sysinternals/ff700229
Atunci când rulează instrumentul, selectați opțiunea utilizare contorizări . Aceasta afișează mai multe coloane care afișează modelul curent de utilizare a memoriei. Faceți clic pe coloana activă pentru a sorta după numărul de octeți utilizați și notați utilizarea superioară direct sub total.

Dacă numărul de utilizare de top este "Metafile" și dacă se utilizează o mare parte din memoria disponibilă, întâmpinați problema cache a fișierelor de sistem descrisă în secțiunea "simptome". Puteți verifica acest lucru utilizând monitorizarea performanței pentru a monitoriza Counter-ul de octeți Memory\System din memoria cache și a vedea memoria cache crescând continuu în timp.

Figura 1. Exemplu de ieșire RamMap în care computerul întâmpină problema.

text alternativ

Figura 2. Exemplu de ieșire RamMap în care computerul nu întâmpină problema.

text alternativ

Dacă Counter-ul de octeți Memory\System din memoria cache pentru performanțe afișează o tendință ascendentă în timp, computerul întâmpină problema, așa cum se arată în figura 3.

Figura 3. Exemplu de ieșire din monitorul de performanță în care computerul întâmpină problema în timp.

text alternativ

Cerințe de repornire

Nu trebuie să reporniți computerul atunci când instalați, dezinstalați sau utilizați acest serviciu.

Dacă citiți acest articol deoarece lucrați cu un client care consideră că este afectat de această problemă, urmați acești pași pentru a ajuta la rezolvarea problemei.

  1. Verificați dacă datele de ieșire RamMap, Perfmon sau Poolmon ale clientului confirmă faptul că memoria cache a fișierelor de sistem consumă majoritatea memoriei RAM fizice, așa cum se descrie anterior.

  2. Pentru a obține serviciul Windows Dynamic cache, descărcați-l aici.

  3. Unele setări de registry Dynamic cache sunt următoarele:

    Servere de fișiere, se recomandă să încercați 1GB.
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes" = DWORD: 00000400
    "MinSystemCacheMBytes" = DWORD: 00000064
    "SampleIntervalSecs" = DWORD: 0000003c
    "CacheUpdateThresholdMBytes" = DWORD: 00000064

    Exchange 2007, se recomandă să încercați 500 MB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes" = DWORD: 000001F4
    "MinSystemCacheMBytes" = DWORD: 00000064
    "SampleIntervalSecs" = DWORD: 0000003c
    "CacheUpdateThresholdMBytes" = DWORD: 00000064

    SQL 2005 și versiuni mai recente, în trecut atunci când lucrați cu SQL EE ' s, ați utilizat 2GB:
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters]
    "MaxSystemCacheMBytes" = DWORD: 000007D0
    "MinSystemCacheMBytes" = DWORD: 00000064
    "SampleIntervalSecs" = DWORD: 0000003c
    "CacheUpdateThresholdMBytes" = DWORD: 00000064

Mai multe informații

Pentru a rezolva această problemă, utilizați funcția API GetSystemFileCacheSize și funcția API SetSystemFileCacheSize pentru a seta valoarea de dimensiune maximă sau minimă pentru Seturile de lucru din memoria cache a fișierelor de sistem. Utilizarea acestor funcții este singura metodă acceptată pentru a restricționa consumul memoriei fizice prin memoria cache a fișierelor de sistem.

Serviciul de cache dinamic Microsoft Windows este un serviciu eșantion care demonstrează o strategie pentru a utiliza aceste API-uri pentru a minimiza efectele acestei probleme.

Instalarea și utilizarea serviciului Microsoft Dynamic cache nu determină excluderea asistenței pentru Microsoft Windows. Acest serviciu și codul său sursă sunt furnizate ca exemplu de utilizare a API-urilor acceptate de Microsoft pentru a reduce creșterea memoriei cache a sistemului de fișiere.

Puteți obține serviciul și codul sursă de la următorul site Web Microsoft:

http://www.microsoft.com/download/details.aspx?FamilyID=e24ade0a-5efe-43c8-b9c3-5d0ecb2f39af&displaylang = en

Resurse suplimentare

Citiți capitolele 9 (gestionarea memoriei) și 10 (Manager de cache) din Windows Interns, ediția a 5-a.

Gestionarea memoriei (probleme mari cu memoria cache a sistemului) postare

pe blog Probleme de copiere a fișierelor pe blog

Limitele de memorie pentru versiunile Windows

976618 vă confruntați cu probleme de performanță în aplicații și servicii atunci când memoria cache a fișierelor de sistem consumă cea mai mare parte a memoriei RAM fizice

918483 cum să reduceți pagina de memorie buffer Pool în versiunea 64-bit de SQL Server

895932 lucruri de luat în considerare înainte de a activa modul cache de sistem în Windows XP

232271 cum se optimizează Windows NT Server utilizând registry

837331 despre cache Manager în





 

Stare

Microsoft a confirmat că aceasta este o problemă în produsele Microsoft enumerate în secțiunea „Se aplică la”.

Aveți nevoie de ajutor suplimentar?

Doriți mai multe opțiuni?

Explorați avantajele abonamentului, navigați prin cursurile de instruire, aflați cum să vă securizați dispozitivul și multe altele.

Comunitățile vă ajută să adresați întrebări și să răspundeți la întrebări, să oferiți feedback și să primiți feedback de la experți cu cunoștințe bogate.

Au fost utile aceste informații?

Cât de mulțumit sunteți de calitatea limbajului?
Ce v-a afectat experiența?
Apăsând pe Trimitere, feedbackul dvs. va fi utilizat pentru a îmbunătăți produsele și serviciile Microsoft. Administratorul dvs. IT va avea posibilitatea să colecteze aceste date. Angajamentul de respectare a confidențialității.

Vă mulțumim pentru feedback!

×